From a8e236b98f14bc1bef934753201239e46c30df3a Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Wed, 21 Aug 2019 22:42:04 +0000 Subject: [PATCH 001/123] regenerated all-api-versions --- .../azuredata/resource-manager/readme.md | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/specification/azuredata/resource-manager/readme.md b/specification/azuredata/resource-manager/readme.md index 6a9b276de974..a785db2a1117 100644 --- a/specification/azuredata/resource-manager/readme.md +++ b/specification/azuredata/resource-manager/readme.md @@ -78,3 +78,28 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + From fb8f078deac2367f3dbcfbd8a542c77083c28a5b Mon Sep 17 00:00:00 2001 From: rakeshakkera <52220364+rakeshakkera@users.noreply.github.com> Date: Wed, 21 Aug 2019 18:44:15 -0700 Subject: [PATCH 002/123] Adding low priority and variable pricing feature for standalone VMs. Added priority, eviction policy and billing profile to VirtualMachineProperties. Also, adding optional billing profile to VMSS Create and Update APIs. (#6961) --- .../stable/2019-03-01/compute.json | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 272dbe6db8c3..7863ebcd7c8c 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -6996,6 +6996,16 @@ }, "description": "Specifies the boot diagnostic settings state.

Minimum api-version: 2015-06-15." }, + "BillingProfile": { + "properties": { + "maxPrice": { + "type": "number", + "format": "double", + "description": "Specifies the maximum price you are willing to pay for a low priority VM/VMSS. This price is in US Dollars.

This price will be compared with the current low priority price for the VM size. Also, the prices are compared at the time of create/update of low priority VM/VMSS and the operation will only succeed if the maxPrice is greater than the current low priority price.

The maxPrice will also be used for evicting a low priority VM/VMSS if the current low priority price goes beyond the maxPrice after creation of VM/VMSS.

Possible values are:

- Any decimal value greater than zero. Example: $0.01538

-1 – indicates default price to be up-to on-demand.

You can set the maxPrice to -1 to indicate that the low priority VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.

Minimum api-version: 2019-03-01." + } + }, + "description": "Specifies the billing related details of a low priority VM or VMSS.

Minimum api-version: 2019-03-01." + }, "VirtualMachineExtensionHandlerInstanceView": { "properties": { "type": { @@ -7288,6 +7298,34 @@ "$ref": "#/definitions/SubResource", "description": "Specifies information about the proximity placement group that the virtual machine should be assigned to.

Minimum api-version: 2018-04-01." }, + "priority": { + "type": "string", + "description": "Specifies the priority for the virtual machine.

Minimum api-version: 2019-03-01", + "enum": [ + "Regular", + "Low" + ], + "x-ms-enum": { + "name": "VirtualMachinePriorityTypes", + "modelAsString": true + } + }, + "evictionPolicy": { + "type": "string", + "description": "Specifies the eviction policy for the low priority virtual machine. Only supported value is 'Deallocate'.

Minimum api-version: 2019-03-01", + "enum": [ + "Deallocate", + "Delete" + ], + "x-ms-enum": { + "name": "VirtualMachineEvictionPolicyTypes", + "modelAsString": true + } + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority virtual machine.

Minimum api-version: 2019-03-01." + }, "host": { "$ref": "#/definitions/SubResource", "description": "Specifies information about the dedicated host that the virtual machine resides in.

Minimum api-version: 2018-10-01." @@ -8523,6 +8561,10 @@ "modelAsString": true } }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority VMSS.

Minimum api-version: 2019-03-01." + }, "scheduledEventsProfile": { "$ref": "#/definitions/ScheduledEventsProfile", "description": "Specifies Scheduled Event related configurations." @@ -8556,6 +8598,10 @@ "type": "string", "description": "The license type, which is for bring your own license scenario." }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a low priority VMSS.

Minimum api-version: 2019-03-01." + }, "scheduledEventsProfile": { "$ref": "#/definitions/ScheduledEventsProfile", "description": "Specifies Scheduled Event related configurations." From 66e284c6015fde9e673d477085ea4bc938f79abf Mon Sep 17 00:00:00 2001 From: Ryogo Kanatani Date: Fri, 23 Aug 2019 01:00:35 +0900 Subject: [PATCH 003/123] Add CV API v2.1 for gore support (#6976) * Baseline commit * Update swagger and examples * Update readme.md * Stop deleting v2.0 definition from readme.md --- .../data-plane/ComputerVision/readme.go.md | 10 + .../data-plane/ComputerVision/readme.md | 15 +- .../data-plane/ComputerVision/readme.ruby.md | 10 +- .../stable/v2.1/ComputerVision.json | 1840 +++++++++++++++++ .../ComputerVision/stable/v2.1/Ocr.json | 534 +++++ ...cessfulAnalyzeImageByDomainWithStream.json | 34 + ...SuccessfulAnalyzeImageByDomainWithUrl.json | 34 + .../SuccessfulAnalyzeImageWithStream.json | 176 ++ .../SuccessfulAnalyzeImageWithUrl.json | 182 ++ .../SuccessfulBatchReadFileWithStream.json | 14 + .../SuccessfulBatchReadFileWithUrl.json | 14 + .../SuccessfulDescribeImageWithStream.json | 44 + .../SuccessfulDescribeImageWithUrl.json | 44 + .../SuccessfulDetectObjectsWithStream.json | 35 + .../SuccessfulDetectObjectsWithUrl.json | 35 + ...SuccessfulGenerateThumbnailWithStream.json | 16 + .../SuccessfulGenerateThumbnailWithUrl.json | 16 + ...SuccessfulGetAreaOfInterestWithStream.json | 26 + .../SuccessfulGetAreaOfInterestWithUrl.json | 26 + .../SuccessfulGetReadOperationResult.json | 289 +++ .../SuccessfulGetTextOperationResult.json | 272 +++ .../v2.1/examples/SuccessfulListModels.json | 27 + ...cessfulRecognizePrintedTextWithStream.json | 77 + ...SuccessfulRecognizePrintedTextWithUrl.json | 77 + .../SuccessfulRecognizeTextWithStream.json | 15 + .../SuccessfulRecognizeTextWithUrl.json | 15 + .../SuccessfulTagImageWithStream.json | 53 + .../examples/SuccessfulTagImageWithUrl.json | 53 + 28 files changed, 3976 insertions(+), 7 deletions(-) create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/Ocr.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetReadOperationResult.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetTextOperationResult.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulListModels.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithUrl.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithStream.json create mode 100644 specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithUrl.json diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md index 1e1b74602e22..f4ca36a2eee3 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md @@ -14,6 +14,7 @@ go: ``` yaml $(go) && $(multiapi) batch: - tag: release_2_0 + - tag: release_2_1 ``` ### Tag: release_2_0 and go @@ -23,4 +24,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_2_1' && $(go) +output-folder: $(go-sdk-folder)/services/cognitiveservices/v2.1/$(namespace) ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.md index d43f37fd6ae0..4f0c76d6afec 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.md @@ -4,11 +4,11 @@ Configuration for generating Computer Vision SDK. -The current release is `release_2_0`. +The current release is `release_2_1`. ``` yaml -tag: release_2_0 +tag: release_2_1 add-credentials: true openapi-type: data-plane ``` @@ -23,6 +23,15 @@ input-file: - stable/v2.0/Ocr.json ``` +### Release 2.1 +These settings apply only when `--tag=release_2_1` is specified on the command line. + +``` yaml $(tag) == 'release_2_1' +input-file: + - stable/v2.1/ComputerVision.json + - stable/v2.1/Ocr.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -135,6 +144,8 @@ require: $(this-folder)/../../../../profiles/readme.md input-file: - $(this-folder)/stable/v2.0/ComputerVision.json - $(this-folder)/stable/v2.0/Ocr.json + - $(this-folder)/stable/v2.1/ComputerVision.json + - $(this-folder)/stable/v2.1/Ocr.json ``` diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.ruby.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.ruby.md index adfd7087e1f3..543dbe567e1d 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.ruby.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.ruby.md @@ -18,16 +18,16 @@ directive: ``` yaml $(ruby) && $(multiapi) batch: - - tag: release_2_0 + - tag: release_2_1 ``` -### Tag: release_2_0 and ruby +### Tag: release_2_1 and ruby -These settings apply only when `--tag=release_2_0 --ruby` is specified on the command line. +These settings apply only when `--tag=release_2_1 --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -``` yaml $(tag) == 'release_2_0' && $(ruby) -namespace: "Azure::CognitiveServices::ComputerVision::V2_0" +``` yaml $(tag) == 'release_2_1' && $(ruby) +namespace: "Azure::CognitiveServices::ComputerVision::V2_1" output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_computervision/lib title: "ComputerVisionClient" ``` diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json new file mode 100644 index 000000000000..020ceaed04ab --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json @@ -0,0 +1,1840 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.1", + "title": "Computer Vision Client", + "description": "The Computer Vision API provides state-of-the-art algorithms to process images and return information. For example, it can be used to determine if an image contains mature content, or it can be used to find all the faces in an image. It also has other features like estimating dominant and accent colors, categorizing the content of images, and describing an image with complete English sentences. Additionally, it can also intelligently generate images thumbnails for displaying large images effectively." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "host": "westcentralus.api.cognitive.microsoft.com", + "basePath": "/vision/v2.1", + "schemes": [ + "https" + ], + "paths": { + "/analyze": { + "post": { + "description": "This operation extracts a rich set of visual features based on the image content.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL. Within your request, there is an optional parameter to allow you to choose which features to return. By default, image categories are returned in the response.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "AnalyzeImage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/VisualFeatures" + }, + { + "name": "details", + "in": "query", + "description": "A string indicating which domain-specific details to return. Multiple values should be comma-separated. Valid visual feature types include: Celebrities - identifies celebrities if detected in the image, Landmarks - identifies notable landmarks in the image.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Celebrities", + "Landmarks" + ], + "x-nullable": false, + "x-ms-enum": { + "name": "Details", + "modelAsString": false + } + }, + "collectionFormat": "csv", + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/DescriptionExclude" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "The response include the extracted features in JSON format. Here is the definitions for enumeration types:\r\n ClipartType\r\n Non - clipart = 0, ambiguous = 1, normal - clipart = 2, good - clipart = 3. LineDrawingTypeNon - LineDrawing = 0, LineDrawing = 1.", + "schema": { + "$ref": "#/definitions/ImageAnalysis" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful AnalyzeImage request": { + "$ref": "./examples/SuccessfulAnalyzeImageWithUrl.json" + } + } + } + }, + "/describe": { + "post": { + "description": "This operation generates a description of an image in human readable language with complete sentences. The description is based on a collection of content tags, which are also returned by the operation. More than one description can be generated for each image. Descriptions are ordered by their confidence score. Descriptions may include results from celebrity and landmark domain models, if applicable.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "DescribeImage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "maxCandidates", + "in": "query", + "description": "Maximum number of candidate descriptions to be returned. The default is 1.", + "required": false, + "type": "integer", + "format": "int32", + "default": 1, + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/DescriptionExclude" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "Image description object.", + "schema": { + "$ref": "#/definitions/ImageDescription" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful DescribeImage request": { + "$ref": "./examples/SuccessfulDescribeImageWithUrl.json" + } + } + } + }, + "/detect": { + "post": { + "description": "Performs object detection on the specified image.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "DetectObjects", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "The response include the detected objects in JSON format.", + "schema": { + "$ref": "#/definitions/DetectResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful DetectObjects request": { + "$ref": "./examples/SuccessfulDetectObjectsWithUrl.json" + } + } + } + }, + "/models": { + "get": { + "description": "This operation returns the list of domain-specific models that are supported by the Computer Vision API. Currently, the API supports following domain-specific models: celebrity recognizer, landmark recognizer.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "ListModels", + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "List of available domain models.", + "schema": { + "$ref": "#/definitions/ListModelsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful ListModels request": { + "$ref": "./examples/SuccessfulListModels.json" + } + } + } + }, + "/models/{model}/analyze": { + "post": { + "description": "This operation recognizes content within an image by applying a domain-specific model. The list of domain-specific models that are supported by the Computer Vision API can be retrieved using the /models GET request. Currently, the API provides following domain-specific models: celebrities, landmarks.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON.\r\nIf the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "AnalyzeImageByDomain", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "model", + "in": "path", + "description": "The domain-specific content to recognize.", + "required": true, + "type": "string", + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "Analysis result based on the domain model.", + "schema": { + "$ref": "#/definitions/DomainModelResults" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful AnalyzeImageByDomain request": { + "$ref": "./examples/SuccessfulAnalyzeImageByDomainWithUrl.json" + } + } + } + }, + "/ocr": { + "post": { + "description": "Optical Character Recognition (OCR) detects text in an image and extracts the recognized characters into a machine-usable character stream.\r\nUpon success, the OCR results will be returned.\r\nUpon failure, the error code together with an error message will be returned. The error code can be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, NotSupportedImage, NotSupportedLanguage, or InternalServerError.", + "operationId": "RecognizePrintedText", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/DetectOrientation" + }, + { + "$ref": "#/parameters/OcrLanguage" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "The OCR results in the hierarchy of region/line/word. The results include text, bounding box for regions, lines and words. The angle, in radians, of the detected text with respect to the closest horizontal or vertical direction. After rotating the input image clockwise by this angle, the recognized text lines become horizontal or vertical. In combination with the orientation property it can be used to overlay recognition results correctly on the original image, by rotating either the original image or recognition results by a suitable angle around the center of the original image. If the angle cannot be confidently detected, this property is not present. If the image contains text at different angles, only part of the text will be recognized correctly.", + "schema": { + "$ref": "#/definitions/OcrResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful RecognizePrintedText request": { + "$ref": "./examples/SuccessfulRecognizePrintedTextWithUrl.json" + } + } + } + }, + "/tag": { + "post": { + "description": "This operation generates a list of words, or tags, that are relevant to the content of the supplied image. The Computer Vision API can return tags based on objects, living beings, scenery or actions found in images. Unlike categories, tags are not organized according to a hierarchical classification system, but correspond to image content. Tags may contain hints to avoid ambiguity or provide context, for example the tag \"ascomycete\" may be accompanied by the hint \"fungus\".\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "TagImage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "Image tags object.", + "schema": { + "$ref": "#/definitions/TagResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful TagImage request": { + "$ref": "./examples/SuccessfulTagImageWithUrl.json" + } + } + } + }, + "/generateThumbnail": { + "post": { + "description": "This operation generates a thumbnail image with the user-specified width and height. By default, the service analyzes the image, identifies the region of interest (ROI), and generates smart cropping coordinates based on the ROI. Smart cropping helps when you specify an aspect ratio that differs from that of the input image.\r\nA successful response contains the thumbnail image binary. If the request failed, the response contains an error code and a message to help determine what went wrong.\r\nUpon failure, the error code and an error message are returned. The error code could be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, InvalidThumbnailSize, NotSupportedImage, FailedToProcess, Timeout, or InternalServerError.", + "operationId": "GenerateThumbnail", + "consumes": [ + "application/json" + ], + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "width", + "in": "query", + "description": "Width of the thumbnail, in pixels. It must be between 1 and 1024. Recommended minimum of 50.", + "required": true, + "type": "integer", + "format": "int32", + "maximum": 1024, + "minimum": 1, + "x-nullable": false + }, + { + "name": "height", + "in": "query", + "description": "Height of the thumbnail, in pixels. It must be between 1 and 1024. Recommended minimum of 50.", + "required": true, + "type": "integer", + "format": "int32", + "maximum": 1024, + "minimum": 1, + "x-nullable": false + }, + { + "name": "smartCropping", + "in": "query", + "description": "Boolean flag for enabling smart cropping.", + "required": false, + "type": "boolean", + "default": false, + "x-nullable": true + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "The generated thumbnail in binary format.", + "schema": { + "type": "file" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful GenerateThumbnail request": { + "$ref": "./examples/SuccessfulGenerateThumbnailWithUrl.json" + } + } + } + }, + "/areaOfInterest": { + "post": { + "description": "This operation returns a bounding box around the most important area of the image.\r\nA successful response will be returned in JSON. If the request failed, the response contains an error code and a message to help determine what went wrong.\r\nUpon failure, the error code and an error message are returned. The error code could be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, NotSupportedImage, FailedToProcess, Timeout, or InternalServerError.", + "operationId": "GetAreaOfInterest", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageUrl" + } + ], + "responses": { + "200": { + "description": "The response includes the extracted area of interest in JSON format.", + "schema": { + "$ref": "#/definitions/AreaOfInterestResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetAreaOfInterest request": { + "$ref": "./examples/SuccessfulGetAreaOfInterestWithUrl.json" + } + } + } + } + }, + "definitions": { + "ImageAnalysis": { + "description": "Result of AnalyzeImage operation.", + "type": "object", + "properties": { + "categories": { + "description": "An array indicating identified categories.", + "type": "array", + "items": { + "$ref": "#/definitions/Category" + }, + "x-nullable": true + }, + "adult": { + "$ref": "#/definitions/AdultInfo", + "description": "An object describing whether the image contains adult-oriented content and/or is racy." + }, + "color": { + "$ref": "#/definitions/ColorInfo", + "description": "An object providing additional metadata describing color attributes." + }, + "imageType": { + "$ref": "#/definitions/ImageType", + "description": "An object providing possible image types and matching confidence levels." + }, + "tags": { + "description": "A list of tags with confidence level.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTag" + }, + "x-nullable": true + }, + "description": { + "$ref": "#/definitions/ImageDescriptionDetails", + "description": "A collection of content tags, along with a list of captions sorted by confidence level, and image metadata." + }, + "faces": { + "description": "An array of possible faces within the image.", + "type": "array", + "items": { + "$ref": "#/definitions/FaceDescription" + }, + "x-nullable": true + }, + "objects": { + "description": "Array of objects describing what was detected in the image.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectedObject" + }, + "x-nullable": true + }, + "brands": { + "description": "Array of brands detected in the image.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectedBrand" + }, + "x-nullable": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "Category": { + "description": "An object describing identified category.", + "type": "object", + "properties": { + "name": { + "description": "Name of the category.", + "type": "string", + "x-nullable": true + }, + "score": { + "format": "double", + "description": "Scoring of the category.", + "type": "number", + "x-nullable": false + }, + "detail": { + "$ref": "#/definitions/CategoryDetail", + "description": "Details of the identified category." + } + }, + "x-nullable": true + }, + "AdultInfo": { + "description": "An object describing whether the image contains adult-oriented content and/or is racy.", + "type": "object", + "properties": { + "isAdultContent": { + "description": "A value indicating if the image contains adult-oriented content.", + "type": "boolean", + "x-nullable": false + }, + "isRacyContent": { + "description": "A value indicating if the image is racy.", + "type": "boolean", + "x-nullable": false + }, + "isGoryContent": { + "description": "A value indicating if the image is gory.", + "type": "boolean", + "x-nullable": false + }, + "adultScore": { + "format": "double", + "description": "Score from 0 to 1 that indicates how much the content is considered adult-oriented within the image.", + "type": "number", + "x-nullable": false + }, + "racyScore": { + "format": "double", + "description": "Score from 0 to 1 that indicates how suggestive is the image.", + "type": "number", + "x-nullable": false + }, + "goreScore": { + "format": "double", + "description": "Score from 0 to 1 that indicates how gory is the image.", + "type": "number", + "x-nullable": false + } + }, + "x-nullable": true + }, + "ColorInfo": { + "description": "An object providing additional metadata describing color attributes.", + "type": "object", + "properties": { + "dominantColorForeground": { + "description": "Possible dominant foreground color.", + "type": "string", + "x-nullable": true + }, + "dominantColorBackground": { + "description": "Possible dominant background color.", + "type": "string", + "x-nullable": true + }, + "dominantColors": { + "description": "An array of possible dominant colors.", + "type": "array", + "items": { + "type": "string", + "x-nullable": true + }, + "x-nullable": true + }, + "accentColor": { + "description": "Possible accent color.", + "type": "string", + "x-nullable": true + }, + "isBWImg": { + "description": "A value indicating if the image is black and white.", + "type": "boolean", + "x-nullable": false + } + }, + "x-nullable": true + }, + "ImageType": { + "description": "An object providing possible image types and matching confidence levels.", + "type": "object", + "properties": { + "clipArtType": { + "format": "int32", + "description": "Confidence level that the image is a clip art.", + "type": "integer", + "x-nullable": false + }, + "lineDrawingType": { + "format": "int32", + "description": "Confidence level that the image is a line drawing.", + "type": "integer", + "x-nullable": false + } + }, + "x-nullable": true + }, + "ImageTag": { + "description": "An entity observation in the image, along with the confidence score.", + "type": "object", + "properties": { + "name": { + "description": "Name of the entity.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "The level of confidence that the entity was observed.", + "type": "number", + "x-nullable": false + }, + "hint": { + "description": "Optional hint/details for this tag.", + "type": "string", + "x-nullable": true + } + }, + "x-nullable": true + }, + "ImageDescriptionDetails": { + "description": "A collection of content tags, along with a list of captions sorted by confidence level, and image metadata.", + "type": "object", + "properties": { + "tags": { + "description": "A collection of image tags.", + "type": "array", + "items": { + "type": "string", + "x-nullable": true + }, + "x-nullable": true + }, + "captions": { + "description": "A list of captions, sorted by confidence level.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageCaption" + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "FaceDescription": { + "description": "An object describing a face identified in the image.", + "type": "object", + "properties": { + "age": { + "format": "int32", + "description": "Possible age of the face.", + "type": "integer", + "x-nullable": false + }, + "gender": { + "description": "Possible gender of the face.", + "enum": [ + "Male", + "Female" + ], + "type": "string", + "x-ms-enum": { + "name": "Gender", + "modelAsString": false + }, + "x-nullable": true + }, + "faceRectangle": { + "$ref": "#/definitions/FaceRectangle", + "description": "Rectangle in the image containing the identified face." + } + }, + "x-nullable": true + }, + "DetectedObject": { + "description": "An object detected in an image.", + "type": "object", + "properties": { + "rectangle": { + "$ref": "#/definitions/BoundingRect", + "description": "Approximate location of the detected object.", + "readOnly": true + }, + "object": { + "description": "Label for the object.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "Confidence score of having observed the object in the image, as a value ranging from 0 to 1.", + "type": "number", + "x-nullable": false + }, + "parent": { + "$ref": "#/definitions/ObjectHierarchy", + "description": "The parent object, from a taxonomy perspective.\r\nThe parent object is a more generic form of this object. For example, a 'bulldog' would have a parent of 'dog'." + } + }, + "x-nullable": true + }, + "DetectedBrand": { + "description": "A brand detected in an image.", + "type": "object", + "properties": { + "name": { + "description": "Label for the brand.", + "type": "string", + "readOnly": true, + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "Confidence score of having observed the brand in the image, as a value ranging from 0 to 1.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "rectangle": { + "$ref": "#/definitions/BoundingRect", + "description": "Approximate location of the detected brand.", + "readOnly": true + } + }, + "x-nullable": true + }, + "ImageMetadata": { + "description": "Image metadata.", + "type": "object", + "properties": { + "width": { + "format": "int32", + "description": "Image width, in pixels.", + "type": "integer", + "x-nullable": false + }, + "height": { + "format": "int32", + "description": "Image height, in pixels.", + "type": "integer", + "x-nullable": false + }, + "format": { + "description": "Image format.", + "type": "string", + "x-nullable": true + } + }, + "x-nullable": true + }, + "CategoryDetail": { + "description": "An object describing additional category details.", + "type": "object", + "properties": { + "celebrities": { + "description": "An array of celebrities if any identified.", + "type": "array", + "items": { + "$ref": "#/definitions/CelebritiesModel" + }, + "x-nullable": true + }, + "landmarks": { + "description": "An array of landmarks if any identified.", + "type": "array", + "items": { + "$ref": "#/definitions/LandmarksModel" + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "ImageCaption": { + "description": "An image caption, i.e. a brief description of what the image depicts.", + "type": "object", + "properties": { + "text": { + "description": "The text of the caption.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "The level of confidence the service has in the caption.", + "type": "number", + "x-nullable": false + } + }, + "x-nullable": true + }, + "FaceRectangle": { + "description": "An object describing face rectangle.", + "type": "object", + "properties": { + "left": { + "format": "int32", + "description": "X-coordinate of the top left point of the face, in pixels.", + "type": "integer", + "x-nullable": false + }, + "top": { + "format": "int32", + "description": "Y-coordinate of the top left point of the face, in pixels.", + "type": "integer", + "x-nullable": false + }, + "width": { + "format": "int32", + "description": "Width measured from the top-left point of the face, in pixels.", + "type": "integer", + "x-nullable": false + }, + "height": { + "format": "int32", + "description": "Height measured from the top-left point of the face, in pixels.", + "type": "integer", + "x-nullable": false + } + }, + "x-nullable": true + }, + "BoundingRect": { + "description": "A bounding box for an area inside an image.", + "type": "object", + "properties": { + "x": { + "format": "int32", + "description": "X-coordinate of the top left point of the area, in pixels.", + "type": "integer", + "x-nullable": false + }, + "y": { + "format": "int32", + "description": "Y-coordinate of the top left point of the area, in pixels.", + "type": "integer", + "x-nullable": false + }, + "w": { + "format": "int32", + "description": "Width measured from the top-left point of the area, in pixels.", + "type": "integer", + "x-nullable": false + }, + "h": { + "format": "int32", + "description": "Height measured from the top-left point of the area, in pixels.", + "type": "integer", + "x-nullable": false + } + }, + "x-nullable": false + }, + "ObjectHierarchy": { + "description": "An object detected inside an image.", + "type": "object", + "properties": { + "object": { + "description": "Label for the object.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "Confidence score of having observed the object in the image, as a value ranging from 0 to 1.", + "type": "number", + "x-nullable": false + }, + "parent": { + "$ref": "#/definitions/ObjectHierarchy", + "description": "The parent object, from a taxonomy perspective.\r\nThe parent object is a more generic form of this object. For example, a 'bulldog' would have a parent of 'dog'." + } + }, + "x-nullable": true + }, + "CelebritiesModel": { + "description": "An object describing possible celebrity identification.", + "type": "object", + "properties": { + "name": { + "description": "Name of the celebrity.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "Confidence level for the celebrity recognition as a value ranging from 0 to 1.", + "type": "number", + "x-nullable": false + }, + "faceRectangle": { + "$ref": "#/definitions/FaceRectangle", + "description": "Location of the identified face in the image." + } + }, + "x-nullable": true + }, + "LandmarksModel": { + "description": "A landmark recognized in the image.", + "type": "object", + "properties": { + "name": { + "description": "Name of the landmark.", + "type": "string", + "x-nullable": true + }, + "confidence": { + "format": "double", + "description": "Confidence level for the landmark recognition as a value ranging from 0 to 1.", + "type": "number", + "x-nullable": false + } + }, + "x-nullable": true + }, + "ImageDescription": { + "description": "A collection of content tags, along with a list of captions sorted by confidence level, and image metadata.", + "type": "object", + "properties": { + "description": { + "$ref": "#/definitions/ImageDescriptionDetails", + "description": "A collection of content tags, along with a list of captions sorted by confidence level, and image metadata.", + "x-ms-client-flatten": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "DetectResult": { + "description": "Result of a DetectImage call.", + "type": "object", + "properties": { + "objects": { + "description": "An array of detected objects.", + "type": "array", + "items": { + "$ref": "#/definitions/DetectedObject" + }, + "readOnly": true, + "x-nullable": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "ListModelsResult": { + "description": "Result of the List Domain Models operation.", + "type": "object", + "properties": { + "models": { + "description": "An array of supported models.", + "type": "array", + "items": { + "$ref": "#/definitions/ModelDescription" + }, + "readOnly": true, + "x-nullable": true + } + }, + "x-nullable": true + }, + "ModelDescription": { + "description": "An object describing supported model by name and categories.", + "type": "object", + "properties": { + "name": { + "description": "The name of the model.", + "type": "string", + "x-nullable": true + }, + "categories": { + "description": "Categories of the model.", + "type": "array", + "items": { + "type": "string", + "x-nullable": true + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "DomainModelResults": { + "description": "Result of image analysis using a specific domain model including additional metadata.", + "type": "object", + "properties": { + "result": { + "description": "Model-specific response.", + "type": "object", + "x-ms-client-flatten": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "OcrResult": { + "type": "object", + "properties": { + "language": { + "description": "The BCP-47 language code of the text in the image.", + "type": "string", + "x-nullable": true + }, + "textAngle": { + "format": "double", + "description": "The angle, in radians, of the detected text with respect to the closest horizontal or vertical direction. After rotating the input image clockwise by this angle, the recognized text lines become horizontal or vertical. In combination with the orientation property it can be used to overlay recognition results correctly on the original image, by rotating either the original image or recognition results by a suitable angle around the center of the original image. If the angle cannot be confidently detected, this property is not present. If the image contains text at different angles, only part of the text will be recognized correctly.", + "type": "number", + "x-nullable": false + }, + "orientation": { + "description": "Orientation of the text recognized in the image, if requested. The value (up, down, left, or right) refers to the direction that the top of the recognized text is facing, after the image has been rotated around its center according to the detected text angle (see textAngle property).\r\nIf detection of the orientation was not requested, or no text is detected, the value is 'NotDetected'.", + "type": "string", + "x-nullable": true + }, + "regions": { + "description": "An array of objects, where each object represents a region of recognized text.", + "type": "array", + "items": { + "$ref": "#/definitions/OcrRegion" + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "OcrRegion": { + "description": "A region consists of multiple lines (e.g. a column of text in a multi-column document).", + "type": "object", + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized region. The four integers represent the x-coordinate of the left edge, the y-coordinate of the top edge, width, and height of the bounding box, in the coordinate system of the input image, after it has been rotated around its center according to the detected text angle (see textAngle property), with the origin at the top-left corner, and the y-axis pointing down.", + "type": "string", + "x-nullable": true + }, + "lines": { + "description": "An array of recognized lines of text.", + "type": "array", + "items": { + "$ref": "#/definitions/OcrLine" + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "OcrLine": { + "description": "An object describing a single recognized line of text.", + "type": "object", + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized line. The four integers represent the x-coordinate of the left edge, the y-coordinate of the top edge, width, and height of the bounding box, in the coordinate system of the input image, after it has been rotated around its center according to the detected text angle (see textAngle property), with the origin at the top-left corner, and the y-axis pointing down.", + "type": "string", + "x-nullable": true + }, + "words": { + "description": "An array of objects, where each object represents a recognized word.", + "type": "array", + "items": { + "$ref": "#/definitions/OcrWord" + }, + "x-nullable": true + } + }, + "x-nullable": true + }, + "OcrWord": { + "description": "Information on a recognized word.", + "type": "object", + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized word. The four integers represent the x-coordinate of the left edge, the y-coordinate of the top edge, width, and height of the bounding box, in the coordinate system of the input image, after it has been rotated around its center according to the detected text angle (see textAngle property), with the origin at the top-left corner, and the y-axis pointing down.", + "type": "string", + "x-nullable": true + }, + "text": { + "description": "String value of a recognized word.", + "type": "string", + "x-nullable": true + } + }, + "x-nullable": true + }, + "TagResult": { + "description": "The results of a image tag operation, including any tags and image metadata.", + "type": "object", + "properties": { + "tags": { + "description": "A list of tags with confidence level.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTag" + }, + "x-nullable": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "AreaOfInterestResult": { + "description": "Result of AreaOfInterest operation.", + "type": "object", + "properties": { + "areaOfInterest": { + "$ref": "#/definitions/BoundingRect", + "description": "A bounding box for an area of interest inside an image.", + "readOnly": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "ImageUrl": { + "required": [ + "url" + ], + "type": "object", + "properties": { + "url": { + "description": "Publicly reachable URL of an image.", + "type": "string" + } + } + }, + "ComputerVisionError": { + "description": "Details about the API request error.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "InvalidImageFormat", + "UnsupportedMediaType", + "InvalidImageUrl", + "NotSupportedFeature", + "NotSupportedImage", + "Timeout", + "InternalServerError", + "InvalidImageSize", + "BadArgument", + "DetectFaceError", + "NotSupportedLanguage", + "InvalidThumbnailSize", + "InvalidDetails", + "InvalidModel", + "CancelledRequest", + "NotSupportedVisualFeature", + "FailedToProcess", + "Unspecified", + "StorageException" + ], + "x-ms-enum": { + "name": "ComputerVisionErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + }, + "requestId": { + "description": "A unique request identifier.", + "type": "string" + } + } + }, + "LandmarkResults": { + "description": "Result of domain-specific classifications for the domain of landmarks.", + "type": "object", + "properties": { + "landmarks": { + "description": "List of landmarks recognized in the image.", + "type": "array", + "items": { + "$ref": "#/definitions/LandmarksModel" + }, + "x-nullable": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + }, + "CelebrityResults": { + "description": "Result of domain-specific classifications for the domain of celebrities.", + "type": "object", + "properties": { + "celebrities": { + "description": "List of celebrities recognized in the image.", + "type": "array", + "items": { + "$ref": "#/definitions/CelebritiesModel" + }, + "x-nullable": true + }, + "requestId": { + "description": "Id of the REST API request.", + "type": "string", + "x-nullable": true + }, + "metadata": { + "$ref": "#/definitions/ImageMetadata" + } + }, + "x-nullable": true + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "in": "path", + "description": "Supported Cognitive Services endpoints.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "x-ms-skip-url-encoding": true + }, + "ImageStream": { + "name": "Image", + "in": "body", + "description": "An image stream.", + "required": true, + "schema": { + "format": "file", + "type": "object" + }, + "x-ms-parameter-location": "method" + }, + "ImageUrl": { + "name": "ImageUrl", + "in": "body", + "description": "A JSON document with a URL pointing to the image that is to be analyzed.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUrl" + }, + "x-ms-parameter-location": "method", + "x-ms-client-flatten": true + }, + "ServiceLanguage": { + "name": "language", + "in": "query", + "description": "The desired language for output generation. If this parameter is not specified, the default value is "en".Supported languages:en - English, Default. es - Spanish, ja - Japanese, pt - Portuguese, zh - Simplified Chinese.", + "required": false, + "type": "string", + "default": "en", + "enum": [ + "en", + "es", + "ja", + "pt", + "zh" + ], + "x-ms-parameter-location": "method", + "x-nullable": false + }, + "DescriptionExclude": { + "name": "descriptionExclude", + "in": "query", + "description": "Turn off specified domain models when generating the description.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Celebrities", + "Landmarks" + ], + "x-nullable": false, + "x-ms-enum": { + "name": "DescriptionExclude", + "modelAsString": false + } + }, + "collectionFormat": "csv", + "x-nullable": true, + "x-ms-parameter-location": "method" + }, + "OcrLanguage": { + "name": "language", + "in": "query", + "description": "The BCP-47 language code of the text to be detected in the image. The default value is 'unk'.", + "required": false, + "type": "string", + "default": "unk", + "enum": [ + "unk", + "zh-Hans", + "zh-Hant", + "cs", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "nb", + "pl", + "pt", + "ru", + "es", + "sv", + "tr", + "ar", + "ro", + "sr-Cyrl", + "sr-Latn", + "sk" + ], + "x-ms-parameter-location": "method", + "x-nullable": false, + "x-ms-enum": { + "name": "OcrLanguages", + "modelAsString": false + } + }, + "VisualFeatures": { + "name": "visualFeatures", + "in": "query", + "description": "A string indicating what visual feature types to return. Multiple values should be comma-separated. Valid visual feature types include: Categories - categorizes image content according to a taxonomy defined in documentation. Tags - tags the image with a detailed list of words related to the image content. Description - describes the image content with a complete English sentence. Faces - detects if faces are present. If present, generate coordinates, gender and age. ImageType - detects if image is clipart or a line drawing. Color - determines the accent color, dominant color, and whether an image is black&white. Adult - detects if the image is pornographic in nature (depicts nudity or a sex act), or is gory (depicts extreme violence or blood). Sexually suggestive content (aka racy content) is also detected. Objects - detects various objects within an image, including the approximate location. The Objects argument is only available in English. Brands - detects various brands within an image, including the approximate location. The Brands argument is only available in English.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "ImageType", + "Faces", + "Adult", + "Categories", + "Color", + "Tags", + "Description", + "Objects", + "Brands" + ], + "x-nullable": false, + "x-ms-enum": { + "name": "VisualFeatureTypes", + "modelAsString": false + } + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "DetectOrientation": { + "name": "detectOrientation", + "in": "query", + "description": "Whether detect the text orientation in the image. With detectOrientation=true the OCR service tries to detect the image orientation and correct it before further processing (e.g. if it's upside-down).", + "required": true, + "type": "boolean", + "default": true, + "x-ms-parameter-location": "method" + } + }, + "x-ms-paths": { + "/analyze?overload=stream": { + "post": { + "description": "This operation extracts a rich set of visual features based on the image content.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL. Within your request, there is an optional parameter to allow you to choose which features to return. By default, image categories are returned in the response.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "AnalyzeImageInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/VisualFeatures" + }, + { + "name": "details", + "in": "query", + "description": "A string indicating which domain-specific details to return. Multiple values should be comma-separated. Valid visual feature types include: Celebrities - identifies celebrities if detected in the image, Landmarks - identifies notable landmarks in the image.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Celebrities", + "Landmarks" + ], + "x-nullable": false, + "x-ms-enum": { + "name": "Details", + "modelAsString": false + } + }, + "collectionFormat": "csv", + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/DescriptionExclude" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "The response include the extracted features in JSON format. Here is the definitions for enumeration types:\r\n ClipartType\r\n Non - clipart = 0, ambiguous = 1, normal - clipart = 2, good - clipart = 3. LineDrawingTypeNon - LineDrawing = 0, LineDrawing = 1.", + "schema": { + "$ref": "#/definitions/ImageAnalysis" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful AnalyzeImage request": { + "$ref": "./examples/SuccessfulAnalyzeImageWithStream.json" + } + } + } + }, + "/areaOfInterest?overload=stream": { + "post": { + "description": "This operation returns a bounding box around the most important area of the image.\r\nA successful response will be returned in JSON. If the request failed, the response contains an error code and a message to help determine what went wrong.\r\nUpon failure, the error code and an error message are returned. The error code could be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, NotSupportedImage, FailedToProcess, Timeout, or InternalServerError.", + "operationId": "GetAreaOfInterestInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "The response includes the extracted area of interest in JSON format.", + "schema": { + "$ref": "#/definitions/AreaOfInterestResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetAreaOfInterest request": { + "$ref": "./examples/SuccessfulGetAreaOfInterestWithStream.json" + } + } + } + }, + "/describe?overload=stream": { + "post": { + "description": "This operation generates a description of an image in human readable language with complete sentences. The description is based on a collection of content tags, which are also returned by the operation. More than one description can be generated for each image. Descriptions are ordered by their confidence score. Descriptions may include results from celebrity and landmark domain models, if applicable.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "DescribeImageInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "maxCandidates", + "in": "query", + "description": "Maximum number of candidate descriptions to be returned. The default is 1.", + "required": false, + "type": "integer", + "format": "int32", + "default": 1, + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/DescriptionExclude" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "Image description object.", + "schema": { + "$ref": "#/definitions/ImageDescription" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful DescribeImage request": { + "$ref": "./examples/SuccessfulDescribeImageWithStream.json" + } + } + } + }, + "/detect?overload=stream": { + "post": { + "description": "Performs object detection on the specified image.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "DetectObjectsInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "The response include the detected objects in JSON format.", + "schema": { + "$ref": "#/definitions/DetectResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful DetectObjects request": { + "$ref": "./examples/SuccessfulDetectObjectsWithStream.json" + } + } + } + }, + "/generateThumbnail?overload=stream": { + "post": { + "description": "This operation generates a thumbnail image with the user-specified width and height. By default, the service analyzes the image, identifies the region of interest (ROI), and generates smart cropping coordinates based on the ROI. Smart cropping helps when you specify an aspect ratio that differs from that of the input image.\r\nA successful response contains the thumbnail image binary. If the request failed, the response contains an error code and a message to help determine what went wrong.\r\nUpon failure, the error code and an error message are returned. The error code could be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, InvalidThumbnailSize, NotSupportedImage, FailedToProcess, Timeout, or InternalServerError.", + "operationId": "GenerateThumbnailInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "width", + "in": "query", + "description": "Width of the thumbnail, in pixels. It must be between 1 and 1024. Recommended minimum of 50.", + "required": true, + "type": "integer", + "format": "int32", + "maximum": 1024, + "minimum": 1, + "x-nullable": false + }, + { + "name": "height", + "in": "query", + "description": "Height of the thumbnail, in pixels. It must be between 1 and 1024. Recommended minimum of 50.", + "required": true, + "type": "integer", + "format": "int32", + "maximum": 1024, + "minimum": 1, + "x-nullable": false + }, + { + "name": "smartCropping", + "in": "query", + "description": "Boolean flag for enabling smart cropping.", + "required": false, + "type": "boolean", + "default": false, + "x-nullable": true + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "The generated thumbnail in binary format.", + "schema": { + "type": "file" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful GenerateThumbnail request": { + "$ref": "./examples/SuccessfulGenerateThumbnailWithStream.json" + } + } + } + }, + "/models/{model}/analyze?overload=stream": { + "post": { + "description": "This operation recognizes content within an image by applying a domain-specific model. The list of domain-specific models that are supported by the Computer Vision API can be retrieved using the /models GET request. Currently, the API provides following domain-specific models: celebrities, landmarks.\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON.\r\nIf the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "AnalyzeImageByDomainInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "model", + "in": "path", + "description": "The domain-specific content to recognize.", + "required": true, + "type": "string", + "x-nullable": true + }, + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "Analysis result based on the domain model.", + "schema": { + "$ref": "#/definitions/DomainModelResults" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful AnalyzeImageByDomain request": { + "$ref": "./examples/SuccessfulAnalyzeImageByDomainWithStream.json" + } + } + } + }, + "/ocr?overload=stream": { + "post": { + "description": "Optical Character Recognition (OCR) detects text in an image and extracts the recognized characters into a machine-usable character stream.\r\nUpon success, the OCR results will be returned.\r\nUpon failure, the error code together with an error message will be returned. The error code can be one of InvalidImageUrl, InvalidImageFormat, InvalidImageSize, NotSupportedImage, NotSupportedLanguage, or InternalServerError.", + "operationId": "RecognizePrintedTextInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/DetectOrientation" + }, + { + "$ref": "#/parameters/OcrLanguage" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "The OCR results in the hierarchy of region/line/word. The results include text, bounding box for regions, lines and words. The angle, in radians, of the detected text with respect to the closest horizontal or vertical direction. After rotating the input image clockwise by this angle, the recognized text lines become horizontal or vertical. In combination with the orientation property it can be used to overlay recognition results correctly on the original image, by rotating either the original image or recognition results by a suitable angle around the center of the original image. If the angle cannot be confidently detected, this property is not present. If the image contains text at different angles, only part of the text will be recognized correctly.", + "schema": { + "$ref": "#/definitions/OcrResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful RecognizePrintedText request": { + "$ref": "./examples/SuccessfulRecognizePrintedTextWithStream.json" + } + } + } + }, + "/tag?overload=stream": { + "post": { + "description": "This operation generates a list of words, or tags, that are relevant to the content of the supplied image. The Computer Vision API can return tags based on objects, living beings, scenery or actions found in images. Unlike categories, tags are not organized according to a hierarchical classification system, but correspond to image content. Tags may contain hints to avoid ambiguity or provide context, for example the tag \"ascomycete\" may be accompanied by the hint \"fungus\".\r\nTwo input methods are supported -- (1) Uploading an image or (2) specifying an image URL.\r\nA successful response will be returned in JSON. If the request failed, the response will contain an error code and a message to help understand what went wrong.", + "operationId": "TagImageInStream", + "consumes": [ + "application/octet-stream", + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ServiceLanguage" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "responses": { + "200": { + "description": "Image tags object.", + "schema": { + "$ref": "#/definitions/TagResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful TagImage request": { + "$ref": "./examples/SuccessfulTagImageWithStream.json" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/Ocr.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/Ocr.json new file mode 100644 index 000000000000..b865e63e30cb --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/Ocr.json @@ -0,0 +1,534 @@ +{ + "swagger": "2.0", + "info": { + "version": "2.1", + "title": "Computer Vision Client", + "description": "The Computer Vision API provides state-of-the-art algorithms to process images and return information. For example, it can be used to determine if an image contains mature content, or it can be used to find all the faces in an image. It also has other features like estimating dominant and accent colors, categorizing the content of images, and describing an image with complete English sentences. Additionally, it can also intelligently generate images thumbnails for displaying large images effectively." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "host": "westcentralus.api.cognitive.microsoft.com", + "basePath": "/vision/v2.1", + "schemes": [ + "https" + ], + "paths": { + "/recognizeText": { + "post": { + "description": "Recognize Text operation. When you use the Recognize Text interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your Get Recognize Text Operation Result operation.", + "operationId": "RecognizeText", + "parameters": [ + { + "$ref": "#/parameters/ImageUrl" + }, + { + "$ref": "#/parameters/TextRecognitionMode" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later. It will return Accepted immediately and include an 'Operation-Location' header. Client side should further query the operation status using the URL specified in this header. The operation ID will expire in 48 hours.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Recognize Text request": { + "$ref": "./examples/SuccessfulRecognizeTextWithUrl.json" + } + } + } + }, + "/textOperations/{operationId}": { + "get": { + "description": "This interface is used for getting text operation result. The URL to this interface should be retrieved from 'Operation-Location' field returned from Recognize Text interface.", + "operationId": "GetTextOperationResult", + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "Id of the text operation returned in the response of the 'Recognize Text'", + "required": true, + "type": "string" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the operation status.", + "schema": { + "$ref": "#/definitions/TextOperationResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Get Text Operation Result request": { + "$ref": "./examples/SuccessfulGetTextOperationResult.json" + } + } + } + }, + "/read/core/asyncBatchAnalyze": { + "post": { + "description": "Use this interface to get the result of a Read operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read File interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'GetReadOperationResult' operation to access OCR results.​", + "operationId": "BatchReadFile", + "parameters": [ + { + "$ref": "#/parameters/ImageUrl" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Batch Read File request": { + "$ref": "./examples/SuccessfulBatchReadFileWithUrl.json" + } + } + } + }, + "/read/operations/{operationId}": { + "get": { + "description": "This interface is used for getting OCR results of Read operation. The URL to this interface should be retrieved from 'Operation-Location' field returned from Batch Read File interface.", + "operationId": "GetReadOperationResult", + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "Id of read operation returned in the response of the 'Batch Read File' interface.", + "required": true, + "type": "string" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the read operation status.", + "schema": { + "$ref": "#/definitions/ReadOperationResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Get Read Operation Result request": { + "$ref": "./examples/SuccessfulGetReadOperationResult.json" + } + } + } + } + }, + "x-ms-paths": { + "/recognizeText?overload=stream": { + "post": { + "description": "Recognize Text operation. When you use the Recognize Text interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your Get Recognize Text Operation Result operation.", + "operationId": "RecognizeTextInStream", + "parameters": [ + { + "$ref": "#/parameters/ImageStream" + }, + { + "$ref": "#/parameters/TextRecognitionMode" + } + ], + "consumes": [ + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Recognize Text request": { + "$ref": "./examples/SuccessfulRecognizeTextWithStream.json" + } + } + } + }, + "/read/core/asyncBatchAnalyze?overload=stream": { + "post": { + "description": "Use this interface to get the result of a Read Document operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read Document interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'Get Read Result operation' to access OCR results.​", + "operationId": "BatchReadFileInStream", + "parameters": [ + { + "$ref": "#/parameters/ImageStream" + } + ], + "consumes": [ + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Batch Read File request": { + "$ref": "./examples/SuccessfulBatchReadFileWithStream.json" + } + } + } + } + }, + "definitions": { + "TextOperationResult": { + "type": "object", + "description": "Result of recognition text operation.", + "properties": { + "status": { + "description": "Status of the text operation.", + "$ref": "#/definitions/OperationStatus" + }, + "recognitionResult": { + "$ref": "#/definitions/TextRecognitionResult", + "description": "Text recognition result of the text operation." + } + } + }, + "ReadOperationResult": { + "type": "object", + "description": "OCR result of the read operation.", + "properties": { + "status": { + "description": "Status of the read operation.", + "$ref": "#/definitions/OperationStatus" + }, + "recognitionResults": { + "description": "An array of text recognition result of the read operation.", + "type": "array", + "items": { + "$ref": "#/definitions/TextRecognitionResult" + } + } + } + }, + "OperationStatus": { + "type": "string", + "description": "Status code of the text operation.", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "TextOperationStatusCodes", + "modelAsString": false + }, + "x-nullable": false + }, + "TextRecognitionResult": { + "description": "An object representing a recognized text region", + "type": "object", + "required": [ + "lines" + ], + "properties": { + "page": { + "description": "The 1-based page number of the recognition result.", + "type": "integer" + }, + "clockwiseOrientation": { + "description": "The orientation of the image in degrees in the clockwise direction. Range between [0, 360).", + "type": "number" + }, + "width": { + "description": "The width of the image in pixels or the PDF in inches.", + "type": "number" + }, + "height": { + "description": "The height of the image in pixels or the PDF in inches.", + "type": "number" + }, + "unit": { + "description": "The unit used in the Width, Height and BoundingBox. For images, the unit is 'pixel'. For PDF, the unit is 'inch'.", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "TextRecognitionResultDimensionUnit", + "modelAsString": false + }, + "x-nullable": true + }, + "lines": { + "description": "A list of recognized text lines.", + "type": "array", + "items": { + "$ref": "#/definitions/Line" + } + } + } + }, + "Line": { + "description": "An object representing a recognized text line.", + "type": "object", + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized line.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/Word" + } + } + } + }, + "Word": { + "description": "An object representing a recognized word.", + "type": "object", + "required": [ + "boundingBox", + "text" + ], + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized word.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "confidence": { + "description": "Qualitative confidence measure.", + "type": "string", + "enum": [ + "High", + "Low" + ], + "x-ms-enum": { + "name": "TextRecognitionResultConfidenceClass", + "modelAsString": false + }, + "x-nullable": true + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates in original image. The eight numbers represent the four points (x-coordinate, y-coordinate from the left-top corner of the image) of the detected rectangle from the left-top corner in the clockwise direction. For images, coordinates are in pixels. For PDF, coordinates are in inches.", + "type": "array", + "items": { + "type": "number", + "x-nullable": false + } + }, + "ComputerVisionError": { + "description": "Details about the API request error.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "InvalidImageFormat", + "UnsupportedMediaType", + "InvalidImageUrl", + "NotSupportedFeature", + "NotSupportedImage", + "Timeout", + "InternalServerError", + "InvalidImageSize", + "BadArgument", + "DetectFaceError", + "NotSupportedLanguage", + "InvalidThumbnailSize", + "InvalidDetails", + "InvalidModel", + "CancelledRequest", + "NotSupportedVisualFeature", + "FailedToProcess", + "Unspecified", + "StorageException" + ], + "x-ms-enum": { + "name": "ComputerVisionErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + }, + "requestId": { + "description": "A unique request identifier.", + "type": "string" + } + } + }, + "ImageUrl": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "url": { + "description": "Publicly reachable URL of an image.", + "type": "string" + } + } + } + }, + "parameters": { + "TextRecognitionMode": { + "name": "mode", + "in": "query", + "description": "Type of text to recognize.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "x-ms-enum": { + "name": "TextRecognitionMode", + "modelAsString": false + }, + "enum": [ + "Handwritten", + "Printed" + ] + }, + "ImageUrl": { + "name": "ImageUrl", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-client-flatten": true, + "description": "A JSON document with a URL pointing to the image that is to be analyzed.", + "schema": { + "$ref": "#/definitions/ImageUrl" + } + }, + "ImageStream": { + "name": "Image", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "An image stream.", + "schema": { + "type": "object", + "format": "file" + } + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints.", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithStream.json new file mode 100644 index 000000000000..a3cd00555cc6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithStream.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "model": "Celebrities", + "Image": "{binary}" + }, + "responses": { + "200": { + "body": { + "requestId": "f0027b4b-dc0d-4082-9228-1545ed246b03", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + }, + "result": { + "celebrities": [ + { + "name": "Satya Nadella", + "faceRectangle": { + "left": 597, + "top": 162, + "width": 248, + "height": 248 + }, + "confidence": 0.999028444 + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithUrl.json new file mode 100644 index 000000000000..f5361b146996 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageByDomainWithUrl.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "model": "Celebrities", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "body": { + "requestId": "f0027b4b-dc0d-4082-9228-1545ed246b03", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + }, + "result": { + "celebrities": [ + { + "name": "Satya Nadella", + "faceRectangle": { + "left": 597, + "top": 162, + "width": 248, + "height": 248 + }, + "confidence": 0.999028444 + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithStream.json new file mode 100644 index 000000000000..ba86791a7e36 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithStream.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "visualFeatures": [ + "Categories", + "Adult", + "Tags", + "Description", + "Faces", + "Color", + "ImageType", + "Objects", + "Brands" + ], + "details": [ + "Celebrities", + "Landmarks" + ], + "language": "en", + "Image": "{binary}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "categories": [ + { + "name": "abstract_", + "score": 0.00390625 + }, + { + "name": "people_", + "score": 0.83984375, + "detail": { + "celebrities": [ + { + "name": "Satya Nadella", + "faceRectangle": { + "left": 597, + "top": 162, + "width": 248, + "height": 248 + }, + "confidence": 0.999028444 + } + ], + "landmarks": [ + { + "name": "Forbidden City", + "confidence": 0.9978346 + } + ] + } + } + ], + "adult": { + "isAdultContent": false, + "isRacyContent": false, + "isGoryContent": false, + "adultScore": 0.0934349000453949, + "racyScore": 0.068613491952419281, + "goreScore": 0.012872257380997575 + }, + "tags": [ + { + "name": "person", + "confidence": 0.98979085683822632 + }, + { + "name": "man", + "confidence": 0.94493889808654785 + }, + { + "name": "outdoor", + "confidence": 0.938492476940155 + }, + { + "name": "window", + "confidence": 0.89513939619064331 + }, + { + "name": "pangolin", + "confidence": 0.7250059783791661, + "hint": "mammal" + } + ], + "description": { + "tags": [ + "person", + "man", + "outdoor", + "window", + "glasses" + ], + "captions": [ + { + "text": "Satya Nadella sitting on a bench", + "confidence": 0.48293603002174407 + } + ] + }, + "requestId": "0dbec5ad-a3d3-4f7e-96b4-dfd57efe967d", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + }, + "faces": [ + { + "age": 44, + "gender": "Male", + "faceRectangle": { + "left": 593, + "top": 160, + "width": 250, + "height": 250 + } + } + ], + "color": { + "dominantColorForeground": "Brown", + "dominantColorBackground": "Brown", + "dominantColors": [ + "Brown", + "Black" + ], + "accentColor": "873B59", + "isBWImg": false + }, + "imageType": { + "clipArtType": 0, + "lineDrawingType": 0 + }, + "objects": [ + { + "rectangle": { + "x": 0, + "y": 0, + "w": 50, + "h": 50 + }, + "object": "tree", + "confidence": 0.9, + "parent": { + "object": "plant", + "confidence": 0.95 + } + } + ], + "brands": [ + { + "name": "Pepsi", + "confidence": 0.857, + "rectangle": { + "x": 489, + "y": 79, + "w": 161, + "h": 177 + } + }, + { + "name": "Coca-Cola", + "confidence": 0.893, + "rectangle": { + "x": 216, + "y": 55, + "w": 171, + "h": 372 + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithUrl.json new file mode 100644 index 000000000000..c1f5207ad3ec --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulAnalyzeImageWithUrl.json @@ -0,0 +1,182 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "visualFeatures": [ + "Categories", + "Adult", + "Tags", + "Description", + "Faces", + "Color", + "ImageType", + "Objects", + "Brands" + ], + "details": [ + "Celebrities", + "Landmarks" + ], + "language": "en", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "categories": [ + { + "name": "abstract_", + "score": 0.00390625 + }, + { + "name": "people_", + "score": 0.83984375, + "detail": { + "celebrities": [ + { + "name": "Satya Nadella", + "faceRectangle": { + "left": 597, + "top": 162, + "width": 248, + "height": 248 + }, + "confidence": 0.999028444 + } + ] + } + }, + { + "name": "building_", + "score": 0.984375, + "detail": { + "landmarks": [ + { + "name": "Forbidden City", + "confidence": 0.98290169239044189 + } + ] + } + } + ], + "adult": { + "isAdultContent": false, + "isRacyContent": false, + "isGoryContent": false, + "adultScore": 0.0934349000453949, + "racyScore": 0.068613491952419281, + "goreScore": 0.012872257380997575 + }, + "tags": [ + { + "name": "person", + "confidence": 0.98979085683822632 + }, + { + "name": "man", + "confidence": 0.94493889808654785 + }, + { + "name": "outdoor", + "confidence": 0.938492476940155 + }, + { + "name": "window", + "confidence": 0.89513939619064331 + }, + { + "name": "pangolin", + "confidence": 0.7250059783791661, + "hint": "mammal" + } + ], + "description": { + "tags": [ + "person", + "man", + "outdoor", + "window", + "glasses" + ], + "captions": [ + { + "text": "Satya Nadella sitting on a bench", + "confidence": 0.48293603002174407 + } + ] + }, + "requestId": "0dbec5ad-a3d3-4f7e-96b4-dfd57efe967d", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + }, + "faces": [ + { + "age": 44, + "gender": "Male", + "faceRectangle": { + "left": 593, + "top": 160, + "width": 250, + "height": 250 + } + } + ], + "color": { + "dominantColorForeground": "Brown", + "dominantColorBackground": "Brown", + "dominantColors": [ + "Brown", + "Black" + ], + "accentColor": "873B59", + "isBWImg": false + }, + "imageType": { + "clipArtType": 0, + "lineDrawingType": 0 + }, + "objects": [ + { + "rectangle": { + "x": 0, + "y": 0, + "w": 50, + "h": 50 + }, + "object": "tree", + "confidence": 0.9, + "parent": { + "object": "plant", + "confidence": 0.95 + } + } + ], + "brands": [ + { + "name": "Pepsi", + "confidence": 0.857, + "rectangle": { + "x": 489, + "y": 79, + "w": 161, + "h": 177 + } + }, + { + "name": "Coca-Cola", + "confidence": 0.893, + "rectangle": { + "x": 216, + "y": 55, + "w": 171, + "h": 372 + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithStream.json new file mode 100644 index 000000000000..a1a75c5ece55 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithStream.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "Image": "{binary}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://{domain}/vision/v2.0/read/operations/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithUrl.json new file mode 100644 index 000000000000..a0f29d5195cc --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulBatchReadFileWithUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "ImageUrl": "{url}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://{domain}/vision/v2.0/read/operations/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithStream.json new file mode 100644 index 000000000000..071248140600 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithStream.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "maxCandidates": 1, + "Image": "{binary}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "description": { + "tags": [ + "person", + "man", + "outdoor", + "window", + "glasses" + ], + "captions": [ + { + "text": "Satya Nadella sitting on a bench", + "confidence": 0.48293603002174407 + }, + { + "text": "Satya Nadella is sitting on a bench", + "confidence": 0.40037006815422832 + }, + { + "text": "Satya Nadella sitting in front of a building", + "confidence": 0.38035155997373377 + } + ] + }, + "requestId": "ed2de1c6-fb55-4686-b0da-4da6e05d283f", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithUrl.json new file mode 100644 index 000000000000..52e4259b06a4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDescribeImageWithUrl.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "maxCandidates": 1, + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "description": { + "tags": [ + "person", + "man", + "outdoor", + "window", + "glasses" + ], + "captions": [ + { + "text": "Satya Nadella sitting on a bench", + "confidence": 0.48293603002174407 + }, + { + "text": "Satya Nadella is sitting on a bench", + "confidence": 0.40037006815422832 + }, + { + "text": "Satya Nadella sitting in front of a building", + "confidence": 0.38035155997373377 + } + ] + }, + "requestId": "ed2de1c6-fb55-4686-b0da-4da6e05d283f", + "metadata": { + "width": 1500, + "height": 1000, + "format": "Jpeg" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithStream.json new file mode 100644 index 000000000000..8f4ad7fd73aa --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithStream.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "Image": "{binary}" + }, + "responses": { + "200": { + "body": { + "objects": [ + { + "rectangle": { + "x": 0, + "y": 0, + "w": 50, + "h": 50 + }, + "object": "tree", + "confidence": 0.9, + "parent": { + "object": "plant", + "confidence": 0.95 + } + } + ], + "requestId": "1ad0e45e-b7b4-4be3-8042-53be96103337", + "metadata": { + "width": 100, + "height": 100, + "format": "Jpeg" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithUrl.json new file mode 100644 index 000000000000..bae60505ce1b --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulDetectObjectsWithUrl.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "body": { + "objects": [ + { + "rectangle": { + "x": 0, + "y": 0, + "w": 50, + "h": 50 + }, + "object": "tree", + "confidence": 0.9, + "parent": { + "object": "plant", + "confidence": 0.95 + } + } + ], + "requestId": "1ad0e45e-b7b4-4be3-8042-53be96103337", + "metadata": { + "width": 100, + "height": 100, + "format": "Jpeg" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithStream.json new file mode 100644 index 000000000000..22d52fbe7644 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithStream.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "width": "500", + "height": "500", + "smartCropping": true, + "Image": "{binary}" + }, + "responses": { + "200": { + "headers": {}, + "body": "{binary}" + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithUrl.json new file mode 100644 index 000000000000..305d8dc6c28a --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGenerateThumbnailWithUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "width": "500", + "height": "500", + "smartCropping": true, + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "headers": {}, + "body": "{Binary}" + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithStream.json new file mode 100644 index 000000000000..ae32a21a551e --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithStream.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "Image": "{binary}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "areaOfInterest": { + "h": 951, + "w": 950, + "x": 160, + "y": 0 + }, + "requestId": "ed2de1c6-fb55-4686-b0da-4da6e05d283f", + "metadata": { + "format": "Jpeg", + "height": 951, + "width": 1378 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithUrl.json new file mode 100644 index 000000000000..99c7c9479342 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetAreaOfInterestWithUrl.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "areaOfInterest": { + "h": 951, + "w": 950, + "x": 160, + "y": 0 + }, + "requestId": "ed2de1c6-fb55-4686-b0da-4da6e05d283f", + "metadata": { + "format": "Jpeg", + "height": 951, + "width": 1378 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetReadOperationResult.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetReadOperationResult.json new file mode 100644 index 000000000000..69016d54f052 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetReadOperationResult.json @@ -0,0 +1,289 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "e56ffa6e-1ee4-4042-bc07-993db706c95f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "status": "Succeeded", + "recognitionResults": [ + { + "page": 1, + "clockwiseOrientation": 349.59, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 202, + 618, + 2047, + 643, + 2046, + 840, + 200, + 813 + ], + "text": "Our greatest glory is not", + "words": [ + { + "boundingBox": [ + 204, + 627, + 481, + 628, + 481, + 830, + 204, + 829 + ], + "text": "Our" + }, + { + "boundingBox": [ + 519, + 628, + 1057, + 630, + 1057, + 832, + 518, + 830 + ], + "text": "greatest" + }, + { + "boundingBox": [ + 1114, + 630, + 1549, + 631, + 1548, + 833, + 1114, + 832 + ], + "text": "glory" + }, + { + "boundingBox": [ + 1586, + 631, + 1785, + 632, + 1784, + 834, + 1586, + 833 + ], + "text": "is" + }, + { + "boundingBox": [ + 1822, + 632, + 2115, + 633, + 2115, + 835, + 1822, + 834 + ], + "text": "not" + } + ] + }, + { + "boundingBox": [ + 420, + 1273, + 2954, + 1250, + 2958, + 1488, + 422, + 1511 + ], + "text": "but in rising every time we fall", + "words": [ + { + "boundingBox": [ + 423, + 1269, + 634, + 1268, + 635, + 1507, + 424, + 1508 + ], + "text": "but" + }, + { + "boundingBox": [ + 667, + 1268, + 808, + 1268, + 809, + 1506, + 668, + 1507 + ], + "text": "in" + }, + { + "boundingBox": [ + 874, + 1267, + 1289, + 1265, + 1290, + 1504, + 875, + 1506 + ], + "text": "rising" + }, + { + "boundingBox": [ + 1331, + 1265, + 1771, + 1263, + 1772, + 1502, + 1332, + 1504 + ], + "text": "every" + }, + { + "boundingBox": [ + 1812, + 1263, + 2178, + 1261, + 2179, + 1500, + 1813, + 1502 + ], + "text": "time" + }, + { + "boundingBox": [ + 2219, + 1261, + 2510, + 1260, + 2511, + 1498, + 2220, + 1500 + ], + "text": "we" + }, + { + "boundingBox": [ + 2551, + 1260, + 3016, + 1258, + 3017, + 1496, + 2552, + 1498 + ], + "text": "fall" + } + ] + } + ] + }, + { + "page": 2, + "clockwiseOrientation": 1.32, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "in never failing ,", + "words": [ + { + "boundingBox": [ + 1611, + 934, + 1707, + 933, + 1708, + 1147, + 1613, + 1147 + ], + "text": "in" + }, + { + "boundingBox": [ + 1753, + 933, + 2132, + 930, + 2133, + 1144, + 1754, + 1146 + ], + "text": "never" + }, + { + "boundingBox": [ + 2162, + 930, + 2673, + 927, + 2674, + 1140, + 2164, + 1144 + ], + "text": "failing" + }, + { + "boundingBox": [ + 2703, + 926, + 2788, + 926, + 2790, + 1139, + 2705, + 1140 + ], + "text": ",", + "confidence": "Low" + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetTextOperationResult.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetTextOperationResult.json new file mode 100644 index 000000000000..54c1d81f0f50 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulGetTextOperationResult.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "49a36324-fc4b-4387-aa06-090cfbf0064f" + }, + "responses": { + "200": { + "header": {}, + "body": { + "status": "Succeeded", + "recognitionResult": { + "lines": [ + { + "boundingBox": [ + 202, + 618, + 2047, + 643, + 2046, + 840, + 200, + 813 + ], + "text": "Our greatest glory is not", + "words": [ + { + "boundingBox": [ + 204, + 627, + 481, + 628, + 481, + 830, + 204, + 829 + ], + "text": "Our" + }, + { + "boundingBox": [ + 519, + 628, + 1057, + 630, + 1057, + 832, + 518, + 830 + ], + "text": "greatest" + }, + { + "boundingBox": [ + 1114, + 630, + 1549, + 631, + 1548, + 833, + 1114, + 832 + ], + "text": "glory" + }, + { + "boundingBox": [ + 1586, + 631, + 1785, + 632, + 1784, + 834, + 1586, + 833 + ], + "text": "is" + }, + { + "boundingBox": [ + 1822, + 632, + 2115, + 633, + 2115, + 835, + 1822, + 834 + ], + "text": "not" + } + ] + }, + { + "boundingBox": [ + 420, + 1273, + 2954, + 1250, + 2958, + 1488, + 422, + 1511 + ], + "text": "but in rising every time we fall", + "words": [ + { + "boundingBox": [ + 423, + 1269, + 634, + 1268, + 635, + 1507, + 424, + 1508 + ], + "text": "but" + }, + { + "boundingBox": [ + 667, + 1268, + 808, + 1268, + 809, + 1506, + 668, + 1507 + ], + "text": "in" + }, + { + "boundingBox": [ + 874, + 1267, + 1289, + 1265, + 1290, + 1504, + 875, + 1506 + ], + "text": "rising" + }, + { + "boundingBox": [ + 1331, + 1265, + 1771, + 1263, + 1772, + 1502, + 1332, + 1504 + ], + "text": "every" + }, + { + "boundingBox": [ + 1812, + 1263, + 2178, + 1261, + 2179, + 1500, + 1813, + 1502 + ], + "text": "time" + }, + { + "boundingBox": [ + 2219, + 1261, + 2510, + 1260, + 2511, + 1498, + 2220, + 1500 + ], + "text": "we" + }, + { + "boundingBox": [ + 2551, + 1260, + 3016, + 1258, + 3017, + 1496, + 2552, + 1498 + ], + "text": "fall" + } + ] + }, + { + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "in never failing ,", + "words": [ + { + "boundingBox": [ + 1611, + 934, + 1707, + 933, + 1708, + 1147, + 1613, + 1147 + ], + "text": "in" + }, + { + "boundingBox": [ + 1753, + 933, + 2132, + 930, + 2133, + 1144, + 1754, + 1146 + ], + "text": "never" + }, + { + "boundingBox": [ + 2162, + 930, + 2673, + 927, + 2674, + 1140, + 2164, + 1144 + ], + "text": "failing" + }, + { + "boundingBox": [ + 2703, + 926, + 2788, + 926, + 2790, + 1139, + 2705, + 1140 + ], + "text": "," + } + ] + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulListModels.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulListModels.json new file mode 100644 index 000000000000..54e72d376431 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulListModels.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "models": [ + { + "name": "celebrities", + "categories": [ + "people_" + ] + }, + { + "name": "landmarks", + "categories": [ + "building_" + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithStream.json new file mode 100644 index 000000000000..201d0fe48254 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithStream.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "detectOrientation": "true", + "language": "en", + "Image": "{binary}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "language": "en", + "textAngle": -2.0000000000000338, + "orientation": "Up", + "regions": [ + { + "boundingBox": "462,379,497,258", + "lines": [ + { + "boundingBox": "462,379,497,74", + "words": [ + { + "boundingBox": "462,379,41,73", + "text": "A" + }, + { + "boundingBox": "523,379,153,73", + "text": "GOAL" + }, + { + "boundingBox": "694,379,265,74", + "text": "WITHOUT" + } + ] + }, + { + "boundingBox": "565,471,289,74", + "words": [ + { + "boundingBox": "565,471,41,73", + "text": "A" + }, + { + "boundingBox": "626,471,150,73", + "text": "PLAN" + }, + { + "boundingBox": "801,472,53,73", + "text": "IS" + } + ] + }, + { + "boundingBox": "519,563,375,74", + "words": [ + { + "boundingBox": "519,563,149,74", + "text": "JUST" + }, + { + "boundingBox": "683,564,41,72", + "text": "A" + }, + { + "boundingBox": "741,564,153,73", + "text": "WISH" + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithUrl.json new file mode 100644 index 000000000000..68a9676acdab --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizePrintedTextWithUrl.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "detectOrientation": "true", + "language": "en", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "language": "en", + "textAngle": -2.0000000000000338, + "orientation": "Up", + "regions": [ + { + "boundingBox": "462,379,497,258", + "lines": [ + { + "boundingBox": "462,379,497,74", + "words": [ + { + "boundingBox": "462,379,41,73", + "text": "A" + }, + { + "boundingBox": "523,379,153,73", + "text": "GOAL" + }, + { + "boundingBox": "694,379,265,74", + "text": "WITHOUT" + } + ] + }, + { + "boundingBox": "565,471,289,74", + "words": [ + { + "boundingBox": "565,471,41,73", + "text": "A" + }, + { + "boundingBox": "626,471,150,73", + "text": "PLAN" + }, + { + "boundingBox": "801,472,53,73", + "text": "IS" + } + ] + }, + { + "boundingBox": "519,563,375,74", + "words": [ + { + "boundingBox": "519,563,149,74", + "text": "JUST" + }, + { + "boundingBox": "683,564,41,72", + "text": "A" + }, + { + "boundingBox": "741,564,153,73", + "text": "WISH" + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithStream.json new file mode 100644 index 000000000000..480d7a15395f --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithStream.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "mode": "Handwritten", + "Image": "{binary}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://{domain}/vision/v2.0/textOperations/49a36324-fc4b-4387-aa06-090cfbf0064f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithUrl.json new file mode 100644 index 000000000000..8564bb987545 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulRecognizeTextWithUrl.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "mode": "Handwritten", + "ImageUrl": "{url}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://westus.api.cognitive.microsoft.com/vision/v2.0/textOperations/49a36324-fc4b-4387-aa06-090cfbf0064f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithStream.json new file mode 100644 index 000000000000..813a645d0086 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithStream.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "Image": "{binary}" + }, + "responses": { + "200": { + "body": { + "tags": [ + { + "name": "grass", + "confidence": 0.9999997615814209 + }, + { + "name": "outdoor", + "confidence": 0.99997067451477051 + }, + { + "name": "sky", + "confidence": 0.99928975105285645 + }, + { + "name": "building", + "confidence": 0.99646323919296265 + }, + { + "name": "house", + "confidence": 0.99279803037643433 + }, + { + "name": "lawn", + "confidence": 0.82268029451370239 + }, + { + "name": "green", + "confidence": 0.64122253656387329 + }, + { + "name": "residential", + "confidence": 0.31403225660324097 + } + ], + "requestId": "1ad0e45e-b7b4-4be3-8042-53be96103337", + "metadata": { + "width": 400, + "height": 400, + "format": "Jpeg" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithUrl.json new file mode 100644 index 000000000000..972078487159 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/examples/SuccessfulTagImageWithUrl.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Ocp-Apim-Subscription-Key": "{API key}", + "ImageUrl": "{url}" + }, + "responses": { + "200": { + "body": { + "tags": [ + { + "name": "grass", + "confidence": 0.9999997615814209 + }, + { + "name": "outdoor", + "confidence": 0.99997067451477051 + }, + { + "name": "sky", + "confidence": 0.99928975105285645 + }, + { + "name": "building", + "confidence": 0.99646323919296265 + }, + { + "name": "house", + "confidence": 0.99279803037643433 + }, + { + "name": "lawn", + "confidence": 0.82268029451370239 + }, + { + "name": "green", + "confidence": 0.64122253656387329 + }, + { + "name": "residential", + "confidence": 0.31403225660324097 + } + ], + "requestId": "1ad0e45e-b7b4-4be3-8042-53be96103337", + "metadata": { + "width": 400, + "height": 400, + "format": "Jpeg" + } + } + } + } +} From 7eaa16abc6a060ad749acbe32ccb28163dd932d8 Mon Sep 17 00:00:00 2001 From: Riley McKenna Date: Thu, 22 Aug 2019 13:56:40 -0700 Subject: [PATCH 004/123] 2019-08-01-preview Peering Service (#6886) * Adding ew Api which adds a connection identifier. This is a unique hash for each connection so we can determine when a connection is deleted or if it is updated. * added 06-01 to readme * added location to list Legacy example * Updated Models * Update readme.typescript.md * Updated Swagger and api-version * pretifies the json. * Updated Docs * removed \r\n from description. --- .../CheckServiceProviderAvailability.json | 15 + .../examples/CreateDirectPeering.json | 185 ++ .../examples/CreateExchangePeering.json | 165 ++ .../examples/CreatePeerAsn.json | 66 + .../examples/CreatePeeringService.json | 43 + .../examples/CreatePeeringServicePrefix.json | 40 + .../examples/DeletePeerAsn.json | 11 + .../examples/DeletePeering.json | 12 + .../examples/DeletePeeringService.json | 12 + .../examples/DeletePeeringServicePrefix.json | 13 + .../examples/GetPeerAsn.json | 30 + .../examples/GetPeering.json | 68 + .../examples/GetPeeringService.json | 23 + .../examples/GetPeeringServicePrefix.json | 23 + .../examples/ListDirectPeeringLocations.json | 81 + .../ListExchangePeeringLocations.json | 73 + .../examples/ListLegacyPeerings.json | 72 + .../examples/ListPeerAsnsBySubscription.json | 33 + .../examples/ListPeeringOperations.json | 183 ++ .../examples/ListPeeringServiceLocations.json | 32 + .../examples/ListPeeringServiceProviders.json | 30 + .../ListPeeringServicesByResourceGroup.json | 26 + .../ListPeeringServicesBySubscription.json | 25 + .../examples/ListPeeringsByResourceGroup.json | 71 + .../examples/ListPeeringsBySubscription.json | 70 + .../ListPrefixesByPeeringService.json | 36 + .../examples/UpdatePeeringServiceTags.json | 33 + .../examples/UpdatePeeringTags.json | 78 + .../preview/2019-08-01-preview/peering.json | 2448 +++++++++++++++++ .../peering/resource-manager/readme.go.md | 8 + .../peering/resource-manager/readme.md | 14 + .../peering/resource-manager/readme.ruby.md | 20 + 32 files changed, 4039 insertions(+) create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json create mode 100644 specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/peering.json diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json new file mode 100644 index 000000000000..9d3a78143846 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview", + "checkServiceProviderAvailabilityInput": { + "peeringServiceLocation": "peeringServiceLocation1", + "peeringServiceProvider": "peeringServiceProvider1" + } + }, + "responses": { + "200": { + "body": "Available" + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json new file mode 100644 index 000000000000..dc1343d6b9b1 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json @@ -0,0 +1,185 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2019-08-01-preview", + "peering": { + "sku": { + "name": "Basic_Direct_Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.1.0/31", + "sessionPrefixV6": "fd00::2/127", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": false, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.1.0/31", + "sessionPrefixV6": "fd00::2/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": false, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.1.0/31", + "sessionPrefixV6": "fd00::2/127", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": false, + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json new file mode 100644 index 000000000000..41ab13709f30 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json @@ -0,0 +1,165 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2019-08-01-preview", + "peering": { + "sku": { + "name": "Basic_Exchange_Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json new file mode 100644 index 000000000000..0f76e402bc88 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2019-08-01-preview", + "peerAsn": { + "properties": { + "peerAsn": 65000, + "peerContactInfo": { + "emails": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "phone": [ + "+1 (234) 567-8900" + ] + }, + "peerName": "Contoso" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactInfo": { + "emails": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "phone": [ + "+1 (234) 567-8900" + ] + }, + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + }, + "201": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactInfo": { + "emails": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "phone": [ + "+1 (234) 567-8900" + ] + }, + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json new file mode 100644 index 000000000000..1a5907825acb --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2019-08-01-preview", + "peeringService": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + }, + "201": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json new file mode 100644 index 000000000000..87fbea0b1453 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2019-08-01-preview", + "peeringServicePrefix": { + "properties": { + "prefix": "192.168.1.0/24" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Pending", + "learnedType": "None", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + }, + "201": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Pending", + "learnedType": "None", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json new file mode 100644 index 000000000000..544dd4915d16 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json new file mode 100644 index 000000000000..91f513baeb9c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json new file mode 100644 index 000000000000..043e4101784d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json new file mode 100644 index 000000000000..c2c85fecf1fe --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json new file mode 100644 index 000000000000..4241b592c8e8 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactInfo": { + "emails": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "phone": [ + "+1 (234) 567-8900" + ] + }, + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json new file mode 100644 index 000000000000..a5c79ec3a1f4 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json new file mode 100644 index 000000000000..170384db3e25 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json new file mode 100644 index 000000000000..e8275765c6bf --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "prefixName": "peeringServicePrefixName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "None", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json new file mode 100644 index 000000000000..236784a78767 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Direct", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address1", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + }, + { + "address": "address3", + "directPeeringType": "Cdn", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address2", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json new file mode 100644 index 000000000000..8f63bba1f3ab --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name1", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.131.1", + "microsoftIPv6Address": "fd00::1:1", + "facilityIPv4Prefix": "192.168.128.0/17", + "facilityIPv6Prefix": "fd00::1000:0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + }, + { + "exchangeName": "name3", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.2", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/17", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name2", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.1", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/16", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json new file mode 100644 index 000000000000..5d4be2649746 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "peeringLocation": "peeringLocation0", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "name": "peeringName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json new file mode 100644 index 000000000000..eca982eba211 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peerAsn": 65000, + "peerContactInfo": { + "emails": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "phone": [ + "+1 (234) 567-8900" + ] + }, + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json new file mode 100644 index 000000000000..5f68a882092f --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Peering/register/action", + "display": { + "provider": "Microsoft.Peering", + "resource": "Peering Resource Provider", + "operation": "Registers the Peering Resource Provider", + "description": "Registers the subscription for the Peering Resource Provider and enables the creation of peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Write PeerAsn", + "description": "Write any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Read PeerAsn", + "description": "Read any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Delete PeerAsn", + "description": "Delete any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringLocations", + "operation": "Read PeeringLocation", + "description": "Read any peeringLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/legacyPeerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "legacyPeerings", + "operation": "Read LegacyPeering", + "description": "Read any legacyPeerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Write Peering", + "description": "Write any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Read Peering", + "description": "Read any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Delete Peering", + "description": "Delete any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceLocations", + "operation": "Read PeeringServiceLocations", + "description": "Read any peeringServiceLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceProviders/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceProviders", + "operation": "Read PeeringServiceProviders", + "description": "Read any peeringServiceProviders" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Read PeeringServices", + "description": "Read any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Write PeeringService", + "description": "Write any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Delete PeeringServices", + "description": "Delete any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Read PeeringServicePrefixes", + "description": "Read any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Write PeeringServicePrefixes", + "description": "Write any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Delete PeeringServicePrefixes", + "description": "Delete any prefixes" + }, + "isDataAction": false + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json new file mode 100644 index 000000000000..cec86133087c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "country": "country1", + "state": "state1" + }, + "name": "peeringServiceLocation1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation1", + "type": "Microsoft.Peering/peeringServiceLocations" + }, + { + "properties": { + "country": "country2", + "state": "state2" + }, + "name": "peeringServiceLocation2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation2", + "type": "Microsoft.Peering/peeringServiceLocations" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json new file mode 100644 index 000000000000..141551486dca --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "serviceProviderName": "peeringServiceProvider1" + }, + "name": "peeringServiceProvider1", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider1", + "type": "Microsoft.Peering/peeringServiceProviders" + }, + { + "properties": { + "serviceProviderName": "peeringServiceProvider2" + }, + "name": "peeringServiceProvider2", + "id": "/subscriptions/subId/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider2", + "type": "Microsoft.Peering/peeringServiceProviders" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json new file mode 100644 index 000000000000..b2f7189c722a --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json new file mode 100644 index 000000000000..b8ca7aeb959b --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json new file mode 100644 index 000000000000..d44b1c1ce4fc --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json new file mode 100644 index 000000000000..5111a0bdcba7 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json new file mode 100644 index 000000000000..898113a4b6da --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "None", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName1", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName1" + }, + { + "properties": { + "prefix": "192.168.2.0/24", + "prefixValidationState": "Verified", + "learnedType": "None", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName2", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName/prefixes/peeringServicePrefixName2" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json new file mode 100644 index 000000000000..91496424563a --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringServiceName": "peeringServiceName", + "api-version": "2019-08-01-preview", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "peeringServiceName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peeringServices/peeringServiceName", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json new file mode 100644 index 000000000000..7f0c41ba1b65 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2019-08-01-preview", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/subId/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "peeringName", + "id": "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Peering/peerings/peeringName", + "type": "Microsoft.Peering/peerings" + } + } + } +} \ No newline at end of file diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/peering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/peering.json new file mode 100644 index 000000000000..6bdcee586d1c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/peering.json @@ -0,0 +1,2448 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-01-preview", + "title": "PeeringManagementClient", + "description": "APIs to manage Peering resources through the Azure Resource Manager." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/CheckServiceProviderAvailability": { + "post": { + "tags": [ + "CheckServiceProviderAvailability" + ], + "description": "Checks if the peering service provider is present within 1000 miles of customer's location", + "operationId": "CheckServiceProviderAvailability", + "parameters": [ + { + "name": "checkServiceProviderAvailabilityInput", + "in": "body", + "description": "The CheckServiceProviderAvailabilityInput indicating customer location and service provider.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckServiceProviderAvailabilityInput" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "enum": [ + "Available", + "UnAvailable" + ], + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check if peering service provider is available in customer location": { + "$ref": "./examples/CheckServiceProviderAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/legacyPeerings": { + "get": { + "tags": [ + "LegacyPeerings" + ], + "description": "Lists all of the legacy peerings under the given subscription matching the specified kind and location.", + "operationId": "LegacyPeerings_List", + "parameters": [ + { + "name": "peeringLocation", + "in": "query", + "description": "The location of the peering.", + "required": true, + "type": "string" + }, + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List legacy peerings": { + "$ref": "./examples/ListLegacyPeerings.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Peering/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available API operations for peering resources.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering operations": { + "$ref": "./examples/ListPeeringOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/{peerAsnName}": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Gets the peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Get", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peer ASN": { + "$ref": "./examples/GetPeerAsn.json" + } + } + }, + "put": { + "tags": [ + "PeerAsns" + ], + "description": "Creates a new peer ASN or updates an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_CreateOrUpdate", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "name": "peerAsn", + "in": "body", + "description": "The peer ASN.", + "required": true, + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peer ASN": { + "$ref": "./examples/CreatePeerAsn.json" + } + } + }, + "delete": { + "tags": [ + "PeerAsns" + ], + "description": "Deletes an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Delete", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peer ASN": { + "$ref": "./examples/DeletePeerAsn.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Lists all of the peer ASNs under the given subscription.", + "operationId": "PeerAsns_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsnListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peer ASNs in a subscription": { + "$ref": "./examples/ListPeerAsnsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringLocations": { + "get": { + "tags": [ + "PeeringLocations" + ], + "description": "Lists all of the available peering locations for the specified kind of peering.", + "operationId": "PeeringLocations_List", + "parameters": [ + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "name": "directPeeringType", + "in": "query", + "description": "The type of direct peering.", + "required": false, + "type": "string", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal" + ] + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List direct peering locations": { + "$ref": "./examples/ListDirectPeeringLocations.json" + }, + "List exchange peering locations": { + "$ref": "./examples/ListExchangePeeringLocations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Gets an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering": { + "$ref": "./examples/GetPeering.json" + } + } + }, + "put": { + "tags": [ + "Peerings" + ], + "description": "Creates a new peering or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "peering", + "in": "body", + "description": "The properties needed to create or update a peering.", + "required": true, + "schema": { + "$ref": "#/definitions/Peering" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a direct peering": { + "$ref": "./examples/CreateDirectPeering.json" + }, + "Create an exchange peering": { + "$ref": "./examples/CreateExchangePeering.json" + } + } + }, + "delete": { + "tags": [ + "Peerings" + ], + "description": "Deletes an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering": { + "$ref": "./examples/DeletePeering.json" + } + } + }, + "patch": { + "tags": [ + "Peerings" + ], + "description": "Updates tags for a peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering tags": { + "$ref": "./examples/UpdatePeeringTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription and resource group.", + "operationId": "Peerings_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a resource group": { + "$ref": "./examples/ListPeeringsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "Peerings_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a subscription": { + "$ref": "./examples/ListPeeringsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceLocations": { + "get": { + "tags": [ + "PeeringServiceLocations" + ], + "description": "Lists all of the available peering service locations for the specified kind of peering.", + "operationId": "PeeringServiceLocations_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service locations": { + "$ref": "./examples/ListPeeringServiceLocations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes/{prefixName}": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Gets the peering service prefix.", + "operationId": "PeeringServicePrefixes_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The peering service name.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The prefix name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a prefix associated with the peering service": { + "$ref": "./examples/GetPeeringServicePrefix.json" + } + } + }, + "put": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Creates or updates the peering prefix.", + "operationId": "PeeringServicePrefixes_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The peering service name.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The prefix name", + "required": true, + "type": "string" + }, + { + "name": "peeringServicePrefix", + "in": "body", + "description": "The IP prefix for an peering", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a prefix for the peering service": { + "$ref": "./examples/CreatePeeringServicePrefix.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "removes the peering prefix.", + "operationId": "PeeringServicePrefixes_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The peering service name.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The prefix name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a prefix associated with the peering service": { + "$ref": "./examples/DeletePeeringServicePrefix.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Lists the peerings prefix in the resource group.", + "operationId": "Prefixes_ListByPeeringService", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The peering service name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the prefixes associated with the peering service": { + "$ref": "./examples/ListPrefixesByPeeringService.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceProviders": { + "get": { + "tags": [ + "PeeringServiceProviders" + ], + "description": "Lists all of the available peering service locations for the specified kind of peering.", + "operationId": "PeeringServiceProviders_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service providers": { + "$ref": "./examples/ListPeeringServiceProviders.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Gets an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering service": { + "$ref": "./examples/GetPeeringService.json" + } + } + }, + "put": { + "tags": [ + "PeeringServices" + ], + "description": "Creates a new peering service or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "peeringService", + "in": "body", + "description": "The properties needed to create or update a peering service.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peering service": { + "$ref": "./examples/CreatePeeringService.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServices" + ], + "description": "Deletes an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering service": { + "$ref": "./examples/DeletePeeringService.json" + } + } + }, + "patch": { + "tags": [ + "PeeringServices" + ], + "description": "Updates tags for a peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering service tags": { + "$ref": "./examples/UpdatePeeringServiceTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peering services under the given subscription and resource group.", + "operationId": "PeeringServices_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a resource group": { + "$ref": "./examples/ListPeeringServicesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "PeeringServices_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a subscription": { + "$ref": "./examples/ListPeeringServicesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CheckServiceProviderAvailabilityInput": { + "description": "Class for CheckServiceProviderAvailabilityInput", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "Gets or sets the PeeringServiceLocation", + "type": "string" + }, + "peeringServiceProvider": { + "description": "Gets or sets the PeeringServiceProvider", + "type": "string" + } + } + }, + "PeeringListResult": { + "description": "The paginated list of peerings.", + "type": "object", + "properties": { + "value": { + "description": "The list of peerings.", + "type": "array", + "items": { + "$ref": "#/definitions/Peering" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peerings.", + "type": "string" + } + } + }, + "Peering": { + "description": "Peering is a logical representation of a set of connections to the Microsoft Cloud Edge at a location.", + "required": [ + "sku", + "kind", + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/PeeringSku", + "description": "The SKU that defines the tier and kind of the peering." + }, + "kind": { + "description": "The kind of the peering.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringProperties", + "description": "The properties that define a peering.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringSku": { + "description": "The SKU that defines the tier and kind of the peering.", + "type": "object", + "properties": { + "name": { + "description": "The name of the peering SKU.", + "enum": [ + "Basic_Exchange_Free", + "Basic_Direct_Free", + "Premium_Direct_Free", + "Premium_Exchange_Metered", + "Premium_Direct_Metered", + "Premium_Direct_Unlimited" + ], + "type": "string", + "x-ms-enum": { + "name": "name", + "modelAsString": true + } + }, + "tier": { + "description": "The tier of the peering SKU.", + "enum": [ + "Basic", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "tier", + "modelAsString": true + } + }, + "family": { + "description": "The family of the peering SKU.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "family", + "modelAsString": true + } + }, + "size": { + "description": "The size of the peering SKU.", + "enum": [ + "Free", + "Metered", + "Unlimited" + ], + "type": "string", + "x-ms-enum": { + "name": "size", + "modelAsString": true + } + } + } + }, + "PeeringProperties": { + "description": "The properties that define connectivity to the Microsoft Cloud Edge.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringPropertiesDirect", + "description": "The properties that define a direct peering." + }, + "exchange": { + "$ref": "#/definitions/PeeringPropertiesExchange", + "description": "The properties that define an exchange peering." + }, + "peeringLocation": { + "description": "The location of the peering.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesDirect": { + "description": "The properties that define a direct peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute a direct peering.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectConnection" + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the peering is used for peering service.", + "type": "boolean" + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + }, + "directPeeringType": { + "description": "The type of direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesExchange": { + "description": "The properties that define an exchange peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute an exchange peering.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangeConnection" + } + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + } + } + }, + "DirectConnection": { + "description": "The properties that define a direct connection.", + "type": "object", + "properties": { + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection.", + "type": "integer" + }, + "provisionedBandwidthInMbps": { + "format": "int32", + "description": "The bandwidth that is actually provisioned.", + "type": "integer" + }, + "sessionAddressProvider": { + "description": "The field indicating if Microsoft provides session ip addresses.", + "enum": [ + "Microsoft", + "Peer" + ], + "type": "string", + "x-ms-enum": { + "name": "sessionAddressProvider", + "modelAsString": true + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the connection is used for peering service.", + "type": "boolean" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + } + } + }, + "SubResource": { + "description": "The sub resource.", + "type": "object", + "properties": { + "id": { + "description": "The identifier of the referenced resource.", + "type": "string" + } + } + }, + "ExchangeConnection": { + "description": "The properties that define an exchange connection.", + "type": "object", + "properties": { + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + } + } + }, + "BgpSession": { + "description": "The properties that define a BGP session.", + "type": "object", + "properties": { + "sessionPrefixV4": { + "description": "The IPv4 prefix that contains both ends' IPv4 addresses.", + "type": "string" + }, + "sessionPrefixV6": { + "description": "The IPv6 prefix that contains both ends' IPv6 addresses.", + "type": "string" + }, + "microsoftSessionIPv4Address": { + "description": "The IPv4 session address on Microsoft's end.", + "type": "string", + "readOnly": true + }, + "microsoftSessionIPv6Address": { + "description": "The IPv6 session address on Microsoft's end.", + "type": "string", + "readOnly": true + }, + "peerSessionIPv4Address": { + "description": "The IPv4 session address on peer's end.", + "type": "string" + }, + "peerSessionIPv6Address": { + "description": "The IPv6 session address on peer's end.", + "type": "string" + }, + "sessionStateV4": { + "description": "The state of the IPv4 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV4", + "modelAsString": true + } + }, + "sessionStateV6": { + "description": "The state of the IPv6 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV6", + "modelAsString": true + } + }, + "maxPrefixesAdvertisedV4": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv4 session.", + "type": "integer" + }, + "maxPrefixesAdvertisedV6": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv6 session.", + "type": "integer" + }, + "md5AuthenticationKey": { + "description": "The MD5 authentication key of the session.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "The paginated list of peering API operations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering API operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering API operations.", + "type": "string" + } + } + }, + "Operation": { + "description": "The peering API operation.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The information related to the operation.", + "readOnly": true + }, + "isDataAction": { + "description": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean", + "readOnly": true + } + } + }, + "OperationDisplayInfo": { + "description": "The information related to the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the resource provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + } + } + }, + "PeerAsn": { + "description": "The essential information related to the peer's ASN.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeerAsnProperties", + "description": "The properties that define a peer's ASN.", + "x-ms-client-flatten": true + } + } + }, + "PeerAsnProperties": { + "description": "The properties that define a peer's ASN.", + "type": "object", + "properties": { + "peerAsn": { + "format": "int32", + "description": "The Autonomous System Number (ASN) of the peer.", + "type": "integer" + }, + "peerContactInfo": { + "$ref": "#/definitions/ContactInfo", + "description": "The contact information of the peer." + }, + "peerName": { + "description": "The name of the peer.", + "type": "string" + }, + "validationState": { + "description": "The validation state of the ASN associated with the peer.", + "enum": [ + "None", + "Pending", + "Approved", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "validationState", + "modelAsString": true + } + } + } + }, + "ContactInfo": { + "description": "The contact information of the peer.", + "type": "object", + "properties": { + "emails": { + "description": "The list of email addresses.", + "type": "array", + "items": { + "type": "string" + } + }, + "phone": { + "description": "The list of contact numbers.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PeerAsnListResult": { + "description": "The paginated list of peer ASNs.", + "type": "object", + "properties": { + "value": { + "description": "The list of peer ASNs.", + "type": "array", + "items": { + "$ref": "#/definitions/PeerAsn" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peer ASNs.", + "type": "string" + } + } + }, + "PeeringLocationListResult": { + "description": "The paginated list of peering locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering locations.", + "type": "string" + } + } + }, + "PeeringLocation": { + "description": "Peering location is where connectivity could be established to the Microsoft Cloud Edge.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "description": "The kind of peering that the peering location supports.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringLocationProperties", + "description": "The properties that define a peering location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringLocationProperties": { + "description": "The properties that define a peering location.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringLocationPropertiesDirect", + "description": "The properties that define a direct peering location." + }, + "exchange": { + "$ref": "#/definitions/PeeringLocationPropertiesExchange", + "description": "The properties that define an exchange peering location." + }, + "peeringLocation": { + "description": "The name of the peering location.", + "type": "string" + }, + "country": { + "description": "The country in which the peering location exists.", + "type": "string" + }, + "azureRegion": { + "description": "The Azure region associated with the peering location.", + "type": "string" + } + } + }, + "PeeringLocationPropertiesDirect": { + "description": "The properties that define a direct peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of direct peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectPeeringFacility" + } + }, + "bandwidthOffers": { + "description": "The list of bandwidth offers available at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringBandwidthOffer" + } + } + } + }, + "PeeringLocationPropertiesExchange": { + "description": "The properties that define an exchange peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of exchange peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangePeeringFacility" + } + } + } + }, + "DirectPeeringFacility": { + "description": "The properties that define a direct peering facility.", + "type": "object", + "properties": { + "address": { + "description": "The address of the direct peering facility.", + "type": "string" + }, + "directPeeringType": { + "description": "The type of the direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "PeeringBandwidthOffer": { + "description": "The properties that define a peering bandwidth offer.", + "type": "object", + "properties": { + "offerName": { + "description": "The name of the bandwidth offer.", + "type": "string" + }, + "valueInMbps": { + "format": "int32", + "description": "The value of the bandwidth offer in Mbps.", + "type": "integer" + } + } + }, + "ExchangePeeringFacility": { + "description": "The properties that define an exchange peering facility.", + "type": "object", + "properties": { + "exchangeName": { + "description": "The name of the exchange peering facility.", + "type": "string" + }, + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection between Microsoft and the exchange peering facility.", + "type": "integer" + }, + "microsoftIPv4Address": { + "description": "The IPv4 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "microsoftIPv6Address": { + "description": "The IPv6 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "facilityIPv4Prefix": { + "description": "The IPv4 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "facilityIPv6Prefix": { + "description": "The IPv6 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "ResourceTags": { + "description": "The resource tags.", + "type": "object", + "properties": { + "tags": { + "description": "Gets or sets the tags, a dictionary of descriptors arm object", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringServiceLocationListResult": { + "description": "The paginated list of peering service locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service locations.", + "type": "string" + } + } + }, + "PeeringServiceLocation": { + "description": "PeeringService location", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceLocationProperties", + "description": "The properties that define a peering service location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceLocationProperties": { + "description": "The properties that define connectivity to the Peering Service Location.", + "type": "object", + "properties": { + "country": { + "description": "Country of the customer", + "type": "string" + }, + "state": { + "description": "State of the customer", + "type": "string" + }, + "azureRegion": { + "description": "Azure region for the location", + "type": "string" + } + } + }, + "PeeringServicePrefix": { + "description": "The peering service prefix class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServicePrefixProperties", + "description": "Gets or sets the peering prefix properties.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServicePrefixProperties": { + "description": "The peering service prefix properties class.", + "type": "object", + "properties": { + "prefix": { + "description": "Valid route prefix", + "type": "string" + }, + "prefixValidationState": { + "description": "The prefix validation state", + "enum": [ + "None", + "Invalid", + "Verified", + "Failed", + "Pending", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "name": "prefixValidationState", + "modelAsString": true + } + }, + "learnedType": { + "description": "The prefix learned type", + "enum": [ + "None", + "ViaPartner", + "ViaSession" + ], + "type": "string", + "x-ms-enum": { + "name": "learnedType", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServicePrefixListResult": { + "description": "The paginated list of [T].", + "type": "object", + "properties": { + "value": { + "description": "The list of [T].", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "nextLink": { + "description": "The link to fetch the next page of [T].", + "type": "string" + } + } + }, + "PeeringServiceProviderListResult": { + "description": "The paginated list of peering service providers.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service providers.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceProvider" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service providers.", + "type": "string" + } + } + }, + "PeeringServiceProvider": { + "description": "PeeringService provider", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceProviderProperties", + "description": "The properties that define a peering service provider.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceProviderProperties": { + "description": "The properties that define connectivity to the Peering Service Provider.", + "type": "object", + "properties": { + "serviceProviderName": { + "description": "The name of the service provider.", + "type": "string" + } + } + }, + "PeeringService": { + "description": "Peering Service", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceProperties", + "description": "The properties that define a peering service.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringServiceProperties": { + "description": "The properties that define connectivity to the Peering Service.", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "The PeeringServiceLocation of the Customer.", + "type": "string" + }, + "peeringServiceProvider": { + "description": "The MAPS Provider Name.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServiceListResult": { + "description": "The paginated list of peering services.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering services.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringService" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering services.", + "type": "string" + } + } + }, + "ErrorResponse": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "The ARM resource class.", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "The ID of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Azure subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/peering/resource-manager/readme.go.md b/specification/peering/resource-manager/readme.go.md index 810024b05e24..6a86af3a43e9 100644 --- a/specification/peering/resource-manager/readme.go.md +++ b/specification/peering/resource-manager/readme.go.md @@ -26,3 +26,11 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-08-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-08-01-preview/$(namespace) +``` diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index c103831616f4..e2b67ad060da 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -36,6 +36,11 @@ or openapi-type: arm tag: package-2019-07-01-preview ``` +or +``` yaml +openapi-type: arm +tag: package-2019-08-01-preview +``` ### Tag: package-2019-03-01-preview @@ -62,6 +67,15 @@ These settings apply only when `--tag=package-2019-07-01-preview` is specified o input-file: - Microsoft.Peering/preview/2019-07-01-preview/peering.json ``` + +### Tag: package-2019-08-01-preview + +These settings apply only when `--tag=package-2019-08-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08-01-preview' +input-file: +- Microsoft.Peering/preview/2019-08-01-preview/peering.json +``` # Code Generation ## Swagger to SDK diff --git a/specification/peering/resource-manager/readme.ruby.md b/specification/peering/resource-manager/readme.ruby.md index 9b2a9d546be3..d2004e8c5b69 100644 --- a/specification/peering/resource-manager/readme.ruby.md +++ b/specification/peering/resource-manager/readme.ruby.md @@ -7,6 +7,12 @@ package-name: azure_mgmt_peering package-version: "2019-03-01-preview" azure-arm: true ``` +or +``` yaml +package-name: azure_mgmt_peering +package-version: "2019-08-01-preview" +azure-arm: true +``` ### Ruby multi-api @@ -14,6 +20,11 @@ azure-arm: true batch: - tag: package-2019-03-01-preview ``` +or +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2019-08-01-preview +``` ### Tag: package-2019-03-01-preview and ruby @@ -24,3 +35,12 @@ Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-08-01-preview' && $(ruby) +namespace: "Azure::Peering::Mgmt::V2019_08_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_peering/lib +``` \ No newline at end of file From 27ae535a24de01ea9cdfd06e9a2a777407991f5b Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 22 Aug 2019 20:58:35 +0000 Subject: [PATCH 005/123] regenerated all-api-versions --- specification/peering/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index e2b67ad060da..b0ce8bb3e4a9 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -118,6 +118,7 @@ input-file: - $(this-folder)/Microsoft.Peering/preview/2019-03-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-06-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-07-01-preview/peering.json + - $(this-folder)/Microsoft.Peering/preview/2019-08-01-preview/peering.json ``` From d3bc9fdb67fa62e87f240accd0f0d21336393407 Mon Sep 17 00:00:00 2001 From: Akshata Patil Date: Thu, 22 Aug 2019 17:40:19 -0700 Subject: [PATCH 006/123] [Ready To Merge] SSH and Quota changes (#6432) * Version change * Adding properties for SSH Improvements * Correcting naming mistake * Removing null value * Making the property writable by requester --- .../2019-06-01/examples/ListUsages.json | 400 +++ .../examples/ListVMSizesResult.json | 455 ++++ .../examples/amlComputeListNodes.json | 34 + .../examples/createBasicAKSCompute.json | 44 + .../examples/createBasicAmlCompute.json | 54 + .../createBasicDataFactoryCompute.json | 44 + .../2019-06-01/examples/createWorkspace.json | 57 + .../2019-06-01/examples/deleteCompute.json | 19 + .../2019-06-01/examples/deleteWorkspace.json | 12 + .../2019-06-01/examples/getAKSCompute.json | 25 + .../2019-06-01/examples/getAmlCompute.json | 49 + .../2019-06-01/examples/getComputes.json | 41 + .../2019-06-01/examples/getWorkspace.json | 28 + .../getWorkspacesByResourceGroup.json | 48 + .../examples/getWorkspacesBySubscription.json | 47 + .../examples/listKeysAKSCompute.json | 19 + .../examples/listWorkspaceKeys.json | 32 + .../2019-06-01/examples/patchAmlCompute.json | 36 + .../examples/resyncWorkspaceKeys.json | 13 + .../2019-06-01/examples/updateAKSCompute.json | 54 + .../2019-06-01/examples/updateAmlCompute.json | 57 + .../2019-06-01/examples/updateWorkspace.json | 34 + .../2019-06-01/machineLearningServices.json | 2243 +++++++++++++++++ .../resource-manager/readme.go.md | 9 + .../resource-manager/readme.md | 25 +- 25 files changed, 3878 insertions(+), 1 deletion(-) create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListUsages.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/amlComputeListNodes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListUsages.json new file mode 100644 index 000000000000..d8d3fbe121f8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..a5220ca132a4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2018-11-19", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..8827193d719b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..799f19ac6445 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..693af1ff916e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..8ad43252cf32 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json new file mode 100644 index 000000000000..7fc089f45caa --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus2euap", + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json new file mode 100644 index 000000000000..4a104cb349a9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json new file mode 100644 index 000000000000..32e4c4ffced7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json new file mode 100644 index 000000000000..6142d7fe7046 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json new file mode 100644 index 000000000000..0a1a1dfc0804 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json new file mode 100644 index 000000000000..70bec7755799 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json new file mode 100644 index 000000000000..504a39d20969 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..84570213ba43 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..3492b5dec409 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..b8a8db9c59b9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..1b64f144f0d2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": + { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json new file mode 100644 index 000000000000..352cd4b55fe3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..b3b7c6673925 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json new file mode 100644 index 000000000000..efc863d942b9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json new file mode 100644 index 000000000000..6c90cdb0b711 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json new file mode 100644 index 000000000000..20211174f302 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json new file mode 100644 index 000000000000..c0c992a7cbd8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json @@ -0,0 +1,2243 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2019-06-01" + }, + "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.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { "$ref": "./examples/getWorkspace.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-examples": { + "Create Workspace": { "$ref": "./examples/createWorkspace.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { "$ref": "./examples/deleteWorkspace.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { "$ref": "./examples/updateWorkspace.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { "$ref": "./examples/getWorkspacesByResourceGroup.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { "$ref": "./examples/listWorkspaceKeys.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { "$ref": "./examples/resyncWorkspaceKeys.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { "$ref": "./examples/getWorkspacesBySubscription.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { "$ref": "./examples/getComputes.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { "$ref": "./examples/getAKSCompute.json" }, + "Get a AML Compute": { "$ref": "./examples/getAmlCompute.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { "$ref": "./examples/createBasicAmlCompute.json" }, + "Create AKS Compute": { "$ref": "./examples/createBasicAKSCompute.json" }, + "Create a DataFactory Compute": { "$ref": "./examples/createBasicDataFactoryCompute.json" }, + "Update a AML Compute": { "$ref": "./examples/updateAmlCompute.json" }, + "Update a AKS Compute": { "$ref": "./examples/updateAKSCompute.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { "$ref": "./examples/patchAmlCompute.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { "$ref": "./examples/deleteCompute.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { "$ref": "./examples/listKeysAKSCompute.json" } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" +} + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type":"object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "readOnly": true, + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties":{ + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + } + } +} \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/readme.go.md b/specification/machinelearningservices/resource-manager/readme.go.md index 83595d1a65eb..928b47efefaa 100644 --- a/specification/machinelearningservices/resource-manager/readme.go.md +++ b/specification/machinelearningservices/resource-manager/readme.go.md @@ -13,10 +13,19 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 - tag: package-2018-03-preview ``` +## Tag: package-2019-06-01 and go + +These settings apply only when `--tag=package-2019-06-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2019-06-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-06-01/$(namespace) +``` ### Tag: package-2019-05-01 and go diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index 2b0d4d220ae7..f5eafe362907 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -24,7 +24,16 @@ These are the global settings for the Machine Learning Services API. ``` yaml openapi-type: arm -tag: package-2019-05-01 +tag: package-2019-06-01 +``` + +### Tag: package-2019-06-01 + +These settings apply only when `--tag=package-2019-06-01` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06-01' +input-file: +- Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json ``` ### Tag: package-2019-05-01 @@ -110,11 +119,25 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-machinelearning/ser ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 - tag: package-2018-03-preview ``` +### Tag: package-2019-06-01 and java + +These settings apply only when `--tag=package-2019-05-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-06-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/machinelearningservices/resource-manager/v2019_06_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-05-01 and java These settings apply only when `--tag=package-2019-05-01 --java` is specified on the command line. From 57686684be2f71c40d78f0c43a0cf4d2209b40ab Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 23 Aug 2019 00:41:48 +0000 Subject: [PATCH 007/123] regenerated all-api-versions --- specification/machinelearningservices/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index f5eafe362907..60c8d2a6d9c6 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -189,6 +189,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json From 6eb85511d99a337363e164c753f388b4cfbfaaba Mon Sep 17 00:00:00 2001 From: Ankur Khemani Date: Thu, 22 Aug 2019 19:00:39 -0700 Subject: [PATCH 008/123] [ACR] Update policy schema with default values. (#7006) --- .../stable/2019-05-01/containerregistry.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json index 6224c550f040..12d60e46ee19 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json @@ -1264,7 +1264,7 @@ } }, "OperationServiceSpecificationDefinition": { - "description": "The definition of Azure Monitoring metrics list.", + "description": "The definition of Azure Monitoring list.", "type": "object", "properties": { "metricSpecifications": { @@ -1570,6 +1570,7 @@ "properties": { "status": { "description": "The value that indicates whether the policy is enabled or not.", + "default": "disabled", "enum": [ "enabled", "disabled" @@ -1588,6 +1589,7 @@ "properties": { "type": { "description": "The type of trust policy.", + "default": "Notary", "enum": [ "Notary" ], @@ -1599,6 +1601,7 @@ }, "status": { "description": "The value that indicates whether the policy is enabled or not.", + "default": "disabled", "enum": [ "enabled", "disabled" @@ -1617,7 +1620,8 @@ "properties": { "days": { "format": "int32", - "description": "The number of days to retain manifest before it expires.", + "description": "The number of days to retain an untagged manifest after which it gets purged.", + "default": 7, "type": "integer" }, "lastUpdatedTime": { @@ -1628,6 +1632,7 @@ }, "status": { "description": "The value that indicates whether the policy is enabled or not.", + "default": "disabled", "enum": [ "enabled", "disabled" From 86796b0f17d82b046fddbc7cce463a159774f6d6 Mon Sep 17 00:00:00 2001 From: Joshua Pollock Date: Thu, 22 Aug 2019 19:01:09 -0700 Subject: [PATCH 009/123] updating an incorrect description for uploadsizebytes (#7025) --- .../Microsoft.Compute/stable/2019-03-01/disk.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/disk.json index eb4686849f5d..7e2d7ad352c5 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/disk.json @@ -1276,7 +1276,7 @@ "uploadSizeBytes": { "type": "integer", "format": "int64", - "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 1073741824 (1 GiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." } }, "required": [ From 8afd6663d145c938b80a9a9709aa2a9b101b3df2 Mon Sep 17 00:00:00 2001 From: Zhiqing Qiu Date: Fri, 23 Aug 2019 13:53:30 +0800 Subject: [PATCH 010/123] Fix the kusto config error in readme.typescript.md (#7029) --- specification/azure-kusto/resource-manager/readme.typescript.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/azure-kusto/resource-manager/readme.typescript.md b/specification/azure-kusto/resource-manager/readme.typescript.md index af36626baa6d..c2514c1f3b0f 100644 --- a/specification/azure-kusto/resource-manager/readme.typescript.md +++ b/specification/azure-kusto/resource-manager/readme.typescript.md @@ -7,6 +7,6 @@ Please also specify `--typescript-sdks-folder= Date: Sun, 25 Aug 2019 06:11:45 -0700 Subject: [PATCH 011/123] [Hub Generated] Review request for Microsoft.Capacity to add version preview/2019-04-01 (#6995) * update swagger * update * update * update * update * update * update * update --- .../examples/GetAvailableScope.json | 28 ++++++ .../preview/2019-04-01/reservations.json | 86 +++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json new file mode 100644 index 000000000000..ef87d0df991d --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json @@ -0,0 +1,28 @@ +{ +"parameters": { + "api-version": "2019-04-01", + "reservationOrderId": "276e7ae4-84d0-4da6-ab4b-d6b94f3557da", + "reservationId": "356e7ae4-84d0-4da6-ab4b-d6b94f3557da", + "body": { + "properties": { + "scopes": [ + "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "scopes": [ + { + "scope": "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9", + "valid": true + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json index cc1eb5632fdc..ad8f0a3cfd6f 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json @@ -27,6 +27,50 @@ } }, "paths": { + "/providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}/availableScopes": { + "post": { + "summary": "Get Available Scopes for `Reservation`.", + "description": "Get Available Scopes for `Reservation`.\n", + "operationId": "Reservation_AvailableScopes", + "x-ms-examples": { + "AvailableScopes": { + "$ref": "./examples/GetAvailableScope.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ReservationOrderIdParameter" + }, + { + "$ref": "#/parameters/ReservationIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ScopeParameter" + } + ], + "tags": [ + "Reservation, AvailableScopes" + ], + "responses": { + "200": { + "description": "List of `Subscription`s created after the filter.", + "schema": { + "$ref": "#/definitions/Properties" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/Error" + } + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/catalogs": { "get": { "summary": "Get the regions and skus that are available for RI purchase for the specified Azure subscription.", @@ -1393,6 +1437,36 @@ "format": "int32", "description": "Quantity of the SKUs that are part of the Reservation. Must be greater than zero." }, + "Properties" : { + "type" : "object", + "properties": { + "properties" :{ + "$ref": "#/definitions/SubscriptionScopeProperties" + } + } + }, + "SubscriptionScopeProperties":{ + "type": "object", + "properties": { + "scopes":{ + "type": "array", + "items": { + "$ref": "#/definitions/ScopeProperties" + } + } + } + }, + "ScopeProperties":{ + "type": "object", + "properties": { + "scope": { + "type": "string" + }, + "valid": { + "type": "boolean" + } + } + }, "ReservedResourceType": { "type": "string", "description": "The type of the resource that is being reserved.", @@ -1413,6 +1487,18 @@ } }, "parameters": { + "ScopeParameter": { + "name": "body", + "x-ms-parameter-location": "method", + "in": "body", + "required": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, "PurchaseParameter": { "name": "body", "x-ms-parameter-location": "method", From d439e7f62c9fae09135487aac4c61164d01319e3 Mon Sep 17 00:00:00 2001 From: sriramvu Date: Sun, 25 Aug 2019 18:55:19 -0700 Subject: [PATCH 012/123] [Hub Generated] Azure Site Recovery (ASR) - Azure Disk Encryption OnePass support changes. (#6742) --- .../stable/2018-07-10/service.json | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json index 59fedb4a7090..f2af3cb8f693 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json @@ -7892,6 +7892,16 @@ "description": "The fabric specific object Id of the virtual machine.", "type": "string" }, + "initialPrimaryFabricLocation": { + "description": "The initial primary fabric location.", + "type": "string", + "readOnly": true + }, + "initialRecoveryFabricLocation": { + "description": "The initial recovery fabric location.", + "type": "string", + "readOnly": true + }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" @@ -8043,6 +8053,20 @@ "recoveryAvailabilityZone": { "description": "The recovery availability zone.", "type": "string" + }, + "vmEncryptionType": { + "description": "The encryption type of the VM.", + "type": "string", + "readOnly": true, + "enum": [ + "NotEncrypted", + "OnePassEncrypted", + "TwoPassEncrypted" + ], + "x-ms-enum": { + "name": "VmEncryptionType", + "modelAsString": true + } } }, "x-ms-discriminator-value": "A2A" @@ -8255,6 +8279,10 @@ "recoveryTargetDiskAccountType": { "description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.", "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." } } }, @@ -8273,6 +8301,10 @@ "recoveryReplicaDiskAccountType": { "description": "The replica disk type before failover.", "type": "string" + }, + "diskEncryptionInfo": { + "$ref": "#/definitions/DiskEncryptionInfo", + "description": "The recovery disk encryption information (for one / single pass flows)." } } }, From ab5bd1eb3a4c73f79cf79933c8bbb2498fe1168e Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 25 Aug 2019 22:01:01 -0400 Subject: [PATCH 013/123] chore: jsonfmt cognitiveservices (#7039) --- .../data-plane/ComputerVision/stable/v2.1/ComputerVision.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json index 020ceaed04ab..4d842f16270a 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json +++ b/specification/cognitiveservices/data-plane/ComputerVision/stable/v2.1/ComputerVision.json @@ -1837,4 +1837,4 @@ } } } -} \ No newline at end of file +} From c412519fd72fc18056f7b31b8f9d73fe17984810 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 25 Aug 2019 22:01:43 -0400 Subject: [PATCH 014/123] chore: jsonfmt peering (#7038) --- .../examples/CheckServiceProviderAvailability.json | 2 +- .../2019-08-01-preview/examples/CreateDirectPeering.json | 2 +- .../2019-08-01-preview/examples/CreateExchangePeering.json | 2 +- .../preview/2019-08-01-preview/examples/CreatePeerAsn.json | 2 +- .../2019-08-01-preview/examples/CreatePeeringService.json | 2 +- .../2019-08-01-preview/examples/CreatePeeringServicePrefix.json | 2 +- .../preview/2019-08-01-preview/examples/DeletePeerAsn.json | 2 +- .../preview/2019-08-01-preview/examples/DeletePeering.json | 2 +- .../2019-08-01-preview/examples/DeletePeeringService.json | 2 +- .../2019-08-01-preview/examples/DeletePeeringServicePrefix.json | 2 +- .../preview/2019-08-01-preview/examples/GetPeerAsn.json | 2 +- .../preview/2019-08-01-preview/examples/GetPeering.json | 2 +- .../preview/2019-08-01-preview/examples/GetPeeringService.json | 2 +- .../2019-08-01-preview/examples/GetPeeringServicePrefix.json | 2 +- .../2019-08-01-preview/examples/ListDirectPeeringLocations.json | 2 +- .../examples/ListExchangePeeringLocations.json | 2 +- .../preview/2019-08-01-preview/examples/ListLegacyPeerings.json | 2 +- .../2019-08-01-preview/examples/ListPeerAsnsBySubscription.json | 2 +- .../2019-08-01-preview/examples/ListPeeringOperations.json | 2 +- .../examples/ListPeeringServiceLocations.json | 2 +- .../examples/ListPeeringServiceProviders.json | 2 +- .../examples/ListPeeringServicesByResourceGroup.json | 2 +- .../examples/ListPeeringServicesBySubscription.json | 2 +- .../examples/ListPeeringsByResourceGroup.json | 2 +- .../2019-08-01-preview/examples/ListPeeringsBySubscription.json | 2 +- .../examples/ListPrefixesByPeeringService.json | 2 +- .../2019-08-01-preview/examples/UpdatePeeringServiceTags.json | 2 +- .../preview/2019-08-01-preview/examples/UpdatePeeringTags.json | 2 +- 28 files changed, 28 insertions(+), 28 deletions(-) diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json index 9d3a78143846..b5e052cbbbe6 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CheckServiceProviderAvailability.json @@ -12,4 +12,4 @@ "body": "Available" } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json index dc1343d6b9b1..e75931def761 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateDirectPeering.json @@ -182,4 +182,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json index 41ab13709f30..50974b6866c3 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreateExchangePeering.json @@ -162,4 +162,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json index 0f76e402bc88..5c9621951a4c 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeerAsn.json @@ -63,4 +63,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json index 1a5907825acb..b2991accded4 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringService.json @@ -40,4 +40,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json index 87fbea0b1453..76ecfb51967a 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/CreatePeeringServicePrefix.json @@ -37,4 +37,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json index 544dd4915d16..e9502887c1b3 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeerAsn.json @@ -8,4 +8,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json index 91f513baeb9c..64dc9cb1a945 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeering.json @@ -9,4 +9,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json index 043e4101784d..e2ea15915086 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringService.json @@ -9,4 +9,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json index c2c85fecf1fe..a7376ce97846 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/DeletePeeringServicePrefix.json @@ -10,4 +10,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json index 4241b592c8e8..4a8daf7f1f64 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeerAsn.json @@ -27,4 +27,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json index a5c79ec3a1f4..4d50060a0eed 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeering.json @@ -65,4 +65,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json index 170384db3e25..ce6e3e752bad 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringService.json @@ -20,4 +20,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json index e8275765c6bf..35663140ad10 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/GetPeeringServicePrefix.json @@ -20,4 +20,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json index 236784a78767..4e88bfd0409b 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListDirectPeeringLocations.json @@ -78,4 +78,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json index 8f63bba1f3ab..b6c0136de067 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListExchangePeeringLocations.json @@ -70,4 +70,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json index 5d4be2649746..2b5ecd63fa84 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListLegacyPeerings.json @@ -69,4 +69,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json index eca982eba211..1a54b82e4dcc 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeerAsnsBySubscription.json @@ -30,4 +30,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json index 5f68a882092f..b3eb46435267 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringOperations.json @@ -180,4 +180,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json index cec86133087c..9d6c4248a8fb 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceLocations.json @@ -29,4 +29,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json index 141551486dca..fb9d926d46d1 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServiceProviders.json @@ -27,4 +27,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json index b2f7189c722a..acffd6cc3101 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesByResourceGroup.json @@ -23,4 +23,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json index b8ca7aeb959b..c9f7ad2a5b6c 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringServicesBySubscription.json @@ -22,4 +22,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json index d44b1c1ce4fc..55766fbf55b4 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsByResourceGroup.json @@ -68,4 +68,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json index 5111a0bdcba7..a8a0f56ddefd 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPeeringsBySubscription.json @@ -67,4 +67,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json index 898113a4b6da..cf97c8f1c152 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/ListPrefixesByPeeringService.json @@ -33,4 +33,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json index 91496424563a..c311039c176a 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringServiceTags.json @@ -30,4 +30,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json index 7f0c41ba1b65..cde8d956564f 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-08-01-preview/examples/UpdatePeeringTags.json @@ -75,4 +75,4 @@ } } } -} \ No newline at end of file +} From 7274cef705435bcfa97c8e795826040d0eb4ee5e Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 25 Aug 2019 22:02:59 -0400 Subject: [PATCH 015/123] chore: jsonfmt machinelearningservices (#7037) --- .../examples/ListVMSizesResult.json | 2 +- .../examples/createBasicAKSCompute.json | 76 ++++++------- .../examples/createBasicAmlCompute.json | 96 ++++++++--------- .../createBasicDataFactoryCompute.json | 76 ++++++------- .../2019-06-01/examples/createWorkspace.json | 102 +++++++++--------- .../2019-06-01/examples/deleteCompute.json | 34 +++--- .../2019-06-01/examples/deleteWorkspace.json | 22 ++-- .../2019-06-01/examples/getAKSCompute.json | 44 ++++---- .../2019-06-01/examples/getAmlCompute.json | 90 ++++++++-------- .../2019-06-01/examples/getComputes.json | 76 ++++++------- .../2019-06-01/examples/getWorkspace.json | 50 ++++----- .../getWorkspacesByResourceGroup.json | 90 ++++++++-------- .../examples/getWorkspacesBySubscription.json | 88 +++++++-------- .../examples/listKeysAKSCompute.json | 34 +++--- .../examples/listWorkspaceKeys.json | 53 +++++---- .../2019-06-01/examples/patchAmlCompute.json | 58 +++++----- .../examples/resyncWorkspaceKeys.json | 22 ++-- .../2019-06-01/examples/updateAKSCompute.json | 96 ++++++++--------- .../2019-06-01/examples/updateAmlCompute.json | 100 ++++++++--------- .../2019-06-01/examples/updateWorkspace.json | 60 +++++------ .../2019-06-01/machineLearningServices.json | 92 +++++++++++----- 21 files changed, 698 insertions(+), 663 deletions(-) diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json index a5220ca132a4..cedabe460a02 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json @@ -452,4 +452,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json index 799f19ac6445..06801ab73b97 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAKSCompute.json @@ -1,44 +1,44 @@ { + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "location": "eastus", - "properties": { - "computeType": "AKS" - } + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" } + } }, - "responses": { - "200": { - "body": { - "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "AKS", - "provisioningState": "Creating" - } - } - }, - "201": { - "body": { - "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "AKS", - "provisioningState": "Creating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json index 693af1ff916e..399e7bfe1451 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicAmlCompute.json @@ -1,54 +1,54 @@ { + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "location": "eastus", - "properties": { - "computeType": "AmlCompute", - "properties": { - "vmSize": "STANDARD_NC6", - "vmPriority": "Dedicated", - "scaleSettings": { - "maxNodeCount": 1, - "minNodeCount": 0, - "nodeIdleTimeBeforeScaleDown": "PT5M" - }, - "remoteLoginPortPublicAccess": "NotSpecified" - } - } + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "AmlCompute", - "provisioningState": "Creating" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "AmlCompute", - "provisioningState": "Creating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json index 8ad43252cf32..7d3feaff19f6 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createBasicDataFactoryCompute.json @@ -1,44 +1,44 @@ { + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "location": "eastus", - "properties": { - "computeType": "DataFactory" - } + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" } + } }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "DataFactory", - "provisioningState": "Creating" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "computeType": "DataFactory", - "provisioningState": "Creating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json index 7fc089f45caa..79aec9534278 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json @@ -1,57 +1,57 @@ { + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "workspace-1234", - "workspaceName": "testworkspace", - "api-version": "2019-06-01", - "parameters": { - "location": "eastus2euap", - "properties": { - "friendlyName": "HelloName", - "description": "test description", - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount" - } + "location": "eastus2euap", + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" } + } }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - } + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" } } -} \ No newline at end of file + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json index 4a104cb349a9..446dcaf34d24 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteCompute.json @@ -1,19 +1,19 @@ { - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "underlyingResourceAction": "Delete" - }, - "responses": { - "200": {}, - "202": { - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", - "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." - } - } + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json index 32e4c4ffced7..7c045e6ba190 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/deleteWorkspace.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "workspace-1234", - "workspaceName": "testworkspace", - "api-version": "2019-06-01" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json index 6142d7fe7046..d653a52f7bd1 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAKSCompute.json @@ -1,25 +1,25 @@ { - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", - "computeType": "AKS", - "provisioningState": "Succeeded" - } - } + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" } + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json index 0a1a1dfc0804..2e4d00ec6740 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getAmlCompute.json @@ -1,49 +1,49 @@ { - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus2", - "properties": { - "description": "some compute", - "computeType": "AmlCompute", - "createdOn": "2017-09-26T22:28:08.327Z", - "provisioningState": "Succeeded", - "properties": { - "vmSize": "STANDARD_NC6", - "vmPriority": "Dedicated", - "subnet": "test-subnet-resource-id", - "scaleSettings": { - "maxNodeCount": 1, - "minNodeCount": 0, - "nodeIdleTimeBeforeScaleDown": "PT5M" - }, - "remoteLoginPortPublicAccess": "Enabled", - "allocationState": "Resizing", - "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", - "errors": null, - "currentNodeCount": 0, - "targetNodeCount": 1, - "nodeStateCounts": { - "preparingNodeCount": 0, - "runningNodeCount": 0, - "idleNodeCount": 0, - "unusableNodeCount": 0, - "leavingNodeCount": 0, - "preemptedNodeCount": 0 - } - } - } + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json index 70bec7755799..1e994c869ebe 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getComputes.json @@ -1,41 +1,41 @@ { - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", - "computeType": "AKS", - "provisioningState": "Succeeded" - } - }, - { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute1234", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", - "computeType": "AKS", - "provisioningState": "Succeeded" - } - } - ], - "nextLink": "nextLink" + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" } - } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json index 504a39d20969..f7c0ccdd6f1b 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspace.json @@ -1,28 +1,28 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "workspace-1234", - "workspaceName": "testworkspace", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - } + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" } } -} \ No newline at end of file + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json index 84570213ba43..7d9b3c65734b 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesByResourceGroup.json @@ -1,48 +1,48 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "workspace-1234", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", - "name": "testworkspace1", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName 1", - "description": "test description" - } - } - ], - "nextLink": "nextLink" + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" } - } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json index 3492b5dec409..3180aedbc830 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/getWorkspacesBySubscription.json @@ -1,47 +1,47 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "HelloName", - "description": "test description" - } - } - ], - "nextLink": "nextLink" + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" } - } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json index b8a8db9c59b9..3675bf0dcd45 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listKeysAKSCompute.json @@ -1,19 +1,19 @@ { - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": { - "computeType": "AKS", - "userKubeConfig": "user kube config...", - "adminKubeConfig": "admin kube config...", - "imagePullSecretName": "the image pull secret name" - } - } + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json index 1b64f144f0d2..2e08fa2d657f 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/listWorkspaceKeys.json @@ -1,32 +1,31 @@ { - "parameters": { - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - "body": + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ { - "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", - "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", - "appInsightsInstrumentationKey": null, - "containerRegistryCredentials": { - "location": null, - "username": "testdemoworkjmjmeykp", - "passwords": [ - { - "name": "password", - "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" - }, - { - "name": "password2", - "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" - } - ] - } + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json index 352cd4b55fe3..d374e4f27709 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/patchAmlCompute.json @@ -1,36 +1,36 @@ { "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "properties": { - "scaleSettings": { - "maxNodeCount": 4, - "minNodeCount": 4, - "nodeIdleTimeBeforeScaleDown": "PT5M" - } - } + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } } + } }, "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus2", - "properties": { - "description": "some compute", - "computeType": "AmlCompute", - "provisioningState": "Updating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." } + } } -} \ No newline at end of file +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json index b3b7c6673925..9f324f33c347 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/resyncWorkspaceKeys.json @@ -1,13 +1,11 @@ { - "parameters": { - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "api-version": "2019-06-01" - }, - "responses": { - "200": { - - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2019-06-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json index efc863d942b9..06d4d48cc9d0 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAKSCompute.json @@ -1,54 +1,54 @@ { + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "id": "compute123", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", - "computeType": "AKS", - "properties": { - "agentCount": 4 - } - } + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", - "computeType": "AKS", - "provisioningState": "Updating" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus", - "properties": { - "description": "some compute", - "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", - "computeType": "AKS", - "provisioningState": "Updating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json index 6c90cdb0b711..e382eaaf4291 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateAmlCompute.json @@ -1,57 +1,57 @@ { + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "computeName": "compute123", - "api-version": "2019-06-01", - "parameters": { - "location": "eastus", - "properties": { - "computeType": "AmlCompute", - "properties": { - "description": "some compute", - "computeType": "AmlCompute", - "properties": { - "scaleSettings": { - "maxNodeCount": 4, - "minNodeCount": 4, - "nodeIdleTimeBeforeScaleDown": "PT5M" - } - } - } + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" } + } } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus2", - "properties": { - "description": "some compute", - "computeType": "AmlCompute", - "provisioningState": "Updating" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", - "type": "Microsoft.MachineLearningServices/workspaces/computes", - "name": "compute123", - "location": "eastus2", - "properties": { - "description": "some compute", - "computeType": "AmlCompute", - "provisioningState": "Updating" - } - }, - "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." - } + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } } -} \ No newline at end of file + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json index 20211174f302..75473d19db4f 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateWorkspace.json @@ -1,34 +1,34 @@ { + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2019-06-01", "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "workspace-1234", - "workspaceName": "testworkspace", - "api-version": "2019-06-01", - "parameters": { - "properties": { - "friendlyName": "New friendly name", - "description": "new description" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", - "name": "testworkspace", - "type": "Microsoft.MachineLearningServices/workspaces", - "location": "eastus2euap", - "properties": { - "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", - "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", - "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", - "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", - "discoveryUrl": "http://example.com", - "creationTime": "2017-03-01T23:14:37.0707808Z", - "friendlyName": "New friendly name", - "description": "new description" - } - } + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" } } -} \ No newline at end of file + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json index c0c992a7cbd8..203fc21a013c 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json @@ -73,7 +73,9 @@ "description": "Gets the properties of the specified machine learning workspace.", "operationId": "Workspaces_Get", "x-ms-examples": { - "Get Workspace": { "$ref": "./examples/getWorkspace.json" } + "Get Workspace": { + "$ref": "./examples/getWorkspace.json" + } }, "parameters": [ { @@ -111,7 +113,9 @@ "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", "x-ms-examples": { - "Create Workspace": { "$ref": "./examples/createWorkspace.json" } + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } }, "parameters": [ { @@ -164,7 +168,9 @@ "description": "Deletes a machine learning workspace.", "operationId": "Workspaces_Delete", "x-ms-examples": { - "Delete Workspace": { "$ref": "./examples/deleteWorkspace.json" } + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.json" + } }, "parameters": [ { @@ -202,7 +208,9 @@ "description": "Updates a machine learning workspace with the specified parameters.", "operationId": "Workspaces_Update", "x-ms-examples": { - "Update Workspace": { "$ref": "./examples/updateWorkspace.json" } + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } }, "parameters": [ { @@ -251,7 +259,9 @@ "description": "Lists all the available machine learning workspaces under the specified resource group.", "operationId": "Workspaces_ListByResourceGroup", "x-ms-examples": { - "Get Workspaces by Resource Group": { "$ref": "./examples/getWorkspacesByResourceGroup.json" } + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } }, "parameters": [ { @@ -294,7 +304,9 @@ "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", "operationId": "Workspaces_ListKeys", "x-ms-examples": { - "List Workspace Keys": { "$ref": "./examples/listWorkspaceKeys.json" } + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.json" + } }, "parameters": [ { @@ -334,7 +346,9 @@ "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", "operationId": "Workspaces_ResyncKeys", "x-ms-examples": { - "Resync Workspace Keys": { "$ref": "./examples/resyncWorkspaceKeys.json" } + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.json" + } }, "parameters": [ { @@ -450,7 +464,9 @@ "description": "Lists all the available machine learning workspaces under the specified subscription.", "operationId": "Workspaces_ListBySubscription", "x-ms-examples": { - "Get Workspaces by subscription": { "$ref": "./examples/getWorkspacesBySubscription.json" } + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } }, "parameters": [ { @@ -494,7 +510,9 @@ "operationId": "MachineLearningCompute_ListByWorkspace", "description": "Gets computes in specified workspace.", "x-ms-examples": { - "Get Computes": { "$ref": "./examples/getComputes.json" } + "Get Computes": { + "$ref": "./examples/getComputes.json" + } }, "parameters": [ { @@ -538,8 +556,12 @@ "operationId": "MachineLearningCompute_Get", "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", "x-ms-examples": { - "Get a AKS Compute": { "$ref": "./examples/getAKSCompute.json" }, - "Get a AML Compute": { "$ref": "./examples/getAmlCompute.json" } + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + } }, "parameters": [ { @@ -582,11 +604,21 @@ "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", "x-ms-long-running-operation": true, "x-ms-examples": { - "Create a AML Compute": { "$ref": "./examples/createBasicAmlCompute.json" }, - "Create AKS Compute": { "$ref": "./examples/createBasicAKSCompute.json" }, - "Create a DataFactory Compute": { "$ref": "./examples/createBasicDataFactoryCompute.json" }, - "Update a AML Compute": { "$ref": "./examples/updateAmlCompute.json" }, - "Update a AKS Compute": { "$ref": "./examples/updateAKSCompute.json" } + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } }, "parameters": [ { @@ -644,7 +676,9 @@ "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", "x-ms-long-running-operation": true, "x-ms-examples": { - "Update a AmlCompute Compute": { "$ref": "./examples/patchAmlCompute.json" } + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } }, "parameters": [ { @@ -696,7 +730,9 @@ "description": "Deletes specified Machine Learning compute.", "x-ms-long-running-operation": true, "x-ms-examples": { - "Delete Compute": { "$ref": "./examples/deleteCompute.json" } + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } }, "parameters": [ { @@ -798,7 +834,9 @@ "operationId": "MachineLearningCompute_ListKeys", "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", "x-ms-examples": { - "List AKS Compute Keys": { "$ref": "./examples/listKeysAKSCompute.json" } + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } }, "parameters": [ { @@ -930,7 +968,7 @@ "modelAsString": true }, "x-ms-parameter-location": "method" -} + } }, "definitions": { "Operation": { @@ -1101,7 +1139,7 @@ "description": "The Usage Names." }, "Usage": { - "type":"object", + "type": "object", "properties": { "id": { "readOnly": true, @@ -1410,7 +1448,7 @@ }, { "type": "object", - "properties":{ + "properties": { "properties": { "description": "Compute properties", "$ref": "#/definitions/Compute" @@ -1576,9 +1614,9 @@ "$ref": "#/definitions/UserAccountCredentials" }, "subnet": { - "title": "Subnet.", - "description": "Virtual network subnet resource ID the compute nodes belong to.", - "$ref": "#/definitions/ResourceId" + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" }, "remoteLoginPortPublicAccess": { "type": "string", @@ -1622,7 +1660,7 @@ "description": "Collection of errors encountered by various compute nodes during node setup.", "type": "array", "items": { - "$ref": "#/definitions/MachineLearningServiceError" + "$ref": "#/definitions/MachineLearningServiceError" } }, "currentNodeCount": { @@ -2240,4 +2278,4 @@ ] } } -} \ No newline at end of file +} From 4de9447cad29442731152ed71ac5e860e317ed78 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 25 Aug 2019 22:03:27 -0400 Subject: [PATCH 016/123] chore: jsonfmt azuredata (#7018) --- .../preview/2017-03-01-preview/azuredata.json | 2 +- .../examples/CreateOrUpdateSqlServerRegistration.json | 9 +++------ .../examples/DeleteSqlServerRegistration.json | 2 +- .../2017-03-01-preview/examples/GetSqlServer.json | 3 +-- .../examples/GetSqlServerRegistration.json | 3 +-- .../examples/ListByResourceGroupSqlServer.json | 2 +- .../ListByResourceGroupSqlServerRegistration.json | 6 ++---- .../examples/ListSubscriptionSqlServerRegistration.json | 6 ++---- .../examples/UpdateSqlServerRegistration.json | 3 +-- 9 files changed, 13 insertions(+), 23 deletions(-) diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json index 17a247101e52..d40c0e1441df 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json @@ -870,4 +870,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/CreateOrUpdateSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/CreateOrUpdateSqlServerRegistration.json index e32fcfcf8b77..2485c37077d6 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/CreateOrUpdateSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/CreateOrUpdateSqlServerRegistration.json @@ -9,15 +9,13 @@ "tags": { "mytag": "myval" }, - "properties": { - } + "properties": {} } }, "responses": { "200": { "body": { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" @@ -29,8 +27,7 @@ }, "201": { "body": { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/DeleteSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/DeleteSqlServerRegistration.json index f02ec7b7c364..d9f78a60c543 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/DeleteSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/DeleteSqlServerRegistration.json @@ -9,4 +9,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServer.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServer.json index 8a8fb708969b..c526ce4676c8 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServer.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServer.json @@ -5,8 +5,7 @@ "sqlServerRegistrationName": "testsqlregistration", "sqlServerName": "testsqlserver", "api-version": "2017-03-01-preview", - "parameters": { - } + "parameters": {} }, "responses": { "200": { diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServerRegistration.json index a8d423d4bd79..ad3093500f78 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/GetSqlServerRegistration.json @@ -8,8 +8,7 @@ "responses": { "200": { "body": { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServer.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServer.json index 5d7b4d5643f8..39adcea208a0 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServer.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServer.json @@ -37,4 +37,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServerRegistration.json index 36cf73198939..5e54058508d7 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListByResourceGroupSqlServerRegistration.json @@ -9,8 +9,7 @@ "body": { "value": [ { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" @@ -20,8 +19,7 @@ "type": "Microsoft.AzureData/SqlServerRegistrations" }, { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListSubscriptionSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListSubscriptionSqlServerRegistration.json index bcd3a7643406..2543a064281a 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListSubscriptionSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/ListSubscriptionSqlServerRegistration.json @@ -8,8 +8,7 @@ "body": { "value": [ { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" @@ -19,8 +18,7 @@ "type": "Microsoft.AzureData/SqlServerRegistrations" }, { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/UpdateSqlServerRegistration.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/UpdateSqlServerRegistration.json index ea705df46dd8..90ebe96fab48 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/UpdateSqlServerRegistration.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2017-03-01-preview/examples/UpdateSqlServerRegistration.json @@ -13,8 +13,7 @@ "responses": { "200": { "body": { - "properties": { - }, + "properties": {}, "location": "northeurope", "tags": { "mytag": "myval" From 03c1b94047b57ae0d6a1ebeacaa91357c1ab23ca Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 25 Aug 2019 22:06:20 -0400 Subject: [PATCH 017/123] chore: jsonfmt azure-kusto (#7017) --- .../examples/KustoClustersListSkus.json | 44 +- .../KustoDataConnectionValidation.json | 17 +- ...oDataConnectionsCheckNameAvailability.json | 2 +- .../KustoDataConnectionsCreateOrUpdate.json | 4 +- .../examples/KustoDataConnectionsUpdate.json | 4 +- .../KustoDatabasesCheckNameAvailability.json | 2 +- .../KustoDatabasesCreateOrUpdate.json | 4 +- .../examples/KustoDatabasesUpdate.json | 4 +- .../stable/2019-05-15/kusto.json | 2078 +++++++++-------- 9 files changed, 1096 insertions(+), 1063 deletions(-) diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoClustersListSkus.json index 88fa7d90119f..f018b53cf7d4 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoClustersListSkus.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoClustersListSkus.json @@ -11,11 +11,18 @@ { "name": "Standard_D13_v2", "tier": "Standard", - "locations": [ "West US", "West Europe" ], + "locations": [ + "West US", + "West Europe" + ], "locationInfo": [ { "location": "West US", - "zones": [ "1", "2", "3" ] + "zones": [ + "1", + "2", + "3" + ] }, { "location": "West Europe", @@ -26,11 +33,18 @@ { "name": "Standard_D14_v2", "tier": "Standard", - "locations": [ "West US", "West Europe" ], + "locations": [ + "West US", + "West Europe" + ], "locationInfo": [ { "location": "West US", - "zones": [ "1", "2", "3" ] + "zones": [ + "1", + "2", + "3" + ] }, { "location": "West Europe", @@ -41,11 +55,18 @@ { "name": "L8", "tier": "Standard", - "locations": [ "West US", "West Europe" ], + "locations": [ + "West US", + "West Europe" + ], "locationInfo": [ { "location": "West US", - "zones": [ "1", "2", "3" ] + "zones": [ + "1", + "2", + "3" + ] }, { "location": "West Europe", @@ -56,11 +77,18 @@ { "name": "L16", "tier": "Standard", - "locations": [ "West US", "West Europe" ], + "locations": [ + "West US", + "West Europe" + ], "locationInfo": [ { "location": "West US", - "zones": [ "1", "2", "3" ] + "zones": [ + "1", + "2", + "3" + ] }, { "location": "West Europe", diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionValidation.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionValidation.json index 7a1278712180..89d28698d4ca 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionValidation.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionValidation.json @@ -14,15 +14,14 @@ }, "responses": { "200": { - "body": - [ - { - "errorMessage": "event hub namespace does not exist" - }, - { - "errorMessage": "database does not exist" - } - ] + "body": [ + { + "errorMessage": "event hub namespace does not exist" + }, + { + "errorMessage": "database does not exist" + } + ] } } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCheckNameAvailability.json index 787b5c7f8c6d..d0edacb829d0 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCheckNameAvailability.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCheckNameAvailability.json @@ -16,7 +16,7 @@ "name": "DataConnections8", "nameAvailable": false, "message": "Name 'DataConnections8' is already taken. Please specify a different name.", - "reason": "AlreadyExists" + "reason": "AlreadyExists" } } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCreateOrUpdate.json index 0fbbdc1ac4e5..b31b5c63d2a2 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCreateOrUpdate.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsCreateOrUpdate.json @@ -30,7 +30,7 @@ } }, "201": { - "body": { + "body": { "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", "type": "Microsoft.Kusto/clusters/databases/dataConnections", @@ -41,7 +41,7 @@ "consumerGroup": "testConsumerGroup1" } } - }, + }, "202": {} } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsUpdate.json index 0fbbdc1ac4e5..b31b5c63d2a2 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsUpdate.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDataConnectionsUpdate.json @@ -30,7 +30,7 @@ } }, "201": { - "body": { + "body": { "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", "type": "Microsoft.Kusto/clusters/databases/dataConnections", @@ -41,7 +41,7 @@ "consumerGroup": "testConsumerGroup1" } } - }, + }, "202": {} } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCheckNameAvailability.json index 4e0ecbb42fd2..d3f9ff4fbc4d 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCheckNameAvailability.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCheckNameAvailability.json @@ -18,4 +18,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCreateOrUpdate.json index 070dae0d45dd..7b4b07f416fa 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCreateOrUpdate.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesCreateOrUpdate.json @@ -26,7 +26,7 @@ } }, "201": { - "body": { + "body": { "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", "name": "KustoClusterRPTest4/KustoDatabase8", "type": "Microsoft.Kusto/clusters/databases", @@ -36,7 +36,7 @@ "provisioningState": "Succeeded" } } - }, + }, "202": {} } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesUpdate.json index 070dae0d45dd..7b4b07f416fa 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesUpdate.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/examples/KustoDatabasesUpdate.json @@ -26,7 +26,7 @@ } }, "201": { - "body": { + "body": { "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", "name": "KustoClusterRPTest4/KustoDatabase8", "type": "Microsoft.Kusto/clusters/databases", @@ -36,7 +36,7 @@ "provisioningState": "Succeeded" } } - }, + }, "202": {} } } diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json index bfb5bfc4a2d2..c434f1c489ae 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json @@ -400,7 +400,9 @@ "responses": { "200": { "description": "OK.", - "schema": { "$ref": "#/definitions/SkuDescriptionList" } + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -546,7 +548,9 @@ "responses": { "200": { "description": "OK.", - "schema": { "$ref": "#/definitions/ListResourceSkusResult" } + "schema": { + "$ref": "#/definitions/ListResourceSkusResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1392,1058 +1396,1060 @@ } } }, - "definitions": { - "ClusterProperties": { - "properties": { - "state": { - "type": "string", - "readOnly": true, - "description": "The state of the resource.", - "enum": [ - "Creating", - "Unavailable", - "Running", - "Deleting", - "Deleted", - "Stopping", - "Stopped", - "Starting", - "Updating" - ], - "x-ms-enum": { - "name": "State", - "modelAsString": true - } - }, - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "The provisioned state of the resource.", - "enum": [ - "Running", - "Creating", - "Deleting", - "Succeeded", - "Failed", - "Moving" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "uri": { - "type": "string", - "readOnly": true, - "description": "The cluster URI." - }, - "dataIngestionUri": { - "type": "string", - "readOnly": true, - "description": "The cluster data ingestion URI." - }, - "trustedExternalTenants": { - "type": "array", - "items": { - "$ref": "#/definitions/TrustedExternalTenant" - }, - "description": "The cluster's external tenants." - }, - "optimizedAutoscale": { - "type": "object", - "$ref": "#/definitions/OptimizedAutoscale", - "description": "Optimized auto scale definition." - }, - "enableDiskEncryption": { - "description": "A boolean value that indicates if the cluster's disks are encrypted.", - "type": "boolean" - }, - "enableStreamingIngest": { - "description": "A boolean value that indicates if the streaming ingest is enabled.", - "default": false, - "type": "boolean" - }, - "virtualNetworkConfiguration": { - "type": "object", - "$ref": "#/definitions/VirtualNetworkConfiguration", - "description": "Virtual network definition." - } - }, - "description": "Class representing the Kusto cluster properties." - }, - "TrustedExternalTenant": { - "properties": { - "value": { - "type": "string", - "description": "GUID representing an external tenant." - } - }, - "description": "Represents a tenant ID that is trusted by the cluster." - }, - "AzureResourceSku": { - "properties": { - "resourceType": { - "type": "string", - "description": "Resource Namespace and Type." - }, - "sku": { - "$ref": "#/definitions/AzureSku", - "description": "The SKU details." - }, - "capacity": { - "$ref": "#/definitions/AzureCapacity", - "description": "The number of instances of the cluster." - } - }, - "description": "Azure resource SKU definition." - }, - "AzureCapacity": { - "type": "object", - "required": [ - "minimum", - "maximum", - "default", - "scaleType" - ], - "properties": { - "scaleType": { - "description": "Scale type.", - "type": "string", - "enum": [ - "automatic", - "manual", - "none" - ], - "x-ms-enum": { - "name": "AzureScaleType", - "modelAsString": true - } - }, - "minimum": { - "description": "Minimum allowed capacity.", - "type": "integer" - }, - "maximum": { - "description": "Maximum allowed capacity.", - "type": "integer" - }, - "default": { - "description": "The default capacity that would be used.", - "type": "integer" - } - }, - "description": "Azure capacity definition." - }, - "SkuDescriptionList": { - "description": "The list of the EngagementFabric SKU descriptions", - "type": "object", - "properties": { - "value": { - "description": "SKU descriptions", - "type": "array", - "items": { - "$ref": "#/definitions/SkuDescription" - }, - "readOnly": true - } - } + "definitions": { + "ClusterProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } }, - "SkuDescription": { - "description": "The Kusto SKU description of given resource type", - "type": "object", - "properties": { - "resourceType": { - "description": "The resource type", - "type": "string", - "readOnly": true - }, - "name": { - "description": "The name of the SKU", - "type": "string", - "readOnly": true - }, - "tier": { - "description": "The tier of the SKU", - "type": "string", - "readOnly": true - }, - "locations": { - "description": "The set of locations that the SKU is available", - "type": "array", - "items": { - "type": "string" - }, - "readOnly": true - }, - "locationInfo": { - "description": "Locations and zones", - "type": "array", - "items": { - "$ref": "#/definitions/SkuLocationInfoItem" - }, - "readOnly": true - }, - "restrictions": { - "description": "The restrictions because of which SKU cannot be used", - "type": "array", - "items": { - "type": "object" - }, - "readOnly": true - } - } + "uri": { + "type": "string", + "readOnly": true, + "description": "The cluster URI." }, - "SkuLocationInfoItem": { - "description": "The locations and zones info for SKU.", - "type": "object", - "required": [ - "location" - ], - "properties": { - "location": { - "description": "The available location of the SKU.", - "type": "string" - }, - "zones": { - "description": "The available zone of the SKU.", - "type": "array", - "items": { - "type": "string" - } - } - } + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The cluster data ingestion URI." }, - "AzureSku": { - "type": "object", - "required": [ - "name", - "tier" - ], - "properties": { - "name": { - "description": "SKU name.", - "type": "string", - "enum": [ - "Standard_DS13_v2+1TB_PS", - "Standard_DS13_v2+2TB_PS", - "Standard_DS14_v2+3TB_PS", - "Standard_DS14_v2+4TB_PS", - "Standard_D13_v2", - "Standard_D14_v2", - "Standard_L8s", - "Standard_L16s", - "Standard_D11_v2", - "Standard_D12_v2", - "Standard_L4s", - "Dev(No SLA)_Standard_D11_v2" - ], - "x-ms-enum": { - "name": "AzureSkuName", - "modelAsString": true - } - }, - "capacity": { - "description": "The number of instances of the cluster.", - "type": "integer" - }, - "tier": { - "description": "SKU tier.", - "type": "string", - "enum": [ - "Basic", - "Standard" - ], - "x-ms-enum": { - "name": "AzureSkuTier", - "modelAsString": true - } - } - }, - "description": "Azure SKU definition." + "trustedExternalTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/TrustedExternalTenant" + }, + "description": "The cluster's external tenants." + }, + "optimizedAutoscale": { + "type": "object", + "$ref": "#/definitions/OptimizedAutoscale", + "description": "Optimized auto scale definition." + }, + "enableDiskEncryption": { + "description": "A boolean value that indicates if the cluster's disks are encrypted.", + "type": "boolean" }, - "Zones": { - "description": "An array represents the availability zones of the cluster.", + "enableStreamingIngest": { + "description": "A boolean value that indicates if the streaming ingest is enabled.", + "default": false, + "type": "boolean" + }, + "virtualNetworkConfiguration": { + "type": "object", + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network definition." + } + }, + "description": "Class representing the Kusto cluster properties." + }, + "TrustedExternalTenant": { + "properties": { + "value": { + "type": "string", + "description": "GUID representing an external tenant." + } + }, + "description": "Represents a tenant ID that is trusted by the cluster." + }, + "AzureResourceSku": { + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU details." + }, + "capacity": { + "$ref": "#/definitions/AzureCapacity", + "description": "The number of instances of the cluster." + } + }, + "description": "Azure resource SKU definition." + }, + "AzureCapacity": { + "type": "object", + "required": [ + "minimum", + "maximum", + "default", + "scaleType" + ], + "properties": { + "scaleType": { + "description": "Scale type.", + "type": "string", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "AzureScaleType", + "modelAsString": true + } + }, + "minimum": { + "description": "Minimum allowed capacity.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed capacity.", + "type": "integer" + }, + "default": { + "description": "The default capacity that would be used.", + "type": "integer" + } + }, + "description": "Azure capacity definition." + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The Kusto SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The locations and zones info for SKU.", + "type": "object", + "required": [ + "location" + ], + "properties": { + "location": { + "description": "The available location of the SKU.", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU.", "type": "array", "items": { "type": "string" } + } + } + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } }, - "OptimizedAutoscale": { - "type": "object", - "required": [ - "version", - "isEnabled", - "minimum", - "maximum" - ], - "properties": { - "version": { - "description": "The version of the template defined, for instance 1.", - "type": "integer" - }, - "isEnabled": { - "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", - "type": "boolean" - }, - "minimum": { - "description": "Minimum allowed instances count.", - "type": "integer" - }, - "maximum": { - "description": "Maximum allowed instances count.", - "type": "integer" - } - }, - "description": "A class that contains the optimized auto scale definition." + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer" }, - "VirtualNetworkConfiguration": { - "type": "object", - "required": [ - "subnetId", - "enginePublicIpId", - "dataManagementPublicIpId" + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" ], - "properties": { - "subnetId": { - "description": "The subnet resource id.", - "type": "string" - }, - "enginePublicIpId": { - "description": "Engine service's public IP address resource id.", - "type": "string" - }, - "dataManagementPublicIpId": { - "description": "Data management's service public IP address resource id.", - "type": "string" - } + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "Zones": { + "description": "An array represents the availability zones of the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "OptimizedAutoscale": { + "type": "object", + "required": [ + "version", + "isEnabled", + "minimum", + "maximum" + ], + "properties": { + "version": { + "description": "The version of the template defined, for instance 1.", + "type": "integer" + }, + "isEnabled": { + "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", + "type": "boolean" + }, + "minimum": { + "description": "Minimum allowed instances count.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed instances count.", + "type": "integer" + } + }, + "description": "A class that contains the optimized auto scale definition." + }, + "VirtualNetworkConfiguration": { + "type": "object", + "required": [ + "subnetId", + "enginePublicIpId", + "dataManagementPublicIpId" + ], + "properties": { + "subnetId": { + "description": "The subnet resource id.", + "type": "string" + }, + "enginePublicIpId": { + "description": "Engine service's public IP address resource id.", + "type": "string" + }, + "dataManagementPublicIpId": { + "description": "Data management's service public IP address resource id.", + "type": "string" + } + }, + "description": "A class that contains virtual network definition." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "DatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + } + }, + "description": "Class representing the Kusto database properties." + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/DataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" }, - "description": "A class that contains virtual network definition." + "description": "System properties of the event hub" + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." }, - "DatabaseStatistics": { - "type": "object", - "readOnly": true, - "properties": { - "size": { - "type": "number", - "description": "The database size - the total size of compressed data and index in bytes." - } - }, - "description": "A class that contains database statistics information." - }, - "DatabaseProperties": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "The provisioned state of the resource.", - "enum": [ - "Running", - "Creating", - "Deleting", - "Succeeded", - "Failed", - "Moving" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "softDeletePeriod": { - "type": "string", - "format": "duration", - "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." - }, - "hotCachePeriod": { - "type": "string", - "format": "duration", - "description": "The time the data should be kept in cache for fast queries in TimeSpan." - }, - "statistics": { - "$ref": "#/definitions/DatabaseStatistics", - "description": "The statistics of the database." - } - }, - "description": "Class representing the Kusto database properties." - }, - "EventHubConnectionProperties": { - "properties": { - "eventHubResourceId": { - "type": "string", - "description": "The resource ID of the event hub to be used to create a data connection." - }, - "consumerGroup": { - "type": "string", - "description": "The event hub consumer group." - }, - "tableName": { - "type": "string", - "description": "The table where the data should be ingested. Optionally the table information can be added to each message." - }, - "mappingRuleName": { - "type": "string", - "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." - }, - "dataFormat": { - "$ref": "#/definitions/DataFormat", - "description": "The data format of the message. Optionally the data format can be added to each message." - }, - "eventSystemProperties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "System properties of the event hub" - } - }, - "required": [ - "eventHubResourceId", - "consumerGroup" - ], - "description": "Class representing the Kusto event hub connection properties." + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." }, - "IotHubConnectionProperties": { - "properties": { - "iotHubResourceId": { - "type": "string", - "description": "The resource ID of the Iot hub to be used to create a data connection." - }, - "consumerGroup": { - "type": "string", - "description": "The iot hub consumer group." - }, - "tableName": { - "type": "string", - "description": "The table where the data should be ingested. Optionally the table information can be added to each message." - }, - "mappingRuleName": { - "type": "string", - "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." - }, - "dataFormat": { - "$ref": "#/definitions/DataFormat", - "description": "The data format of the message. Optionally the data format can be added to each message." - }, - "eventSystemProperties": { - "type": "array", - "items": { - "type": "string" - }, - "description": "System properties of the iot hub" - }, - "sharedAccessPolicyName": { - "type": "string", - "description": "The name of the share access policy name" - } + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/DataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy name" + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto iot hub connection properties." + }, + "DataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO" + ], + "x-ms-enum": { + "name": "dataFormat", + "modelAsString": true + } + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/DataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup", + "tableName", + "dataFormat" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "Cluster": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "zones": { + "$ref": "#/definitions/Zones", + "description": "The availability zones of the cluster." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto cluster." + }, + "ClusterUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" }, - "required": [ - "iotHubResourceId", - "consumerGroup", - "sharedAccessPolicyName" + "x-ms-mutability": [ + "read", + "create", + "update" ], - "description": "Class representing the Kusto iot hub connection properties." - }, - "DataFormat": { - "description": "The data format of the message. Optionally the data format can be added to each message.", - "type": "string", - "enum": [ - "MULTIJSON", - "JSON", - "CSV", - "TSV", - "SCSV", - "SOHSV", - "PSV", - "TXT", - "RAW", - "SINGLEJSON", - "AVRO" - ], - "x-ms-enum": { - "name": "dataFormat", - "modelAsString": true - } + "description": "Resource tags." }, - "EventGridConnectionProperties": { - "properties": { - "storageAccountResourceId": { - "type": "string", - "description": "The resource ID of the storage account where the data resides." - }, - "eventHubResourceId": { - "type": "string", - "description": "The resource ID where the event grid is configured to send events." - }, - "consumerGroup": { - "type": "string", - "description": "The event hub consumer group." - }, - "tableName": { - "type": "string", - "description": "The table where the data should be ingested. Optionally the table information can be added to each message." - }, - "mappingRuleName": { - "type": "string", - "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." - }, - "dataFormat": { - "$ref": "#/definitions/DataFormat", - "description": "The data format of the message. Optionally the data format can be added to each message." - } - }, - "required": [ - "storageAccountResourceId", - "eventHubResourceId", - "consumerGroup", - "tableName", - "dataFormat" - ], - "description": "Class representing the Kusto event grid connection properties." - }, - "Cluster": { - "required": [ - "sku" - ], - "properties": { - "sku": { - "$ref": "#/definitions/AzureSku", - "description": "The SKU of the cluster." - }, - "zones": { - "$ref": "#/definitions/Zones", - "description": "The availability zones of the cluster." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ClusterProperties", - "description": "The cluster properties." - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" - } - ], - "description": "Class representing a Kusto cluster." - }, - "ClusterUpdate": { - "properties": { - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-ms-mutability": [ - "read", - "create", - "update" - ], - "description": "Resource tags." - }, - "location": { - "type": "string", - "description": "Resource location." - }, - "sku": { - "$ref": "#/definitions/AzureSku", - "description": "The SKU of the cluster." - }, - "properties": { - "x-ms-client-flatten": true, - "description": "The cluster properties.", - "$ref": "#/definitions/ClusterProperties" - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" - } - ], - "description": "Class representing an update to a Kusto cluster." - }, - "Database": { - "properties": { - "location": { - "type": "string", - "description": "Resource location." - }, - "properties": { - "x-ms-client-flatten": true, - "description": "The database properties.", - "$ref": "#/definitions/DatabaseProperties" - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" - } - ], - "description": "Class representing a Kusto database." - }, - "DatabaseUpdate": { - "properties": { - "location": { - "type": "string", - "description": "Resource location." - }, - "properties": { - "x-ms-client-flatten": true, - "description": "The properties of the updated database.", - "$ref": "#/definitions/DatabaseProperties" - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" - } - ], - "description": "Class representing an update to a Kusto database." - }, - "DatabasePrincipal": { - "type": "object", - "required": [ - "name", - "role", - "type" - ], - "properties": { - "role": { - "description": "Database principal role.", - "type": "string", - "enum": [ - "Admin", - "Ingestor", - "Monitor", - "User", - "UnrestrictedViewers", - "Viewer" - ], - "x-ms-enum": { - "name": "DatabasePrincipalRole", - "modelAsString": true - } - }, - "name": { - "description": "Database principal name.", - "type": "string" - }, - "type": { - "description": "Database principal type.", - "type": "string", - "enum": [ - "App", - "Group", - "User" - ], - "x-ms-enum": { - "name": "DatabasePrincipalType", - "modelAsString": true - } - }, - "fqn": { - "description": "Database principal fully qualified name.", - "type": "string" - }, - "email": { - "description": "Database principal email if exists.", - "type": "string" - }, - "appId": { - "description": "Application id - relevant only for application principal type.", - "type": "string" - }, - "tenantName": { - "type": "string", - "readOnly": true, - "description": "The tenant name of the principal" - } - }, - "description": "A class representing database principal entity." - }, - "ClusterListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Cluster" - }, - "description": "The list of Kusto clusters." - } - }, - "description": "The list Kusto clusters operation response." - }, - "DatabaseListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Database" - }, - "description": "The list of Kusto databases." - } - }, - "description": "The list Kusto databases operation response." - }, - "DatabasePrincipalListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabasePrincipal" - }, - "description": "The list of Kusto database principals." - } - }, - "description": "The list Kusto database principals operation response." - }, - "DataConnection": { - "required": [ - "kind" - ], - "properties": { - "location": { - "type": "string", - "description": "Resource location." - }, - "kind": { - "description": "Kind of the endpoint for the data connection", - "enum": [ - "EventHub", - "EventGrid", - "IotHub" - ], - "type": "string", - "x-ms-enum": { - "name": "Kind", - "modelAsString": true - } - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" - } - ], - "description": "Class representing an data connection.", - "discriminator": "kind" - }, - "DataConnectionValidationResult": { - "type": "object", - "properties": { - "errorMessage": { - "type": "string", - "description": "A message which indicates a problem in data connection validation." - } - }, - "description": "The result returned from a data connection validation request." - }, - "DatabasePrincipalListRequest": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabasePrincipal" - }, - "description": "The list of Kusto database principals." - } - }, - "description": "The list Kusto database principals operation request." - }, - "DataConnectionValidation": { - "properties": { - "dataConnectionName": { - "type": "string", - "description": "The name of the data connection." - }, - "properties": { - "$ref": "#/definitions/DataConnection", - "description": "The data connection properties to validate." - } - }, - "description": "Class representing an data connection validation." - }, - "EventHubDataConnection": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "The Event Hub data connection properties to validate.", - "$ref": "#/definitions/EventHubConnectionProperties" - } - }, - "allOf": [ - { - "$ref": "#/definitions/DataConnection" - } - ], - "description": "Class representing an event hub data connection.", - "x-ms-discriminator-value": "EventHub" - }, - "IotHubDataConnection": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "The Iot Hub data connection properties.", - "$ref": "#/definitions/IotHubConnectionProperties" - } + "location": { + "type": "string", + "description": "Resource location." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The cluster properties.", + "$ref": "#/definitions/ClusterProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto cluster." + }, + "Database": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/DatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database." + }, + "DatabaseUpdate": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the updated database.", + "$ref": "#/definitions/DatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto database." + }, + "DatabasePrincipal": { + "type": "object", + "required": [ + "name", + "role", + "type" + ], + "properties": { + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "name": { + "description": "Database principal name.", + "type": "string" + }, + "type": { + "description": "Database principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "DatabasePrincipalType", + "modelAsString": true + } + }, + "fqn": { + "description": "Database principal fully qualified name.", + "type": "string" + }, + "email": { + "description": "Database principal email if exists.", + "type": "string" + }, + "appId": { + "description": "Application id - relevant only for application principal type.", + "type": "string" + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + } + }, + "description": "A class representing database principal entity." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" }, - "allOf": [ - { - "$ref": "#/definitions/DataConnection" - } + "description": "The list of Kusto clusters." + } + }, + "description": "The list Kusto clusters operation response." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "DatabasePrincipalListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" ], - "description": "Class representing an iot hub data connection.", - "x-ms-discriminator-value": "IotHub" - }, - "EventGridDataConnection": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "The properties of the Event Grid data connection.", - "$ref": "#/definitions/EventGridConnectionProperties" - } - }, - "allOf": [ - { - "$ref": "#/definitions/DataConnection" - } - ], - "description": "Class representing an Event Grid data connection.", - "x-ms-discriminator-value": "EventGrid" - }, - "DataConnectionValidationListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DataConnectionValidationResult" - }, - "description": "The list of Kusto data connection validation errors." - } - }, - "description": "The list Kusto data connection validation result." - }, - "DataConnectionListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DataConnection" - }, - "description": "The list of Kusto data connections." - } - }, - "description": "The list Kusto data connections operation response." - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "#/definitions/CloudErrorBody", - "description": "An error response from Kusto." - } - }, - "description": "An error response from Kusto." - }, - "ClusterCheckNameRequest": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Cluster name." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.Kusto/clusters" - ], - "x-ms-enum": { - "name": "Type", - "modelAsString": false - }, - "description": "The type of resource, Microsoft.Kusto/clusters." - } + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an data connection.", + "discriminator": "kind" + }, + "DataConnectionValidationResult": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "A message which indicates a problem in data connection validation." + } + }, + "description": "The result returned from a data connection validation request." + }, + "DatabasePrincipalListRequest": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation request." + }, + "DataConnectionValidation": { + "properties": { + "dataConnectionName": { + "type": "string", + "description": "The name of the data connection." + }, + "properties": { + "$ref": "#/definitions/DataConnection", + "description": "The data connection properties to validate." + } + }, + "description": "Class representing an data connection validation." + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "DataConnectionValidationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnectionValidationResult" + }, + "description": "The list of Kusto data connection validation errors." + } + }, + "description": "The list Kusto data connection validation result." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from Kusto." + } + }, + "description": "An error response from Kusto." + }, + "ClusterCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Cluster name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a cluster check name availability request." + }, + "DatabaseCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Database name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a database check name availability request." + }, + "DataConnectionCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data Connection name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/dataConnections" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a data connections check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + }, + "ListResourceSkusResult": { + "description": "List of available SKUs for a Kusto Cluster.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureResourceSku" + }, + "description": "The collection of available SKUs for an existing resource." + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Kusto." + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" }, - "required": [ - "name", - "type" - ], - "description": "The result returned from a cluster check name availability request." - }, - "DatabaseCheckNameRequest": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Database name." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.Kusto/clusters/databases" - ], - "x-ms-enum": { - "name": "Type", - "modelAsString": false - }, - "description": "The type of resource, Microsoft.Kusto/clusters/databases." - } + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" }, - "required": [ - "name", - "type" - ], - "description": "The result returned from a database check name availability request." - }, - "DataConnectionCheckNameRequest": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Data Connection name." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.Kusto/clusters/databases/dataConnections" - ], - "x-ms-enum": { - "name": "Type", - "modelAsString": false - }, - "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." - } + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" }, - "required": [ - "name", - "type" - ], - "description": "The result returned from a data connections check name availability request." - }, - "CheckNameResult": { - "type": "object", - "properties": { - "nameAvailable": { - "type": "boolean", - "description": "Specifies a Boolean value that indicates if the name is available." - }, - "name": { - "type": "string", - "description": "The name that was checked." - }, - "message": { - "type": "string", - "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." - }, - "reason": { - "type": "string", - "enum": [ - "Invalid", - "AlreadyExists" - ], - "x-ms-enum": { - "name": "reason", - "modelAsString": true - }, - "description": "Message providing the reason why the given name is invalid." - } - }, - "description": "The result returned from a check name availability request." - }, - "ListResourceSkusResult": { - "description": "List of available SKUs for a Kusto Cluster.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { "$ref": "#/definitions/AzureResourceSku" }, - "description": "The collection of available SKUs for an existing resource." - } + "description": { + "title": "The friendly name of the operation.", + "type": "string" } + } }, - "CloudErrorBody": { - "x-ms-external": true, - "properties": { - "code": { - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." - }, - "message": { - "type": "string", - "description": "A message describing the error, intended to be suitable for displaying in a user interface." - }, - "target": { - "type": "string", - "description": "The target of the particular error. For example, the name of the property in error." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/CloudErrorBody" - }, - "description": "A list of additional details about the error." - } - }, - "description": "An error response from Kusto." - }, - "OperationListResult": { - "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - }, - "title": "The list of operations supported by the resource provider." - }, - "nextLink": { - "type": "string", - "title": "The URL to get the next set of operation list results if there are any." - } - } + "origin": { + "title": "The intended executor of the operation.", + "type": "string" }, - "Operation": { - "title": "A REST API operation", - "type": "object", - "properties": { - "name": { - "title": "The operation name.", - "description": "This is of the format {provider}/{resource}/{operation}.", - "type": "string" - }, - "display": { - "title": "The object that describes the operation.", - "properties": { - "provider": { - "title": "Friendly name of the resource provider.", - "type": "string" - }, - "operation": { - "title": "The operation type.", - "description": "For example: read, write, delete.", - "type": "string" - }, - "resource": { - "title": "The resource type on which the operation is performed.", - "type": "string" - }, - "description": { - "title": "The friendly name of the operation.", - "type": "string" - } - } - }, - "origin": { - "title": "The intended executor of the operation.", - "type": "string" - }, - "properties": { - "title": "Properties of the operation.", - "type": "object", - "x-ms-client-flatten": true - } - } + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true } - }, + } + } + }, "parameters": { "SubscriptionIdParameter": { "name": "subscriptionId", @@ -2494,13 +2500,13 @@ }, "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" - } + "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" + } } } -} \ No newline at end of file +} From fa916eea5c1d10dc818027784ad954463b9c0844 Mon Sep 17 00:00:00 2001 From: Arcturus Date: Mon, 26 Aug 2019 14:46:40 +0800 Subject: [PATCH 018/123] Add codegen config for kusto 2019-05-15 (#7019) --- .../azure-kusto/resource-manager/readme.go.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/specification/azure-kusto/resource-manager/readme.go.md b/specification/azure-kusto/resource-manager/readme.go.md index 6480b280f3ec..28230ef6c382 100644 --- a/specification/azure-kusto/resource-manager/readme.go.md +++ b/specification/azure-kusto/resource-manager/readme.go.md @@ -25,4 +25,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-05-15' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-05-15/$(namespace) +``` From 5b00bcfffea385ff2da0c5c249fa0cbc0b302b33 Mon Sep 17 00:00:00 2001 From: Minh Vu Date: Mon, 26 Aug 2019 08:42:12 +0100 Subject: [PATCH 019/123] Fix up inconsistent whitespace (#7022) --- .../hdinsight/resource-manager/readme.md | 76 +++--- specification/imds/data-plane/readme.md | 216 +++++++++--------- 2 files changed, 146 insertions(+), 146 deletions(-) diff --git a/specification/hdinsight/resource-manager/readme.md b/specification/hdinsight/resource-manager/readme.md index b87ad7bbd9d6..4143fc3773e7 100644 --- a/specification/hdinsight/resource-manager/readme.md +++ b/specification/hdinsight/resource-manager/readme.md @@ -33,45 +33,45 @@ tag: package-2018-06-preview ``` ## Suppression - ``` yaml - directive: - - suppress: DefinitionsPropertiesNamesCamelCase - reason: This would require a breaking change, and need to be consistent with the response from RP side. - from: Microsoft.HDInsight/preview/2015-03-01-preview/locations.json - where: - - $.definitions.CapabilitiesResult.properties.vmSize_filters - - $.definitions.RegionalQuotaCapability.properties.cores_available - - $.definitions.RegionalQuotaCapability.properties.cores_used - - $.definitions.RegionalQuotaCapability.properties.region_name - - $.definitions.QuotaCapability.properties.cores_used - - $.definitions.QuotaCapability.properties.max_cores_allowed - - $.definitions.VmSizeCompatibilityFilter.properties.ClusterVersions - - $.definitions.VmSizeCompatibilityFilter.properties.NodeTypes - - $.definitions.VmSizeCompatibilityFilter.properties.ClusterFlavors - - $.definitions.VmSizeCompatibilityFilter.properties.Regions - - $.definitions.VmSizeCompatibilityFilter.properties.FilterMode - ``` +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: This would require a breaking change, and need to be consistent with the response from RP side. + from: Microsoft.HDInsight/preview/2015-03-01-preview/locations.json + where: + - $.definitions.CapabilitiesResult.properties.vmSize_filters + - $.definitions.RegionalQuotaCapability.properties.cores_available + - $.definitions.RegionalQuotaCapability.properties.cores_used + - $.definitions.RegionalQuotaCapability.properties.region_name + - $.definitions.QuotaCapability.properties.cores_used + - $.definitions.QuotaCapability.properties.max_cores_allowed + - $.definitions.VmSizeCompatibilityFilter.properties.ClusterVersions + - $.definitions.VmSizeCompatibilityFilter.properties.NodeTypes + - $.definitions.VmSizeCompatibilityFilter.properties.ClusterFlavors + - $.definitions.VmSizeCompatibilityFilter.properties.Regions + - $.definitions.VmSizeCompatibilityFilter.properties.FilterMode +``` - ``` yaml - directive: - - suppress: DefinitionsPropertiesNamesCamelCase - reason: This would require a breaking change, and need to be consistent with the response from RP side. - from: Microsoft.HDInsight/stable/2018-06-01-preview/locations.json - where: - - $.definitions.CapabilitiesResult.properties.vmSize_filters - - $.definitions.RegionalQuotaCapability.properties.cores_available - - $.definitions.RegionalQuotaCapability.properties.cores_used - - $.definitions.RegionalQuotaCapability.properties.region_name - - $.definitions.QuotaCapability.properties.cores_used - - $.definitions.QuotaCapability.properties.max_cores_allowed - - $.definitions.VmSizeCompatibilityFilter.properties.ClusterVersions - - $.definitions.VmSizeCompatibilityFilter.properties.NodeTypes - - $.definitions.VmSizeCompatibilityFilter.properties.ClusterFlavors - - $.definitions.VmSizeCompatibilityFilter.properties.Regions - - $.definitions.VmSizeCompatibilityFilter.properties.FilterMode - ``` - - ``` yaml +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: This would require a breaking change, and need to be consistent with the response from RP side. + from: Microsoft.HDInsight/stable/2018-06-01-preview/locations.json + where: + - $.definitions.CapabilitiesResult.properties.vmSize_filters + - $.definitions.RegionalQuotaCapability.properties.cores_available + - $.definitions.RegionalQuotaCapability.properties.cores_used + - $.definitions.RegionalQuotaCapability.properties.region_name + - $.definitions.QuotaCapability.properties.cores_used + - $.definitions.QuotaCapability.properties.max_cores_allowed + - $.definitions.VmSizeCompatibilityFilter.properties.ClusterVersions + - $.definitions.VmSizeCompatibilityFilter.properties.NodeTypes + - $.definitions.VmSizeCompatibilityFilter.properties.ClusterFlavors + - $.definitions.VmSizeCompatibilityFilter.properties.Regions + - $.definitions.VmSizeCompatibilityFilter.properties.FilterMode +``` + +``` yaml directive: - suppress: R3016 # to suppress (DefinitionsPropertiesNamesCamelCase) from: cluster.json diff --git a/specification/imds/data-plane/readme.md b/specification/imds/data-plane/readme.md index 47787236f557..81050382a73b 100644 --- a/specification/imds/data-plane/readme.md +++ b/specification/imds/data-plane/readme.md @@ -91,114 +91,114 @@ input-file: ## Suppression - ``` yaml - directive: - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json - - - suppress: HttpsSupportedScheme - reason: IMDS does not require HTTPS to query it - - - suppress: SecurityDefinitionsStructure - reason: IMDS does not support any authentication - - - suppress: DefinitionsPropertiesNamesCamelCase - reason: The following properties follow the Oath2 spec, which does not use camelCase. - from: Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json - where: - - $.definitions.IdentityTokenResponse.properties.access_token - - $.definitions.IdentityTokenResponse.properties.expires_in - - $.definitions.IdentityTokenResponse.properties.expires_on - - $.definitions.IdentityTokenResponse.properties.ext_expires_in - - $.definitions.IdentityTokenResponse.properties.not_before - - $.definitions.IdentityTokenResponse.properties.resource - - $.definitions.IdentityTokenResponse.properties.token_type - - $.definitions.IdentityTokenResponse.properties.client_id - - $.definitions.IdentityTokenResponse.properties.object_id - - $.definitions.IdentityTokenResponse.properties.msi_res_id - - $.definitions.IdentityErrorResponse.properties.error_description - ``` +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2018-10-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-02-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-03-11/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-04-30/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-06-01/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json + + - suppress: HttpsSupportedScheme + reason: IMDS does not require HTTPS to query it + + - suppress: SecurityDefinitionsStructure + reason: IMDS does not support any authentication + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: The following properties follow the Oath2 spec, which does not use camelCase. + from: Microsoft.InstanceMetadataService/stable/2019-08-15/imds.json + where: + - $.definitions.IdentityTokenResponse.properties.access_token + - $.definitions.IdentityTokenResponse.properties.expires_in + - $.definitions.IdentityTokenResponse.properties.expires_on + - $.definitions.IdentityTokenResponse.properties.ext_expires_in + - $.definitions.IdentityTokenResponse.properties.not_before + - $.definitions.IdentityTokenResponse.properties.resource + - $.definitions.IdentityTokenResponse.properties.token_type + - $.definitions.IdentityTokenResponse.properties.client_id + - $.definitions.IdentityTokenResponse.properties.object_id + - $.definitions.IdentityTokenResponse.properties.msi_res_id + - $.definitions.IdentityErrorResponse.properties.error_description +``` --- # Code Generation From d689d7094b52c0b7e06efae753a7e3fce8aa61d0 Mon Sep 17 00:00:00 2001 From: wilco <31971584+wilcobmsft@users.noreply.github.com> Date: Mon, 26 Aug 2019 01:00:33 -0700 Subject: [PATCH 020/123] [Microsoft.Billing] Add missing reseller property. (#7028) * Add missing reseller property. * Update tests. --- .../preview/2019-10-01-preview/billing.json | 5 +++++ .../2019-10-01-preview/examples/ProductByCustomer.json | 6 +++++- .../2019-10-01-preview/examples/ProductsListByCustomer.json | 6 +++++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index 624b2b78b55a..3c45280353c8 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -5992,6 +5992,11 @@ "description": "Display name of customer to which this product belongs.", "type": "string", "readOnly": true + }, + "reseller": { + "description": "Reseller for this product.", + "readOnly": true, + "$ref": "#/definitions/Reseller" } } }, diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductByCustomer.json index e455c28950aa..ace24bb853bc 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductByCustomer.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductByCustomer.json @@ -31,7 +31,11 @@ "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", "customerDisplayName": "Customer 1", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "reseller": { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller2" + } } } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json index b0b423f7bd82..a7a69b529d7e 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json @@ -32,7 +32,11 @@ "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", "customerDisplayName": "Customer 1", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "reseller": { + "resellerId": "2c917292-b7bc-42f2-99a2-e498b9087c06", + "description": "Reseller1" + } } }, { From 92fe6297f121d50499f457494527638142ad0d66 Mon Sep 17 00:00:00 2001 From: Riley McKenna Date: Mon, 26 Aug 2019 18:09:13 -0700 Subject: [PATCH 021/123] Corrected Readme file order and versioning. (#7033) --- .../peering/resource-manager/readme.go.md | 23 +++++--- .../peering/resource-manager/readme.md | 55 ++++++++++--------- .../peering/resource-manager/readme.ruby.md | 26 ++++----- 3 files changed, 57 insertions(+), 47 deletions(-) diff --git a/specification/peering/resource-manager/readme.go.md b/specification/peering/resource-manager/readme.go.md index 6a86af3a43e9..1d80260a6f42 100644 --- a/specification/peering/resource-manager/readme.go.md +++ b/specification/peering/resource-manager/readme.go.md @@ -14,16 +14,12 @@ go: ``` yaml $(go) && $(multiapi) batch: - - tag: package-2019-03-01-preview + - tag: package-2019-08-01-preview ``` - -### Tag: package-2019-03-01-preview and go - -These settings apply only when `--tag=package-2019-03-01-preview --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2019-03-01-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-03-01-preview/$(namespace) +or +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-08-01-preview ``` ### Tag: package-2019-08-01-preview and go @@ -34,3 +30,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-06-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-06-01-preview/$(namespace) +``` diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index b0ce8bb3e4a9..5c617d75e782 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -21,44 +21,43 @@ To see additional help and options, run: ### Basic Information These are the global settings for the Peering API. - ``` yaml +title: PeeringManagementClient +description: Peering Client openapi-type: arm -tag: package-2019-03-01-preview +tag: package-2019-08-01-preview ``` or ``` yaml +title: PeeringManagementClient +description: Peering Client openapi-type: arm -tag: package-2019-06-01-preview +tag: package-2019-07-01-preview ``` or ``` yaml +title: PeeringManagementClient +description: Peering Client openapi-type: arm -tag: package-2019-07-01-preview +tag: package-2019-06-01-preview ``` or ``` yaml +title: PeeringManagementClient +description: Peering Client openapi-type: arm -tag: package-2019-08-01-preview +tag: package-2019-03-01-preview ``` -### Tag: package-2019-03-01-preview +### Tag: package-2019-08-01-preview -These settings apply only when `--tag=package-2019-03-01-preview` is specified on the command line. +These settings apply only when `--tag=package-2019-08-01-preview` is specified on the command line. -``` yaml $(tag) == 'package-2019-03-01-preview' +``` yaml $(tag) == 'package-2019-08-01-preview' input-file: -- Microsoft.Peering/preview/2019-03-01-preview/peering.json +- Microsoft.Peering/preview/2019-08-01-preview/peering.json ``` -### Tag: package-2019-06-01-preview - -These settings apply only when `--tag=package-2019-06-01-preview` is specified on the command line. - -``` yaml $(tag) == 'package-2019-06-01-preview' -input-file: -- Microsoft.Peering/preview/2019-06-01-preview/peering.json -``` ### Tag: package-2019-07-01-preview These settings apply only when `--tag=package-2019-07-01-preview` is specified on the command line. @@ -67,15 +66,23 @@ These settings apply only when `--tag=package-2019-07-01-preview` is specified o input-file: - Microsoft.Peering/preview/2019-07-01-preview/peering.json ``` +### Tag: package-2019-06-01-preview -### Tag: package-2019-08-01-preview +These settings apply only when `--tag=package-2019-06-01-preview` is specified on the command line. -These settings apply only when `--tag=package-2019-08-01-preview` is specified on the command line. +``` yaml $(tag) == 'package-2019-06-01-preview' +input-file: +- Microsoft.Peering/preview/2019-06-01-preview/peering.json +``` +### Tag: package-2019-03-01-preview -``` yaml $(tag) == 'package-2019-08-01-preview' +These settings apply only when `--tag=package-2019-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-03-01-preview' input-file: -- Microsoft.Peering/preview/2019-08-01-preview/peering.json +- Microsoft.Peering/preview/2019-03-01-preview/peering.json ``` + # Code Generation ## Swagger to SDK @@ -115,7 +122,6 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Peering/preview/2019-03-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-06-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-07-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-08-01-preview/peering.json @@ -126,7 +132,6 @@ If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +exclude-file: +- $(this-folder)/Microsoft.Peering/preview/2019-03-01-preview/peering.json ``` - diff --git a/specification/peering/resource-manager/readme.ruby.md b/specification/peering/resource-manager/readme.ruby.md index d2004e8c5b69..55ec2c40ddf9 100644 --- a/specification/peering/resource-manager/readme.ruby.md +++ b/specification/peering/resource-manager/readme.ruby.md @@ -4,43 +4,43 @@ These settings apply only when `--ruby` is specified on the command line. ``` yaml package-name: azure_mgmt_peering -package-version: "2019-03-01-preview" +package-version: "2019-08-01-preview" azure-arm: true ``` or ``` yaml package-name: azure_mgmt_peering -package-version: "2019-08-01-preview" +package-version: "2019-06-01-preview" azure-arm: true ``` ### Ruby multi-api - ``` yaml $(ruby) && $(multiapi) batch: - - tag: package-2019-03-01-preview + - tag: package-2019-08-01-preview ``` or ``` yaml $(ruby) && $(multiapi) batch: - - tag: package-2019-08-01-preview + - tag: package-2019-06-01-preview ``` -### Tag: package-2019-03-01-preview and ruby +### Tag: package-2019-08-01-preview and ruby -These settings apply only when `--tag=package-2019-03-01-preview --ruby` is specified on the command line. +These settings apply only when `--tag=package-2019-08-01-preview --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -``` yaml $(tag) == 'package-2019-03-01-preview' && $(ruby) -namespace: "Azure::Peering::Mgmt::V2019_03_01_preview" +``` yaml $(tag) == 'package-2019-08-01-preview' && $(ruby) +namespace: "Azure::Peering::Mgmt::V2019_08_01_preview" output-folder: $(ruby-sdks-folder)/management/azure_mgmt_peering/lib ``` -### Tag: package-2019-08-01-preview and ruby -These settings apply only when `--tag=package-2019-08-01-preview --ruby` is specified on the command line. +### Tag: package-2019-06-01-preview and ruby + +These settings apply only when `--tag=package-2019-06-01-preview --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -``` yaml $(tag) == 'package-2019-08-01-preview' && $(ruby) -namespace: "Azure::Peering::Mgmt::V2019_08_01_preview" +``` yaml $(tag) == 'package-2019-06-01-preview' && $(ruby) +namespace: "Azure::Peering::Mgmt::V2019_06_01_preview" output-folder: $(ruby-sdks-folder)/management/azure_mgmt_peering/lib ``` \ No newline at end of file From 2b82557b494fcb4558b49acc09332a6760f9ea1b Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 27 Aug 2019 01:10:28 +0000 Subject: [PATCH 022/123] regenerated all-api-versions --- specification/peering/resource-manager/readme.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index 5c617d75e782..bda13e348590 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -122,9 +122,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Peering/preview/2019-06-01-preview/peering.json - - $(this-folder)/Microsoft.Peering/preview/2019-07-01-preview/peering.json - $(this-folder)/Microsoft.Peering/preview/2019-08-01-preview/peering.json + - $(this-folder)/Microsoft.Peering/preview/2019-07-01-preview/peering.json + - $(this-folder)/Microsoft.Peering/preview/2019-06-01-preview/peering.json + - $(this-folder)/Microsoft.Peering/preview/2019-03-01-preview/peering.json ``` From bc48f20a49b52a260035b86c3c068ecb2ec58d6d Mon Sep 17 00:00:00 2001 From: zhiyuanxia <52429333+zhiyuanxia@users.noreply.github.com> Date: Mon, 26 Aug 2019 21:05:51 -0700 Subject: [PATCH 023/123] Update Networking API Specs for NRP (#6933) --- .../preview/2015-06-15/Network.json | 152 ++++++++++++++++++ .../2015-06-15/examples/Locations/List.json | 15 ++ .../2015-06-15/examples/Operations/List.json | 2 +- 3 files changed, 168 insertions(+), 1 deletion(-) create mode 100644 specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Locations/List.json diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json index 8b1d803a63fb..80391a71dcca 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json @@ -75,6 +75,102 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Network.Admin/locations": { + "get": { + "x-ms-examples": { + "Returns the list of supported locations.": { + "$ref": "./examples/Operations/List.json" + } + }, + "description": "Returns the list of supported locations", + "tags": [ + "Network" + ], + "operationId": "Locations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LocationsList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Network.Admin/locations/{location}/operationResults": { + "get": { + "x-ms-examples": { + "Returns the list of operation results for a location": { + "$ref": "./examples/Locations/List.json" + } + }, + "description": "Returns the list of operation results for a location", + "tags": [ + "Network" + ], + "operationId": "LocationsOperationResults_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Network.Admin/locations/{location}/operations": { + "get": { + "x-ms-examples": { + "Returns the list of support REST operations.": { + "$ref": "./examples/Locations/List.json" + } + }, + "description": "Returns the list of support REST operations.", + "tags": [ + "Network" + ], + "operationId": "LocationsOperations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } } }, "definitions": { @@ -127,6 +223,26 @@ } } }, + "Location": { + "description": "Describes the supported Location", + "properties": { + "name": { + "description": "The name of the location the operation is being held.", + "type": "string", + "readOnly": true + } + } + }, + "OperationResult": { + "description": "Describes results of a given operation", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object.", + "type": "string", + "readOnly": true + } + } + }, "Display": { "description": "Contains the localized display information for this particular operation / action.", "properties": { @@ -152,6 +268,24 @@ } } }, + "LocationsList": { + "description": "List of Locations", + "properties": { + "value": { + "description": "Array of locations", + "type": "array", + "items": { + "$ref": "#/definitions/Location" + }, + "readOnly": true + }, + "nextLink": { + "description": "URI to the next page of locations.", + "type": "string", + "readOnly": true + } + } + }, "OperationList": { "description": "List of Operations", "properties": { @@ -170,6 +304,24 @@ } } }, + "OperationResultList": { + "description": "List of Operation Results", + "properties": { + "value": { + "description": "Array of operation results", + "type": "array", + "items": { + "$ref": "#/definitions/OperationResult" + }, + "readOnly": true + }, + "nextLink": { + "description": "URI to the next page of operations.", + "type": "string", + "readOnly": true + } + } + }, "ProvisionedResource": { "description": "Objects which have a provisioning state.", "type": "object", diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Locations/List.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Locations/List.json new file mode 100644 index 000000000000..73a1bbcae7fa --- /dev/null +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Locations/List.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "westus", + "api-version": "2015-06-15" + }, + "responses": { + "200": { + "body": { + "value": [], + "nextLink": "" + } + } + } +} diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json index 4b1fefacd40e..7715ca4d7950 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "api-version": "2016-05-01" + "api-version": "2015-06-15" }, "responses": { "200": { From 7f5ee6deeeea690c34460fe5b6dce3dd17f029d4 Mon Sep 17 00:00:00 2001 From: beoberha <51964155+beoberha@users.noreply.github.com> Date: Tue, 27 Aug 2019 12:45:35 -0700 Subject: [PATCH 024/123] private link resources swagger (#6866) --- .../PrivateLinkResources.json | 292 ++++++++++++++++++ .../examples/PrivateLinkResourcesGet.json | 24 ++ .../examples/PrivateLinkResourcesList.json | 27 ++ specification/sql/resource-manager/readme.md | 3 + 4 files changed, 346 insertions(+) create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json new file mode 100644 index 000000000000..d2ddce5eb176 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json @@ -0,0 +1,292 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources for SQL server.", + "operationId": "PrivateLinkResources_ListByServer", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets private link resources for SQL.": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets a private link resource for SQL server.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + } + }, + "x-ms-examples": { + "Gets a private link resource for SQL.": { + "$ref": "./examples/PrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json new file mode 100644 index 000000000000..2d72ad7c75a2 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "groupName" : "plr", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/servers/privateLinkResources", + "properties": { + "groupId": "sqlServer", + "requiredMembers": [ + "sqlServer" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..0760568b3d12 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.Sql/servers/privateLinkResources", + "properties": { + "groupId": "sqlServer", + "requiredMembers": [ + "sqlServer" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 20bdd83e5620..486ebd949854 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -123,6 +123,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file override-info: @@ -216,6 +217,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file override-info: @@ -303,6 +305,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file override-info: From 80999f09c12d49c5920edc9ec3afc4a8e803335a Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 27 Aug 2019 19:46:52 +0000 Subject: [PATCH 025/123] regenerated all-api-versions --- specification/sql/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 486ebd949854..4e03a1478bce 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -809,6 +809,7 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json + - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/capabilities.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databases.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/elasticPools.json From ed8bc309c87486234fd1ced723f6d0c00e27b18b Mon Sep 17 00:00:00 2001 From: Sandip Shahane Date: Tue, 27 Aug 2019 17:57:38 -0700 Subject: [PATCH 026/123] Adding a new api version 2019-06-01 for Microsoft.Authorization policy artifacts (#6998) * adding a folder for new api version 2019-06-01 as a baseline. The content is same as that of 2019-01-01, so please ignore the content of this folder for now. I will make changes to it soon. * added stable/2019-06-01 version for Authorization RP * Addressed review comments. --- .../createOrUpdatePolicyDefinition.json | 90 +++ ...datePolicyDefinitionAtManagementGroup.json | 90 +++ .../createOrUpdatePolicySetDefinition.json | 120 +++ ...ePolicySetDefinitionAtManagementGroup.json | 120 +++ .../examples/createPolicyAssignment.json | 54 ++ .../examples/createPolicyAssignmentById.json | 53 ++ .../createPolicyAssignmentWithIdentity.json | 65 ++ ...reatePolicyAssignmentWithIdentityById.json | 63 ++ ...atePolicyAssignmentWithoutEnforcement.json | 55 ++ .../examples/deletePolicyAssignment.json | 38 + .../examples/deletePolicyAssignmentById.json | 36 + .../examples/deletePolicyDefinition.json | 15 + ...letePolicyDefinitionAtManagementGroup.json | 15 + .../examples/deletePolicySetDefinition.json | 15 + ...ePolicySetDefinitionAtManagementGroup.json | 15 + .../getBuiltInPolicySetDefinition.json | 66 ++ .../examples/getBuiltinPolicyDefinition.json | 52 ++ .../examples/getPolicyAssignment.json | 36 + .../examples/getPolicyAssignmentById.json | 34 + .../getPolicyAssignmentWithIdentity.json | 42 + .../getPolicyAssignmentWithIdentityById.json | 40 + .../examples/getPolicyDefinition.json | 53 ++ .../getPolicyDefinitionAtManagementGroup.json | 53 ++ .../examples/getPolicySetDefinition.json | 48 ++ ...tPolicySetDefinitionAtManagementGroup.json | 48 ++ .../listBuiltInPolicyDefinitions.json | 130 ++++ .../listBuiltInPolicySetDefinitions.json | 69 ++ .../examples/listPolicyAssignments.json | 62 ++ .../listPolicyAssignmentsForResource.json | 66 ++ ...listPolicyAssignmentsForResourceGroup.json | 63 ++ .../examples/listPolicyDefinitions.json | 128 +++ ...istPolicyDefinitionsByManagementGroup.json | 96 +++ .../examples/listPolicySetDefinitions.json | 106 +++ ...PolicySetDefinitionsByManagementGroup.json | 106 +++ .../stable/2019-06-01/policyAssignments.json | 729 ++++++++++++++++++ .../stable/2019-06-01/policyDefinitions.json | 520 +++++++++++++ .../2019-06-01/policySetDefinitions.json | 625 +++++++++++++++ .../resources/resource-manager/readme.go.md | 11 + .../resources/resource-manager/readme.md | 41 + .../resource-manager/readme.python.md | 12 + 40 files changed, 4080 insertions(+) create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignment.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentById.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentity.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentityById.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithoutEnforcement.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignment.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignmentById.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltInPolicySetDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltinPolicyDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignment.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentById.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentity.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentityById.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinitionAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicyDefinitions.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicySetDefinitions.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignments.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResource.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResourceGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitions.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitionsByManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitions.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitionsByManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json create mode 100644 specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinition.json new file mode 100644 index 000000000000..250db181f7d7 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinition.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "mode": "All", + "displayName": "Enforce resource naming convention", + "description": "Force resource names to begin with given 'prefix' and/or end with given 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming", + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyType": "Custom" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..ddf1705fc49c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicyDefinitionAtManagementGroup.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "mode": "All", + "displayName": "Enforce resource naming convention", + "description": "Force resource names to begin with given 'prefix' and/or end with given 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming", + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyType": "Custom" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinition.json new file mode 100644 index 000000000000..e009dfea5a0f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinition.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + }, + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..e97aa511fc51 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createOrUpdatePolicySetDefinitionAtManagementGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + }, + "200": { + "headers": {}, + "body": { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignment.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignment.json new file mode 100644 index 000000000000..e7b41234c5f3 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignment.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "Default", + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentById.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentById.json new file mode 100644 index 000000000000..cd36574044a8 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentById.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "policyAssignmentId": "providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "notScopes": [], + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + }, + "id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "type": "Microsoft.Authorization/policyAssignments", + "name": "LowCostStorage" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentity.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentity.json new file mode 100644 index 000000000000..afaf6b0049cb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentity.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01", + "parameters": { + "location": "eastus", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Foo Bar" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "Default" + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "Default", + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "location": "eastus", + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentityById.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentityById.json new file mode 100644 index 000000000000..2fcfd2d892a0 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithIdentityById.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "policyAssignmentId": "providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "api-version": "2019-06-01", + "parameters": { + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "notScopes": [], + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "location": "eastus", + "id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "type": "Microsoft.Authorization/policyAssignments", + "name": "LowCostStorage" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithoutEnforcement.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithoutEnforcement.json new file mode 100644 index 000000000000..584432cf914d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/createPolicyAssignmentWithoutEnforcement.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01", + "parameters": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "DoNotEnforce" + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "DoNotEnforce", + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignment.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignment.json new file mode 100644 index 000000000000..632c6f8cffdb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignment.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignmentById.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignmentById.json new file mode 100644 index 000000000000..c43391ee8cf0 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyAssignmentById.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "policyAssignmentId": "providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "notScopes": [], + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + "id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "type": "Microsoft.Authorization/policyAssignments", + "name": "LowCostStorage" + } + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinition.json new file mode 100644 index 000000000000..e68165f5af43 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinition.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..93ed2d064ffb --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicyDefinitionAtManagementGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinition.json new file mode 100644 index 000000000000..b335b056e3d4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinition.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..75ebab143036 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/deletePolicySetDefinitionAtManagementGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": { + "headers": {} + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltInPolicySetDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltInPolicySetDefinition.json new file mode 100644 index 000000000000..fe1345f26960 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltInPolicySetDefinition.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "[Preview]: Enable Monitoring in Azure Security Center", + "policyType": "BuiltIn", + "description": "Monitor all the available security recommendations in Azure Security Center. This is the default policy for Azure Security Center.", + "metadata": { + "category": "Security Center" + }, + "parameters": {}, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/a8bef009-a5c9-4d0f-90d7-6018734e8a16" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af8051bf-258b-44e2-a2bf-165330459f9d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/86b3d65f-7626-441e-b690-81a8b71cff60" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/b0f33259-77d7-4c9e-aac6-3aabcfae693c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/47a6b606-51aa-4496-8bb7-64b11cf66adc" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/e1e5fd5d-3e4c-4ce1-8661-7d1873ae6b15" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af6cd1bd-1635-48cb-bde7-5b15693900b9" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0961003e-5a0a-4549-abde-af6a37f2724d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/760a85ff-6162-42b3-8d70-698e268f648c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6" + } + ] + }, + "id": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltinPolicyDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltinPolicyDefinition.json new file mode 100644 index 000000000000..c40ef2c74dc9 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getBuiltinPolicyDefinition.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyDefinitionName": "7433c107-6db4-4ad1-b57a-a76dce0154a1", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "mode": "All", + "displayName": "Allowed storage account SKUs", + "policyType": "BuiltIn", + "description": "This policy enables you to specify a set of storage account SKUs that your organization can deploy.", + "parameters": { + "listOfAllowedSKUs": { + "type": "Array", + "metadata": { + "description": "The list of SKUs that can be specified for storage accounts.", + "displayName": "Allowed SKUs", + "strongType": "StorageSKUs" + } + } + }, + "policyRule": { + "if": { + "allOf": [ + { + "field": "type", + "equals": "Microsoft.Storage/storageAccounts" + }, + { + "not": { + "field": "Microsoft.Storage/storageAccounts/sku.name", + "in": "[parameters('listOfAllowedSKUs')]" + } + } + ] + }, + "then": { + "effect": "Deny" + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "7433c107-6db4-4ad1-b57a-a76dce0154a1" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignment.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignment.json new file mode 100644 index 000000000000..f0ca8a4ac32d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignment.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "Default", + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentById.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentById.json new file mode 100644 index 000000000000..b208e5f63bbe --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentById.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "policyAssignmentId": "providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "notScopes": [], + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + }, + "id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "type": "Microsoft.Authorization/policyAssignments", + "name": "LowCostStorage" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentity.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentity.json new file mode 100644 index 000000000000..88dbf613b125 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentity.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyAssignmentName": "EnforceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce resource naming rules", + "description": "Force resource names to begin with given DeptA and end with -LC", + "metadata": { + "assignedBy": "Special Someone" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "notScopes": [], + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + }, + "enforcementMode": "Default", + "scope": "subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "location": "westus", + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming", + "type": "Microsoft.Authorization/policyAssignments", + "name": "EnforceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentityById.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentityById.json new file mode 100644 index 000000000000..e3a46ce6c7be --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyAssignmentWithIdentityById.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "policyAssignmentId": "providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "displayName": "Enforce storage account SKU", + "description": "Allow only storage accounts of SKU Standard_GRS or Standard_LRS to be created", + "metadata": { + "assignedBy": "Cheapskate Boss" + }, + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "notScopes": [], + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + }, + "enforcementMode": "Default" + }, + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "location": "westus", + "id": "/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policyAssignments/LowCostStorage", + "type": "Microsoft.Authorization/policyAssignments", + "name": "LowCostStorage" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinition.json new file mode 100644 index 000000000000..8c733e6c9574 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinition.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyType": "Custom" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..cc51c7df24f8 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicyDefinitionAtManagementGroup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policyDefinitionName": "ResourceNaming", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming", + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyType": "Custom" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinition.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinition.json new file mode 100644 index 000000000000..cd765fcebf0c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinition.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinitionAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinitionAtManagementGroup.json new file mode 100644 index 000000000000..94637a0c826c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/getPolicySetDefinitionAtManagementGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "policySetDefinitionName": "CostManagement", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicyDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicyDefinitions.json new file mode 100644 index 000000000000..30e75c86dfaf --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicyDefinitions.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "mode": "All", + "displayName": "Audit SQL DB Level Audit Setting", + "policyType": "BuiltIn", + "description": "Audit DB level audit setting for SQL databases", + "parameters": { + "setting": { + "type": "String", + "metadata": { + "displayName": "Audit Setting" + }, + "allowedValues": [ + "enabled", + "disabled" + ] + } + }, + "policyRule": { + "if": { + "field": "type", + "equals": "Microsoft.Sql/servers/databases" + }, + "then": { + "effect": "AuditIfNotExists", + "details": { + "type": "Microsoft.Sql/servers/databases/auditingSettings", + "name": "default", + "existenceCondition": { + "allOf": [ + { + "field": "Microsoft.Sql/auditingSettings.state", + "equals": "[parameters('setting')]" + } + ] + } + } + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/06a78e20-9358-41c9-923c-fb736d382a12", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "06a78e20-9358-41c9-923c-fb736d382a12" + }, + { + "properties": { + "mode": "All", + "displayName": "Allowed storage account SKUs", + "policyType": "BuiltIn", + "description": "This policy enables you to specify a set of storage account SKUs that your organization can deploy.", + "parameters": { + "listOfAllowedSKUs": { + "type": "Array", + "metadata": { + "description": "The list of SKUs that can be specified for storage accounts.", + "displayName": "Allowed SKUs", + "strongType": "StorageSKUs" + } + } + }, + "policyRule": { + "if": { + "allOf": [ + { + "field": "type", + "equals": "Microsoft.Storage/storageAccounts" + }, + { + "not": { + "field": "Microsoft.Storage/storageAccounts/sku.name", + "in": "[parameters('listOfAllowedSKUs')]" + } + } + ] + }, + "then": { + "effect": "Deny" + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "7433c107-6db4-4ad1-b57a-a76dce0154a1" + }, + { + "properties": { + "mode": "Microsoft.KeyVault.Data", + "displayName": "Audit KeyVault certificates that expire within specified number of days", + "policyType": "BuiltIn", + "description": "Audit certificates that are stored in Azure Key Vault, that expire within 'X' number of days.", + "metadata": { + "category": "KeyVault DataPlane" + }, + "parameters": { + "daysToExpire": { + "type": "Integer", + "metadata": { + "displayName": "Days to expire", + "description": "The number of days for a certificate to expire." + } + } + }, + "policyRule": { + "if": { + "field": "Microsoft.KeyVault.Data/vaults/certificates/attributes/expiresOn", + "lessOrEquals": "[addDays(utcNow(), parameters('daysToExpire'))]" + }, + "then": { + "effect": "audit" + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/abeed54a-73c5-441d-8a8c-6b5e7a0c299e", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "abeed54a-73c5-441d-8a8c-6b5e7a0c299e" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicySetDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicySetDefinitions.json new file mode 100644 index 000000000000..7917b62f9788 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listBuiltInPolicySetDefinitions.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "displayName": "[Preview]: Enable Monitoring in Azure Security Center", + "policyType": "BuiltIn", + "description": "Monitor all the available security recommendations in Azure Security Center. This is the default policy for Azure Security Center.", + "metadata": { + "category": "Security Center" + }, + "parameters": {}, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/a8bef009-a5c9-4d0f-90d7-6018734e8a16" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af8051bf-258b-44e2-a2bf-165330459f9d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/86b3d65f-7626-441e-b690-81a8b71cff60" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/b0f33259-77d7-4c9e-aac6-3aabcfae693c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/47a6b606-51aa-4496-8bb7-64b11cf66adc" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/e1e5fd5d-3e4c-4ce1-8661-7d1873ae6b15" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af6cd1bd-1635-48cb-bde7-5b15693900b9" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0961003e-5a0a-4549-abde-af6a37f2724d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/760a85ff-6162-42b3-8d70-698e268f648c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6" + } + ] + }, + "id": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignments.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignments.json new file mode 100644 index 000000000000..5e38fa76ec7d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignments.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "api-version": "2019-06-01", + "$filter": "atScope()" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/CostManagement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "CostManagement", + "location": "eastus", + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "properties": { + "displayName": "Storage Cost Management", + "description": "Minimize the risk of accidental cost overruns", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/storageSkus", + "parameters": { + "allowedSkus": { + "type": "Array" + } + }, + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + }, + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/TagEnforcement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "TagEnforcement", + "properties": { + "displayName": "Enforces a tag key and value", + "description": "Ensure a given tag key and value are present on all resources", + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/TagKeyValue", + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResource.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResource.json new file mode 100644 index 000000000000..8c272aa0a1cf --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResource.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "TestResourceGroup", + "resourceProviderNamespace": "Microsoft.Compute", + "parentResourcePath": "virtualMachines/MyTestVm", + "resourceType": "domainNames", + "resourceName": "MyTestComputer.cloudapp.net", + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup/providers/Microsoft.Authorization/policyAssignments/TestCostManagement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "TestCostManagement", + "location": "eastus", + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "properties": { + "displayName": "VM Cost Management", + "description": "Minimize the risk of accidental cost overruns", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/vmSkus", + "parameters": { + "allowedSkus": { + "type": "Array" + } + }, + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + }, + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup/providers/Microsoft.Authorization/policyAssignments/TestTagEnforcement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "TestTagEnforcement", + "properties": { + "displayName": "Enforces a tag key and value", + "description": "Ensure a given tag key and value are present on all resources", + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/TagKeyValue", + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResourceGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResourceGroup.json new file mode 100644 index 000000000000..34d832550dfa --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyAssignmentsForResourceGroup.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "TestResourceGroup", + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "api-version": "2019-06-01", + "$filter": "atScope()" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup/providers/Microsoft.Authorization/policyAssignments/TestCostManagement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "TestCostManagement", + "location": "eastus", + "identity": { + "type": "SystemAssigned", + "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a", + "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135" + }, + "properties": { + "displayName": "Storage Cost Management", + "description": "Minimize the risk of accidental cost overruns", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/storageSkus", + "parameters": { + "allowedSkus": { + "type": "Array" + } + }, + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + }, + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup/providers/Microsoft.Authorization/policyAssignments/TestTagEnforcement", + "type": "Microsoft.Authorization/policyAssignments", + "name": "TestTagEnforcement", + "properties": { + "displayName": "Enforces a tag key and value", + "description": "Ensure a given tag key and value are present on all resources", + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/TagKeyValue", + "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/resourceGroups/TestResourceGroup", + "notScopes": [] + }, + "sku": { + "name": "A0", + "tier": "Free" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitions.json new file mode 100644 index 000000000000..531be24b5f40 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitions.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "mode": "All", + "displayName": "Allowed storage account SKUs", + "policyType": "BuiltIn", + "description": "This policy enables you to specify a set of storage account SKUs that your organization can deploy.", + "parameters": { + "listOfAllowedSKUs": { + "type": "Array", + "metadata": { + "description": "The list of SKUs that can be specified for storage accounts.", + "displayName": "Allowed SKUs", + "strongType": "StorageSKUs" + } + } + }, + "policyRule": { + "if": { + "allOf": [ + { + "field": "type", + "equals": "Microsoft.Storage/storageAccounts" + }, + { + "not": { + "field": "Microsoft.Storage/storageAccounts/sku.name", + "in": "[parameters('listOfAllowedSKUs')]" + } + } + ] + }, + "then": { + "effect": "Deny" + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "7433c107-6db4-4ad1-b57a-a76dce0154a1" + }, + { + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "policyType": "Custom" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming" + }, + { + "properties": { + "mode": "Microsoft.KeyVault.Data", + "displayName": "Audit KeyVault certificates that expire within specified number of days", + "description": "Audit certificates that are stored in Azure Key Vault, that expire within 'X' number of days.", + "metadata": { + "category": "KeyVault DataPlane" + }, + "parameters": { + "daysToExpire": { + "type": "Integer", + "metadata": { + "displayName": "Days to expire", + "description": "The number of days for a certificate to expire." + } + } + }, + "policyRule": { + "if": { + "field": "Microsoft.KeyVault.Data/vaults/certificates/attributes/expiresOn", + "lessOrEquals": "[addDays(utcNow(), parameters('daysToExpire'))]" + }, + "then": { + "effect": "audit" + } + }, + "policyType": "Custom" + }, + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/AuditSoonToExpireCerts", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "AuditSoonToExpireCerts" + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitionsByManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitionsByManagementGroup.json new file mode 100644 index 000000000000..41255ce25aaf --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicyDefinitionsByManagementGroup.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "mode": "All", + "displayName": "Allowed storage account SKUs", + "policyType": "BuiltIn", + "description": "This policy enables you to specify a set of storage account SKUs that your organization can deploy.", + "parameters": { + "listOfAllowedSKUs": { + "type": "Array", + "metadata": { + "description": "The list of SKUs that can be specified for storage accounts.", + "displayName": "Allowed SKUs", + "strongType": "StorageSKUs" + } + } + }, + "policyRule": { + "if": { + "allOf": [ + { + "field": "type", + "equals": "Microsoft.Storage/storageAccounts" + }, + { + "not": { + "field": "Microsoft.Storage/storageAccounts/sku.name", + "in": "[parameters('listOfAllowedSKUs')]" + } + } + ] + }, + "then": { + "effect": "Deny" + } + } + }, + "id": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "7433c107-6db4-4ad1-b57a-a76dce0154a1" + }, + { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "type": "Microsoft.Authorization/policyDefinitions", + "name": "ResourceNaming", + "properties": { + "mode": "All", + "displayName": "Naming Convention", + "description": "Force resource names to begin with 'prefix' and end with 'suffix'", + "metadata": { + "category": "Naming" + }, + "policyRule": { + "if": { + "not": { + "field": "name", + "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]" + } + }, + "then": { + "effect": "deny" + } + }, + "parameters": { + "prefix": { + "type": "String", + "metadata": { + "displayName": "Prefix", + "description": "Resource name prefix" + } + }, + "suffix": { + "type": "String", + "metadata": { + "displayName": "Suffix", + "description": "Resource name suffix" + } + } + }, + "policyType": "Custom" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitions.json new file mode 100644 index 000000000000..001568ae68aa --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitions.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "subscriptionId": "ae640e6b-ba3e-4256-9d62-2993eecfa6f2", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "displayName": "[Preview]: Enable Monitoring in Azure Security Center", + "policyType": "BuiltIn", + "description": "Monitor all the available security recommendations in Azure Security Center. This is the default policy for Azure Security Center.", + "metadata": { + "category": "Security Center" + }, + "parameters": {}, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/a8bef009-a5c9-4d0f-90d7-6018734e8a16" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af8051bf-258b-44e2-a2bf-165330459f9d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/86b3d65f-7626-441e-b690-81a8b71cff60" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/b0f33259-77d7-4c9e-aac6-3aabcfae693c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/47a6b606-51aa-4496-8bb7-64b11cf66adc" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/e1e5fd5d-3e4c-4ce1-8661-7d1873ae6b15" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af6cd1bd-1635-48cb-bde7-5b15693900b9" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0961003e-5a0a-4549-abde-af6a37f2724d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/760a85ff-6162-42b3-8d70-698e268f648c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6" + } + ] + }, + "id": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8" + }, + { + "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitionsByManagementGroup.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitionsByManagementGroup.json new file mode 100644 index 000000000000..65c672d6caa4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/examples/listPolicySetDefinitionsByManagementGroup.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "managementGroupId": "MyManagementGroup", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "displayName": "[Preview]: Enable Monitoring in Azure Security Center", + "policyType": "BuiltIn", + "description": "Monitor all the available security recommendations in Azure Security Center. This is the default policy for Azure Security Center.", + "metadata": { + "category": "Security Center" + }, + "parameters": {}, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/a8bef009-a5c9-4d0f-90d7-6018734e8a16" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af8051bf-258b-44e2-a2bf-165330459f9d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/86b3d65f-7626-441e-b690-81a8b71cff60" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/655cb504-bcee-4362-bd4c-402e6aa38759" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/b0f33259-77d7-4c9e-aac6-3aabcfae693c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/47a6b606-51aa-4496-8bb7-64b11cf66adc" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/44452482-524f-4bf4-b852-0bff7cc4a3ed" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/e1e5fd5d-3e4c-4ce1-8661-7d1873ae6b15" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/af6cd1bd-1635-48cb-bde7-5b15693900b9" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/0961003e-5a0a-4549-abde-af6a37f2724d" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/760a85ff-6162-42b3-8d70-698e268f648c" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6" + }, + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6" + } + ] + }, + "id": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8" + }, + { + "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement", + "type": "Microsoft.Authorization/policySetDefinitions", + "name": "CostManagement", + "properties": { + "displayName": "Cost Management", + "description": "Policies to enforce low cost storage SKUs", + "metadata": { + "category": "Cost Management" + }, + "policyDefinitions": [ + { + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "parameters": { + "listOfAllowedSKUs": { + "value": [ + "Standard_GRS", + "Standard_LRS" + ] + } + } + }, + { + "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming", + "parameters": { + "prefix": { + "value": "DeptA" + }, + "suffix": { + "value": "-LC" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json new file mode 100644 index 000000000000..4b93d9b9b14a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json @@ -0,0 +1,729 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyClient", + "version": "2019-06-01", + "description": "To manage and control access to your resources, you can define customized policies and assign them at a scope." + }, + "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": { + "/{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}": { + "delete": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_Delete", + "summary": "Deletes a policy assignment.", + "description": "This operation deletes a policy assignment, given its name and the scope it was created in. The scope of a policy assignment is the part of its ID preceding '/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'.", + "x-ms-examples": { + "Delete a policy assignment": { + "$ref": "./examples/deletePolicyAssignment.json" + } + }, + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the policy assignment. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true + }, + { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deleted assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "204": { + "description": "No Content - the policy assignment doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_Create", + "summary": "Creates or updates a policy assignment.", + "description": " This operation creates or updates a policy assignment with the given scope and name. Policy assignments apply to all resources contained within their scope. For example, when you assign a policy at resource group scope, that policy applies to all resources in the group.", + "x-ms-examples": { + "Create or update a policy assignment": { + "$ref": "./examples/createPolicyAssignment.json" + }, + "Create or update a policy assignment with a managed identity": { + "$ref": "./examples/createPolicyAssignmentWithIdentity.json" + } + , + "Create or update a policy assignment without enforcing policy effect during resource creation or update.": { + "$ref": "./examples/createPolicyAssignmentWithoutEnforcement.json" + } + }, + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the policy assignment. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true + }, + { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyAssignment" + }, + "description": "Parameters for the policy assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the new policy assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_Get", + "summary": "Retrieves a policy assignment.", + "description": "This operation retrieves a single policy assignment, given its name and the scope it was created at.", + "x-ms-examples": { + "Retrieve a policy assignment": { + "$ref": "./examples/getPolicyAssignment.json" + }, + "Retrieve a policy assignment with a managed identity": { + "$ref": "./examples/getPolicyAssignmentWithIdentity.json" + } + }, + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the policy assignment. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'", + "x-ms-skip-url-encoding": true + }, + { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/policyAssignments": { + "get": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_ListForResourceGroup", + "summary": "Retrieves all policy assignments that apply to a resource group.", + "description": "This operation retrieves the list of all policy assignments associated with the given resource group in the given subscription that match the optional given $filter. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, the unfiltered list includes all policy assignments associated with the resource group, including those that apply directly or apply from containing scopes, as well as any applied to resources contained within the resource group. If $filter=atScope() is provided, the returned list includes all policy assignments that apply to the resource group, which is everything in the unfiltered list except those applied to resources contained within the resource group. If $filter=policyDefinitionId eq '{value}' is provided, the returned list includes all policy assignments of the policy definition whose id is {value} that apply to the resource group.", + "x-ms-examples": { + "List policy assignments that apply to a resource group": { + "$ref": "./examples/listPolicyAssignmentsForResourceGroup.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains policy assignments.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, no filtering is performed.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy assignments.", + "schema": { + "$ref": "#/definitions/PolicyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/policyAssignments": { + "get": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_ListForResource", + "summary": "Retrieves all policy assignments that apply to a resource.", + "description": "This operation retrieves the list of all policy assignments associated with the specified resource in the given resource group and subscription that match the optional given $filter. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, the unfiltered list includes all policy assignments associated with the resource, including those that apply directly or from all containing scopes, as well as any applied to resources contained within the resource. If $filter=atScope() is provided, the returned list includes all policy assignments that apply to the resource, which is everything in the unfiltered list except those applied to resources contained within the resource. If $filter=policyDefinitionId eq '{value}' is provided, the returned list includes all policy assignments of the policy definition whose id is {value} that apply to the resource. Three parameters plus the resource name are used to identify a specific resource. If the resource is not part of a parent resource (the more common case), the parent resource path should not be provided (or provided as ''). For example a web app could be specified as ({resourceProviderNamespace} == 'Microsoft.Web', {parentResourcePath} == '', {resourceType} == 'sites', {resourceName} == 'MyWebApp'). If the resource is part of a parent resource, then all parameters should be provided. For example a virtual machine DNS name could be specified as ({resourceProviderNamespace} == 'Microsoft.Compute', {parentResourcePath} == 'virtualMachines/MyVirtualMachine', {resourceType} == 'domainNames', {resourceName} == 'MyComputerName'). A convenient alternative to providing the namespace and type name separately is to provide both in the {resourceType} parameter, format: ({resourceProviderNamespace} == '', {parentResourcePath} == '', {resourceType} == 'Microsoft.Web/sites', {resourceName} == 'MyWebApp').", + "deprecated": false, + "x-ms-examples": { + "List all policy assignments that apply to a resource": { + "$ref": "./examples/listPolicyAssignmentsForResource.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider. For example, the namespace of a virtual machine is Microsoft.Compute (from Microsoft.Compute/virtualMachines)" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource path. Use empty string if there is none.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type name. For example the type name of a web app is 'sites' (from Microsoft.Web/sites).", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, no filtering is performed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy assignments.", + "schema": { + "$ref": "#/definitions/PolicyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/PolicyAssignment" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyAssignments": { + "get": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_List", + "summary": "Retrieves all policy assignments that apply to a subscription.", + "description": "This operation retrieves the list of all policy assignments associated with the given subscription that match the optional given $filter. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, the unfiltered list includes all policy assignments associated with the subscription, including those that apply directly or from management groups that contain the given subscription, as well as any applied to objects contained within the subscription. If $filter=atScope() is provided, the returned list includes all policy assignments that apply to the subscription, which is everything in the unfiltered list except those applied to objects contained within the subscription. If $filter=policyDefinitionId eq '{value}' is provided, the returned list includes all policy assignments of the policy definition whose id is {value}.", + "x-ms-examples": { + "List policy assignments that apply to a subscription": { + "$ref": "./examples/listPolicyAssignments.json" + } + }, + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Valid values for $filter are: 'atScope()' or 'policyDefinitionId eq '{value}''. If $filter is not provided, no filtering is performed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy assignments.", + "schema": { + "$ref": "#/definitions/PolicyAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/PolicyAssignment" + } + }, + "/{policyAssignmentId}": { + "delete": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_DeleteById", + "summary": "Deletes a policy assignment.", + "description": "This operation deletes the policy with the given ID. Policy assignment IDs have this format: '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'. Valid formats for {scope} are: '/providers/Microsoft.Management/managementGroups/{managementGroup}' (management group), '/subscriptions/{subscriptionId}' (subscription), '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' (resource group), or '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}' (resource).", + "x-ms-examples": { + "Delete a policy assignment by ID": { + "$ref": "./examples/deletePolicyAssignmentById.json" + } + }, + "parameters": [ + { + "name": "policyAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the policy assignment to delete. Use the format '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "204": { + "description": "No Content - the policy assignment doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_CreateById", + "summary": "Creates or updates a policy assignment.", + "description": "This operation creates or updates the policy assignment with the given ID. Policy assignments made on a scope apply to all resources contained in that scope. For example, when you assign a policy to a resource group that policy applies to all resources in the group. Policy assignment IDs have this format: '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'.", + "x-ms-examples": { + "Create or update policy assignment by ID": { + "$ref": "./examples/createPolicyAssignmentById.json" + }, + "Create or update policy assignment with a managed identity by ID": { + "$ref": "./examples/createPolicyAssignmentWithIdentityById.json" + } + }, + "parameters": [ + { + "name": "policyAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the policy assignment to create. Use the format '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyAssignment" + }, + "description": "Parameters for policy assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the policy assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "PolicyAssignments" + ], + "operationId": "PolicyAssignments_GetById", + "summary": "Retrieves the policy assignment with the given ID.", + "description": "The operation retrieves the policy assignment with the given ID. Policy assignment IDs have this format: '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', or resource (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'.", + "x-ms-examples": { + "Retrieve a policy assignment by ID": { + "$ref": "./examples/getPolicyAssignmentById.json" + }, + "Retrieve a policy assignment with a managed identity by ID": { + "$ref": "./examples/getPolicyAssignmentWithIdentityById.json" + } + }, + "parameters": [ + { + "name": "policyAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the policy assignment to get. Use the format '{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}'.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy assignment.", + "schema": { + "$ref": "#/definitions/PolicyAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "PolicyAssignmentProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "The display name of the policy assignment." + }, + "policyDefinitionId": { + "type": "string", + "description": "The ID of the policy definition or policy set definition being assigned." + }, + "scope": { + "type": "string", + "description": "The scope for the policy assignment." + }, + "notScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The policy's excluded scopes." + }, + "parameters": { + "type": "object", + "description": "Required if a parameter is used in policy rule." + }, + "description": { + "type": "string", + "description": "This message will be part of response in case of policy violation." + }, + "metadata": { + "type": "object", + "description": "The policy assignment metadata." + }, + "enforcementMode": { + "type": "string", + "description": "The policy assignment enforcement mode. Possible values are Default and DoNotEnforce.", + "enum": [ + "Default", + "DoNotEnforce" + ], + "x-ms-enum": { + "name": "enforcementMode", + "modelAsString": true, + "values": [ + { + "value": "Default", + "description": "The policy effect is enforced during resource creation or update." + }, + { + "value": "DoNotEnforce", + "description": "The policy effect is not enforced during resource creation or update." + } + ] + } + } + }, + "description": "The policy assignment properties." + }, + "PolicySku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the policy sku. Possible values are A0 and A1." + }, + "tier": { + "type": "string", + "description": "The policy sku tier. Possible values are Free and Standard." + } + }, + "required": [ + "name" + ], + "description": "The policy sku. This property is optional, obsolete, and will be ignored." + }, + "PolicyAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyAssignmentProperties", + "description": "Properties for the policy assignment." + }, + "id": { + "type": "string", + "description": "The ID of the policy assignment.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the policy assignment.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the policy assignment.", + "readOnly": true + }, + "sku": { + "$ref": "#/definitions/PolicySku", + "description": "The policy sku. This property is optional, obsolete, and will be ignored." + }, + "location": { + "type": "string", + "description": "The location of the policy assignment. Only required when utilizing managed identity." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The managed identity associated with the policy assignment." + } + }, + "description": "The policy assignment.", + "x-ms-azure-resource": true + }, + "PolicyAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyAssignment" + }, + "description": "An array of policy assignments." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of policy assignments." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the resource identity." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "ErrorResponse": { + "description": "Error response indicates Azure Resource Manager is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "httpStatus": { + "description": "Http status code.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "errorMessage": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json new file mode 100644 index 000000000000..f8d63a0da270 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json @@ -0,0 +1,520 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyClient", + "version": "2019-06-01", + "description": "To manage and control access to your resources, you can define customized policies and assign them at a scope." + }, + "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.Authorization/policyDefinitions/{policyDefinitionName}": { + "put": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_CreateOrUpdate", + "summary": "Creates or updates a policy definition in a subscription.", + "description": "This operation creates or updates a policy definition in the given subscription with the given name.", + "x-ms-examples": { + "Create or update a policy definition": { + "$ref": "./examples/createOrUpdatePolicyDefinition.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to create." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyDefinition" + }, + "description": "The policy definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the policy definition.", + "schema": { + "$ref": "#/definitions/PolicyDefinition" + } + } + } + }, + "delete": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_Delete", + "summary": "Deletes a policy definition in a subscription.", + "description": "This operation deletes the policy definition in the given subscription with the given name.", + "x-ms-examples": { + "Delete a policy definition": { + "$ref": "./examples/deletePolicyDefinition.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK" + } + } + }, + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_Get", + "summary": "Retrieves a policy definition in a subscription.", + "description": "This operation retrieves the policy definition in the given subscription with the given name.", + "x-ms-examples": { + "Retrieve a policy definition": { + "$ref": "./examples/getPolicyDefinition.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy definition.", + "schema": { + "$ref": "#/definitions/PolicyDefinition" + } + } + } + } + }, + "/providers/Microsoft.Authorization/policyDefinitions/{policyDefinitionName}": { + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_GetBuiltIn", + "summary": "Retrieves a built-in policy definition.", + "description": "This operation retrieves the built-in policy definition with the given name.", + "x-ms-examples": { + "Retrieve a built-in policy definition": { + "$ref": "./examples/getBuiltinPolicyDefinition.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the built-in policy definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the built-in policy definition.", + "schema": { + "$ref": "#/definitions/PolicyDefinition" + } + } + } + } + }, + "/providers/Microsoft.Management/managementgroups/{managementGroupId}/providers/Microsoft.Authorization/policyDefinitions/{policyDefinitionName}": { + "put": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_CreateOrUpdateAtManagementGroup", + "summary": "Creates or updates a policy definition in a management group.", + "description": "This operation creates or updates a policy definition in the given management group with the given name.", + "x-ms-examples": { + "Create or update a policy definition at management group level": { + "$ref": "./examples/createOrUpdatePolicyDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to create." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicyDefinition" + }, + "description": "The policy definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the policy definition.", + "schema": { + "$ref": "#/definitions/PolicyDefinition" + } + } + } + }, + "delete": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_DeleteAtManagementGroup", + "summary": "Deletes a policy definition in a management group.", + "description": "This operation deletes the policy definition in the given management group with the given name.", + "x-ms-examples": { + "Delete a policy definition at management group level": { + "$ref": "./examples/deletePolicyDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "200": { + "description": "OK" + } + } + }, + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_GetAtManagementGroup", + "summary": "Retrieve a policy definition in a management group.", + "description": "This operation retrieves the policy definition in the given management group with the given name.", + "x-ms-examples": { + "Retrieve a policy definition at management group level": { + "$ref": "./examples/getPolicyDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy definition.", + "schema": { + "$ref": "#/definitions/PolicyDefinition" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyDefinitions": { + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_List", + "summary": "Retrieves policy definitions in a subscription", + "description": "This operation retrieves a list of all the policy definitions in a given subscription.", + "x-ms-examples": { + "List policy definitions by subscription": { + "$ref": "./examples/listPolicyDefinitions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy definitions.", + "schema": { + "$ref": "#/definitions/PolicyDefinitionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/policyDefinitions": { + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_ListBuiltIn", + "summary": "Retrieve built-in policy definitions", + "description": "This operation retrieves a list of all the built-in policy definitions.", + "x-ms-examples": { + "List built-in policy definitions": { + "$ref": "./examples/listBuiltInPolicyDefinitions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of built-in policy definitions.", + "schema": { + "$ref": "#/definitions/PolicyDefinitionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementgroups/{managementGroupId}/providers/Microsoft.Authorization/policyDefinitions": { + "get": { + "tags": [ + "PolicyDefinitions" + ], + "operationId": "PolicyDefinitions_ListByManagementGroup", + "summary": "Retrieve policy definitions in a management group", + "description": "This operation retrieves a list of all the policy definitions in a given management group.", + "x-ms-examples": { + "List policy definitions by management group": { + "$ref": "./examples/listPolicyDefinitionsByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy definitions.", + "schema": { + "$ref": "#/definitions/PolicyDefinitionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PolicyDefinitionProperties": { + "properties": { + "policyType": { + "type": "string", + "description": "The type of policy definition. Possible values are NotSpecified, BuiltIn, and Custom.", + "enum": [ + "NotSpecified", + "BuiltIn", + "Custom" + ], + "x-ms-enum": { + "name": "policyType", + "modelAsString": true + } + }, + "mode": { + "type": "string", + "description": "The policy definition mode. Some examples are All, Indexed, Microsoft.KeyVault.Data." + }, + "displayName": { + "type": "string", + "description": "The display name of the policy definition." + }, + "description": { + "type": "string", + "description": "The policy definition description." + }, + "policyRule": { + "type": "object", + "description": "The policy rule." + }, + "metadata": { + "type": "object", + "description": "The policy definition metadata." + }, + "parameters": { + "type": "object", + "description": "Required if a parameter is used in policy rule." + } + }, + "description": "The policy definition properties." + }, + "PolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyDefinitionProperties", + "description": "The policy definition properties." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the policy definition." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the policy definition." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource (Microsoft.Authorization/policyDefinitions)." + } + }, + "description": "The policy definition.", + "x-ms-azure-resource": true + }, + "PolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDefinition" + }, + "description": "An array of policy definitions." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of policy definitions." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ManagementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the management group.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json new file mode 100644 index 000000000000..591123069fc3 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json @@ -0,0 +1,625 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyClient", + "version": "2019-06-01", + "description": "To manage and control access to your resources, you can define customized policies and assign them at a scope." + }, + "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.Authorization/policySetDefinitions/{policySetDefinitionName}": { + "put": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_CreateOrUpdate", + "summary": "Creates or updates a policy set definition.", + "description": "This operation creates or updates a policy set definition in the given subscription with the given name.", + "x-ms-examples": { + "Create or update a policy set definition": { + "$ref": "./examples/createOrUpdatePolicySetDefinition.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to create." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + }, + "description": "The policy set definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "200": { + "description": "OK - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_Delete", + "summary": "Deletes a policy set definition.", + "description": "This operation deletes the policy set definition in the given subscription with the given name.", + "x-ms-examples": { + "Delete a policy set definition": { + "$ref": "./examples/deletePolicySetDefinition.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content - the policy set definition doesn't exist in the subscription." + }, + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_Get", + "summary": "Retrieves a policy set definition.", + "description": "This operation retrieves the policy set definition in the given subscription with the given name.", + "x-ms-examples": { + "Retrieve a policy set definition": { + "$ref": "./examples/getPolicySetDefinition.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Authorization/policySetDefinitions/{policySetDefinitionName}": { + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_GetBuiltIn", + "summary": "Retrieves a built in policy set definition.", + "description": "This operation retrieves the built-in policy set definition with the given name.", + "x-ms-examples": { + "Retrieve a built-in policy set definition": { + "$ref": "./examples/getBuiltInPolicySetDefinition.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the built in policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policySetDefinitions": { + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_List", + "summary": "Retrieves the policy set definitions for a subscription.", + "description": "This operation retrieves a list of all the policy set definitions in the given subscription.", + "x-ms-examples": { + "List policy set definitions": { + "$ref": "./examples/listPolicySetDefinitions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy set definitions.", + "schema": { + "$ref": "#/definitions/PolicySetDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Authorization/policySetDefinitions": { + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_ListBuiltIn", + "summary": "Retrieves built-in policy set definitions.", + "description": "This operation retrieves a list of all the built-in policy set definitions.", + "x-ms-examples": { + "List built-in policy set definitions": { + "$ref": "./examples/listBuiltInPolicySetDefinitions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of built in policy set definitions.", + "schema": { + "$ref": "#/definitions/PolicySetDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementgroups/{managementGroupId}/providers/Microsoft.Authorization/policySetDefinitions/{policySetDefinitionName}": { + "put": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_CreateOrUpdateAtManagementGroup", + "summary": "Creates or updates a policy set definition.", + "description": "This operation creates or updates a policy set definition in the given management group with the given name.", + "x-ms-examples": { + "Create or update a policy set definition at management group level": { + "$ref": "./examples/createOrUpdatePolicySetDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to create." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + }, + "description": "The policy set definition properties." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "200": { + "description": "OK - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_DeleteAtManagementGroup", + "summary": "Deletes a policy set definition.", + "description": "This operation deletes the policy set definition in the given management group with the given name.", + "x-ms-examples": { + "Delete a policy set definition at management group level": { + "$ref": "./examples/deletePolicySetDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content - the policy set definition doesn't exist in the subscription." + }, + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_GetAtManagementGroup", + "summary": "Retrieves a policy set definition.", + "description": "This operation retrieves the policy set definition in the given management group with the given name.", + "x-ms-examples": { + "Retrieve a policy set definition at management group level": { + "$ref": "./examples/getPolicySetDefinitionAtManagementGroup.json" + } + }, + "parameters": [ + { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the policy set definition to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the policy set definition.", + "schema": { + "$ref": "#/definitions/PolicySetDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Management/managementgroups/{managementGroupId}/providers/Microsoft.Authorization/policySetDefinitions": { + "get": { + "tags": [ + "PolicySetDefinitions" + ], + "operationId": "PolicySetDefinitions_ListByManagementGroup", + "summary": "Retrieves all policy set definitions in management group.", + "description": "This operation retrieves a list of all the a policy set definition in the given management group.", + "x-ms-examples": { + "List policy set definitions at management group level": { + "$ref": "./examples/listPolicySetDefinitionsByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ManagementGroupIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of policy set definitions.", + "schema": { + "$ref": "#/definitions/PolicySetDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PolicySetDefinitionProperties": { + "properties": { + "policyType": { + "type": "string", + "description": "The type of policy definition. Possible values are NotSpecified, BuiltIn, and Custom.", + "enum": [ + "NotSpecified", + "BuiltIn", + "Custom" + ], + "x-ms-enum": { + "name": "policyType", + "modelAsString": true + } + }, + "displayName": { + "type": "string", + "description": "The display name of the policy set definition." + }, + "description": { + "type": "string", + "description": "The policy set definition description." + }, + "metadata": { + "type": "object", + "description": "The policy set definition metadata." + }, + "parameters": { + "type": "object", + "description": "The policy set definition parameters that can be used in policy definition references." + }, + "policyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDefinitionReference" + }, + "description": "An array of policy definition references." + } + }, + "required": [ + "policyDefinitions" + ], + "description": "The policy set definition properties." + }, + "PolicyDefinitionReference": { + "properties": { + "policyDefinitionId": { + "type": "string", + "description": "The ID of the policy definition or policy set definition." + }, + "parameters": { + "type": "object", + "description": "Required if a parameter is used in policy rule." + } + }, + "description": "The policy definition reference." + }, + "PolicySetDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicySetDefinitionProperties", + "description": "The policy definition properties." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the policy set definition." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the policy set definition." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource (Microsoft.Authorization/policySetDefinitions)." + } + }, + "description": "The policy set definition.", + "x-ms-azure-resource": true + }, + "PolicySetDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicySetDefinition" + }, + "description": "An array of policy set definitions." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of policy set definitions." + }, + "ErrorResponse": { + "description": "Error response indicates Azure Resource Manager is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "httpStatus": { + "description": "Http status code.", + "type": "string" + }, + "errorCode": { + "description": "Error code.", + "type": "string" + }, + "errorMessage": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ManagementGroupIdParameter": { + "name": "managementGroupId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the management group.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + } +} diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index 6afd2005a1a8..d92100bcc165 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -25,6 +25,7 @@ batch: - tag: package-features-2015-12 - tag: package-locks-2016-09 - tag: package-locks-2015-01 + - tag: package-policy-2019-06 - tag: package-policy-2019-01 - tag: package-policy-2018-05 - tag: package-policy-2018-03 @@ -80,6 +81,16 @@ namespace: locks output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-01-01/locks ``` +### Tag: package-policy-2019-06 and go + +These settings apply only when `--tag=package-policy-2019-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-policy-2019-06' && $(go) +namespace: policy +output-folder: $(go-sdk-folder)/services/resources/mgmt/2019-06-01/policy +``` + ### Tag: package-policy-2019-01 and go These settings apply only when `--tag=package-policy-2019-01 --go` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 2d017716a504..3b5d87adc3f5 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -36,6 +36,10 @@ tag: package-features-2015-12 tag: package-locks-2016-09 ``` +``` yaml $(package-policy) +tag: package-policy-2019-06 +``` + ``` yaml $(package-policy) tag: package-policy-2019-01 ``` @@ -92,6 +96,21 @@ input-file: - Microsoft.Authorization/stable/2015-01-01/locks.json ``` +### Tag: package-policy-2019-06 + +These settings apply only when `--tag=package-policy-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-policy-2019-06' +input-file: +- Microsoft.Authorization/stable/2019-06-01/policyAssignments.json +- Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json +- Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json + +# Needed when there is more than one input file +override-info: + title: PolicyClient +``` + ### Tag: package-policy-2019-01 These settings apply only when `--tag=package-policy-2019-01` is specified on the command line. @@ -482,6 +501,7 @@ Generate all API versions currently shipped for this package batch: - tag: package-features-2015-12 - tag: package-locks-2016-09 + - tag: package-policy-2019-06 - tag: package-policy-2019-01 - tag: package-policy-2018-05 - tag: package-policy-2018-03 @@ -524,6 +544,24 @@ generate-interface: true fconfig: '{"moduleName": "Locks"}' ``` +### Tag: package-policy-2019-06 and java + +These settings apply only when `--tag=package-policy-2019-06 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2019-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2019_06_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + ### Tag: package-policy-2019-01 and java These settings apply only when `--tag=package-policy-2019-01 --java` is specified on the command line. @@ -745,6 +783,9 @@ input-file: - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json - $(this-folder)/Microsoft.Authorization/stable/2015-01-01/locks.json + - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json + - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json + - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policyAssignments.json - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policyDefinitions.json - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policySetDefinitions.json diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index 560d35a698fc..afc89c937c2b 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -26,6 +26,7 @@ batch: - tag: package-locks-2015-01 - tag: package-managedapplications-2018-06 - tag: package-managedapplications-2017-09 + - tag: package-policy-2019-06 - tag: package-policy-2019-01 - tag: package-policy-2018-05 - tag: package-policy-2018-03 @@ -112,6 +113,17 @@ python: output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications ``` +### Tag: package-policy-2019-06 and python + +These settings apply only when `--tag=package-policy-2019-06 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-policy-2019-06' && $(python) +python: + namespace: azure.mgmt.resource.policy.v2019_06_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_06_01 +``` + ### Tag: package-policy-2019-01 and python These settings apply only when `--tag=package-policy-2019-01 --python` is specified on the command line. From c1bf282da72e7a02d264e9fd996f76fb410b7e7f Mon Sep 17 00:00:00 2001 From: aalevato <49961965+aalevato@users.noreply.github.com> Date: Tue, 27 Aug 2019 18:51:24 -0700 Subject: [PATCH 027/123] Adding support to the LogicApps Workflow Run Delete operation. (#6994) --- .../examples/WorkflowRuns_Delete.json | 13 +++++ .../preview/2018-07-01-preview/logic.json | 49 +++++++++++++++++++ .../examples/WorkflowRuns_Delete.json | 13 +++++ .../stable/2016-06-01/logic.json | 49 +++++++++++++++++++ 4 files changed, 124 insertions(+) create mode 100644 specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json create mode 100644 specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json new file mode 100644 index 000000000000..5c8fd3befe8c --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "test-resource-group", + "workflowName": "test-workflow", + "runName": "08586676746934337772206998657CU22" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json index eeb28994adaf..0ed59060e6ee 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json @@ -1558,6 +1558,55 @@ } } } + }, + "delete": { + "tags": [ + "WorkflowRuns" + ], + "operationId": "WorkflowRuns_Delete", + "description": "Deletes a workflow run.", + "x-ms-examples": { + "Delete a run for a workflow": { + "$ref": "./examples/WorkflowRuns_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/cancel": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json new file mode 100644 index 000000000000..35927d4b65c4 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2016-06-01", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "test-resource-group", + "workflowName": "test-workflow", + "runName": "08586676746934337772206998657CU22" + }, + "responses": { + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json index 77d4055b2c5e..25f30f1cac09 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json @@ -1558,6 +1558,55 @@ } } } + }, + "delete": { + "tags": [ + "WorkflowRuns" + ], + "operationId": "WorkflowRuns_Delete", + "description": "Deletes a workflow run.", + "x-ms-examples": { + "Delete a run for a workflow": { + "$ref": "./examples/WorkflowRuns_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/cancel": { From 7d2c1d8bfce739879b16e7bd414edebe286fbc35 Mon Sep 17 00:00:00 2001 From: Zhenfeng Date: Tue, 27 Aug 2019 18:51:52 -0700 Subject: [PATCH 028/123] Align File swagger with the Blob swagger (#7014) --- .../Microsoft.Storage/stable/2019-04-01/file.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json index b6b39a930c37..3be1fbfd7991 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json @@ -63,7 +63,7 @@ "tags": [ "FileService" ], - "operationId": "FileServices_PutServiceProperties", + "operationId": "FileServices_SetServiceProperties", "x-ms-examples": { "PutFileServices": { "$ref": "./examples/FileServicesPut.json" @@ -212,6 +212,9 @@ "$ref": "#/definitions/ErrorResponse" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, From af432317799bdb39c6e1561b9a46a710db54f7e3 Mon Sep 17 00:00:00 2001 From: zhiyuanxia <52429333+zhiyuanxia@users.noreply.github.com> Date: Tue, 27 Aug 2019 19:49:17 -0700 Subject: [PATCH 029/123] Update Locations Parameter for Onprem NRP (#7053) * Update Locations Operation Id --- .../Microsoft.Network.Admin/preview/2015-06-15/Network.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json index 80391a71dcca..5135c591e5f4 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json @@ -87,7 +87,7 @@ "tags": [ "Network" ], - "operationId": "Locations_List", + "operationId": "OnPremLocations_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" From 961312c52574402611fea4396c20adaf8f642ee3 Mon Sep 17 00:00:00 2001 From: yanfa317 <53584318+yanfa317@users.noreply.github.com> Date: Tue, 27 Aug 2019 20:46:26 -0700 Subject: [PATCH 030/123] Update ManagedNetwork Swagger (#7035) * UpdateManagedNetworkSwagger * rename required type * Update readme.md * Update readme.md --- .../ManagedNetwork/ManagedNetworksGet.json | 2 +- .../ManagedNetworksListByResourceGroup.json | 2 +- .../ManagedNetworksListBySubscription.json | 2 +- .../ManagedNetwork/ManagedNetworksPatch.json | 6 ++-- .../ManagedNetwork/ManagedNetworksPut.json | 6 ++-- .../ManagedNetworkPeeringPoliciesGet.json | 2 +- ...rkPeeringPoliciesListByManagedNetwork.json | 2 +- .../ManagedNetworkPeeringPoliciesPut.json | 6 ++-- .../2019-06-01-preview/managedNetwork.json | 36 +++++++++---------- .../managednetwork/resource-manager/readme.md | 19 ++++++---- 10 files changed, 43 insertions(+), 40 deletions(-) diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json index 46f750fc191d..df8767b44f41 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json @@ -12,7 +12,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json index eac86d4ff8bb..f9493033130a 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json @@ -13,7 +13,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json index be6cdeb0bad1..608bc26f8ec0 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json @@ -12,7 +12,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json index e1c562701091..c2d76c7cb580 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json @@ -6,7 +6,7 @@ "resourceGroupName": "myResourceGroup", "managedNetworkName": "myManagedNetwork", "parameters": { - "tags": {} + "tags": [] } }, "responses": { @@ -15,7 +15,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", @@ -66,7 +66,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json index 084e5ebb2405..d97e7acebf4d 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json @@ -6,7 +6,7 @@ "resourceGroupName": "myResourceGroup", "managedNetworkName": "myManagedNetwork", "managedNetwork": { - "tags": {}, + "tags": [], "location": "eastus", "properties": { "scope": { @@ -52,7 +52,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", @@ -103,7 +103,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": {}, + "tags": [], "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesGet.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesGet.json index f7dabe223031..acf6ce84b7b3 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesGet.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesGet.json @@ -16,7 +16,7 @@ "properties": { "provisioningState": "Succeeded", "etag": "asdf-asdf-asdf2", - "peeringPolicyType": "HubAndSpokeTopology", + "type": "HubAndSpokeTopology", "hub": { "id": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet" }, diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesListByManagedNetwork.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesListByManagedNetwork.json index 6934ff5c83e6..6fc8caa8cf9e 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesListByManagedNetwork.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesListByManagedNetwork.json @@ -17,7 +17,7 @@ "properties": { "provisioningState": "Succeeded", "etag": "asdf-asdf-asdf2", - "peeringPolicyType": "HubAndSpokeTopology", + "type": "HubAndSpokeTopology", "hub": { "id": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet" }, diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesPut.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesPut.json index a09f56bd3de4..14142d4d37da 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesPut.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetworkPeeringPolicy/ManagedNetworkPeeringPoliciesPut.json @@ -8,7 +8,7 @@ "managedNetworkPeeringPolicyName": "myHubAndSpoke", "managedNetworkPolicy": { "properties": { - "peeringPolicyType": "HubAndSpokeTopology", + "type": "HubAndSpokeTopology", "hub": { "id": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet" }, @@ -29,7 +29,7 @@ "properties": { "provisioningState": "Succeeded", "etag": "asdf-asdf-asdf2", - "peeringPolicyType": "HubAndSpokeTopology", + "type": "HubAndSpokeTopology", "hub": { "id": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet" }, @@ -49,7 +49,7 @@ "properties": { "provisioningState": "Succeeded", "etag": "asdf-asdf-asdf2", - "peeringPolicyType": "HubAndSpokeTopology", + "type": "HubAndSpokeTopology", "hub": { "id": "/subscriptionB/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myHubVnet" }, diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json index 661b8e6bddcb..a2e6b15144c8 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json @@ -991,7 +991,6 @@ "type": "object", "properties": { "scope": { - "readOnly": true, "$ref": "#/definitions/Scope", "description": "The collection of management groups, subscriptions, virtual networks, and subnets by the Managed Network. This is a read-only property that is reflective of all ScopeAssignments for this Managed Network" }, @@ -1012,8 +1011,11 @@ "type": "object", "properties": { "tags": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/TagsObject", + "type": "array", + "items": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagsObject" + }, "description": "Updates the tags property of the Managed Network" } }, @@ -1230,9 +1232,8 @@ "description": "The Managed Network Peering Policy resource" }, "ManagedNetworkPeeringPolicyProperties": { - "discriminator": "peeringPolicyType", "properties": { - "peeringPolicyType": { + "type": { "type": "string", "enum": [ "HubAndSpokeTopology", @@ -1269,7 +1270,7 @@ } ], "required": [ - "peeringPolicyType" + "type" ], "description": "Properties of a Managed Network Peering Policy" }, @@ -1413,15 +1414,15 @@ "description": "The resource model definition for a ARM tracked top level resource", "properties": { "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-ms-mutability": [ - "read", - "create", - "update" - ], + "type": "array", + "items": { + "type": "string", + "x-ms-mutability": [ + "read", + "create", + "update" + ] + }, "description": "Resource tags." }, "location": { @@ -1460,10 +1461,7 @@ "description": "Generic pointer to a resource" }, "TagsObject": { - "type": "object", - "additionalProperties": { - "type": "string" - }, + "type": "string", "description": "Resource tags." }, "ResourceProperties": { diff --git a/specification/managednetwork/resource-manager/readme.md b/specification/managednetwork/resource-manager/readme.md index 37cf92ae60cc..c4ae8f23370f 100644 --- a/specification/managednetwork/resource-manager/readme.md +++ b/specification/managednetwork/resource-manager/readme.md @@ -29,7 +29,7 @@ openapi-type: arm tag: package-2019-06-01-preview ``` -### Tag: package-2019-03-01-preview +### Tag: package-2019-06-01-preview These settings apply only when `--tag=package-2019-06-01-preview` is specified on the command line. @@ -54,13 +54,21 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-sdk-for-ruby - after_scripts: - - bundle install && rake arm:regen_all_profiles['azure_mgmt_managed_network'] ``` +## C# +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. -## Multi-API/Profile support for AutoRest v3 generators +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.ManagedNetwork + clear-output-folder: true +``` +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. This block is updated by an automatic script. Edits may be lost! @@ -68,11 +76,9 @@ This block is updated by an automatic script. Edits may be lost! ``` yaml $(tag) == 'all-api-versions' /* autogenerated */ # include the azure profile definitions from the standard location require: $(this-folder)/../../../profiles/readme.md - # all the input files across all versions input-file: - $(this-folder)/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json - ``` If there are files that should not be in the `all-api-versions` set, @@ -82,4 +88,3 @@ uncomment the `exclude-file` section below and add the file paths. #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - From 1dc369826585da2fd6bb47276fedbbeca0bab482 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Wed, 28 Aug 2019 03:47:35 +0000 Subject: [PATCH 031/123] regenerated all-api-versions --- specification/managednetwork/resource-manager/readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specification/managednetwork/resource-manager/readme.md b/specification/managednetwork/resource-manager/readme.md index c4ae8f23370f..381cf01e0494 100644 --- a/specification/managednetwork/resource-manager/readme.md +++ b/specification/managednetwork/resource-manager/readme.md @@ -76,9 +76,11 @@ This block is updated by an automatic script. Edits may be lost! ``` yaml $(tag) == 'all-api-versions' /* autogenerated */ # include the azure profile definitions from the standard location require: $(this-folder)/../../../profiles/readme.md + # all the input files across all versions input-file: - $(this-folder)/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json + ``` If there are files that should not be in the `all-api-versions` set, From 9b465d1b55843352ace3386b6ac7da3308c9504d Mon Sep 17 00:00:00 2001 From: Ruoxuan Wang <52271048+ruowan@users.noreply.github.com> Date: Wed, 28 Aug 2019 12:57:17 +0800 Subject: [PATCH 032/123] update avocado@0.6.0 (#7054) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 068193360e3f..995d0fd1053e 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "description": "Tests for Azure REST API Specifications", "license": "MIT", "devDependencies": { - "@azure/avocado": "^0.5.1", + "@azure/avocado": "^0.6.0", "@azure/rest-api-specs-scripts": "^0.4.0", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", From 7a1256b49e1f2029a9bd4ea76ac899e4b72f7378 Mon Sep 17 00:00:00 2001 From: Anthony Martin Date: Tue, 27 Aug 2019 22:30:16 -0700 Subject: [PATCH 033/123] Add ARM resources specs for 2019-08-01 (#6948) * Copy 2019-07-01 -> 2019-08-01 * Create 2019-08-01 resources spec * Add 202 example responses for export * Include final-state-via for export * Address PR feedback --- .../examples/CreateResourceGroup.json | 32 + .../examples/ExportResourceGroup.json | 68 + .../ExportResourceGroupWithFiltering.json | 46 + .../PutDeploymentAtManagementGroup.json | 137 + .../examples/PutDeploymentAtScope.json | 137 + .../examples/PutDeploymentAtTenant.json | 136 + ...ntWithOnErrorDeploymentLastSuccessful.json | 54 + ...thOnErrorDeploymentSpecificDeployment.json | 55 + .../stable/2019-08-01/resources.json | 4944 +++++++++++++++++ .../resource-manager/readme.csharp.md | 81 + .../resources/resource-manager/readme.md | 25 +- .../resource-manager/readme.python.md | 12 + 12 files changed, 5726 insertions(+), 1 deletion(-) create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CreateResourceGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroupWithFiltering.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CreateResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CreateResourceGroup.json new file mode 100644 index 000000000000..083c1af381b1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CreateResourceGroup.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-08-01", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup", + "name": "myResourceGroup", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup", + "name": "myResourceGroup", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroup.json new file mode 100644 index 000000000000..160c0daa16db --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroup.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "eaee6a92-e973-4922-9471-3a0a6abf81cd", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-08-01", + "parameters": { + "resources": [ + "*" + ], + "options": "IncludeParameterDefaultValue,IncludeComments" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/eaee6a92-e973-4922-9471-3a0a6abf81cd/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_name": { + "defaultValue": "myFirstResource", + "type": "String" + }, + "myResourceType_mySecondResource_name": { + "defaultValue": "mySecondResource", + "type": "String" + }, + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_myFirstResource_name')]", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + }, + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "[parameters('myResourceType_mySecondResource_name')]", + "location": "West US", + "properties": { + "customProperty": "hello!" + } + } + ] + }, + "error": { + "code": "ExportTemplateCompletedWithErrors", + "message": "Export template operation completed with errors. Some resources were not exported. Please see details for more information.", + "details": [] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroupWithFiltering.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroupWithFiltering.json new file mode 100644 index 000000000000..3c68ba9aa3e6 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/ExportResourceGroupWithFiltering.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "eaee6a92-e973-4922-9471-3a0a6abf81cd", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-08-01", + "parameters": { + "resources": [ + "/subscriptions/eaee6a92-e973-4922-9471-3a0a6abf81cd/resourceGroups/myResourceGroup/providers/My.RP/myResourceType/myFirstResource" + ], + "options": "SkipResourceNameParameterization" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/eaee6a92-e973-4922-9471-3a0a6abf81cd/operationresults/c9bbccf4-e16a-4eb7-befb-2e2e5195c347?api-version=2018-08-01" + } + }, + "200": { + "body": { + "template": { + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "myResourceType_myFirstResource_secret": { + "defaultValue": null, + "type": "SecureString" + } + }, + "variables": {}, + "resources": [ + { + "type": "My.RP/myResourceType", + "apiVersion": "2019-01-01", + "name": "myFirstResource", + "location": "West US", + "properties": { + "secret": "[parameters('myResourceType_myFirstResource_secret')]" + } + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json new file mode 100644 index 000000000000..9768156bd048 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "groupId": "tiano-group1", + "deploymentName": "mg-dep01", + "api-version": "2019-08-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Resources/deployments/mg-dep01", + "name": "mg-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Resources/deployments/mg-dep01", + "name": "mg-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json new file mode 100644 index 000000000000..6404313f806d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "scope": "providers/Microsoft.Management/managementGroups/tiano-group1", + "deploymentName": "mg-dep01", + "api-version": "2019-08-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Resources/deployments/mg-dep01", + "name": "mg-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Resources/deployments/mg-dep01", + "name": "mg-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Management/managementGroups/tiano-group1/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json new file mode 100644 index 000000000000..058ef50d7d2a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "deploymentName": "tenant-dep01", + "api-version": "2019-08-01", + "parameters": { + "location": "eastus", + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Incremental" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Resources/deployments/tenant-dep01", + "name": "tenant-dep01", + "type": "Microsoft.Resources/deployments", + "location": "eastus", + "properties": { + "parameters": {}, + "mode": "Incremental", + "provisioningState": "Accepted", + "timestamp": "2019-04-24T22:52:38.7895563Z", + "duration": "PT1.2970875S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Authorization", + "resourceTypes": [ + { + "resourceType": "policyDefinitions", + "locations": [ + null + ] + }, + { + "resourceType": "policyAssignments", + "locations": [ + null + ] + } + ] + }, + { + "namespace": "Microsoft.Resources", + "resourceTypes": [ + { + "resourceType": "deployments", + "locations": [ + "eastus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "/providers/Microsoft.Authorization/policyDefinitions/policy2", + "resourceType": "Microsoft.Authorization/policyDefinitions", + "resourceName": "policy2" + } + ], + "id": "/providers/Microsoft.Authorization/policyAssignments/location-lock", + "resourceType": "Microsoft.Authorization/policyAssignments", + "resourceName": "location-lock" + } + ] + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json new file mode 100644 index 000000000000..a4b44d001f93 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "deploymentName": "exampleDeploymentName", + "api-version": "2019-08-01", + "parameters": { + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/exampleDeploymentName", + "name": "exampleDeploymentName", + "type": "Microsoft.Resources/deployments", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/exampleDeploymentName", + "name": "exampleDeploymentName", + "type": "Microsoft.Resources/deployments", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "mode": "Complete", + "onErrorDeployment": { + "type": "LastSuccessful", + "deploymentName": "{nameOfLastSuccesfulDeployment}" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json new file mode 100644 index 000000000000..63c59f98956e --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "deploymentName": "exampleDeploymentName", + "api-version": "2019-08-01", + "parameters": { + "properties": { + "templateLink": "{templateUri}", + "parameters": {}, + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "{nameOfDeploymentToUse}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/exampleDeploymentName", + "name": "exampleDeploymentName", + "type": "Microsoft.Resources/deployments", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "{nameOfDeploymentToUse}" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourcegroups/myResourceGroup/providers/Microsoft.Resources/deployments/exampleDeploymentName", + "name": "exampleDeploymentName", + "type": "Microsoft.Resources/deployments", + "properties": { + "provisioningState": "Accepted", + "correlationId": "{correlationId}", + "timestamp": "2019-03-01T00:00:00.0000000Z", + "mode": "Complete", + "onErrorDeployment": { + "type": "SpecificDeployment", + "deploymentName": "{nameOfDeploymentToUse}" + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json new file mode 100644 index 000000000000..303ac03a25c1 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -0,0 +1,4944 @@ +{ + "swagger": "2.0", + "info": { + "title": "ResourceManagementClient", + "version": "2019-08-01", + "description": "Provides operations for working with resources and resource groups." + }, + "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.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", + "parameters": [ + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", + "parameters": [ + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/{resourceProviderNamespace}": { + "get": { + "tags": [ + "Providers" + ], + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", + "parameters": [ + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ResourceGroups" + ], + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "Parameters supplied to the create or update a resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceGroupPatchable" + }, + "description": "Parameters supplied to update a resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { + "post": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." + } + ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the result of the export.", + "schema": { + "$ref": "#/definitions/ResourceGroupExportResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resource groups." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resource groups.", + "schema": { + "$ref": "#/definitions/ResourceGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/ResourceGroupFilter" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { + "tags": [ + "Resources" + ], + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", + "parameters": [ + { + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { + "tags": [ + "Resources" + ], + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", + "parameters": [ + { + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resource groups." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources.", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Delete", + "description": "Deletes a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Update", + "description": "Updates a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_Get", + "description": "Gets a resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{resourceId}": { + "head": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Resources" + ], + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Resources" + ], + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Resources" + ], + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { + "tags": [ + "Tags" + ], + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag to create." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Tags" + ], + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", + "parameters": [ + { + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "GenericResourceFilter": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource filter." + }, + "ResourceGroupFilter": { + "properties": { + "tagName": { + "type": "string", + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource group filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "ProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "An array of resource providers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource providers." + }, + "GenericResource": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "The plan of the resource." + }, + "properties": { + "type": "object", + "description": "The resource properties." + }, + "kind": { + "type": "string", + "description": "The kind of the resource.", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + "managedBy": { + "type": "string", + "description": "ID of the resource that manages this resource." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the resource." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Resource information." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "The offer ID." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + }, + "version": { + "type": "string", + "description": "The plan's version." + } + }, + "description": "Plan for the resource." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The SKU name." + }, + "tier": { + "type": "string", + "description": "The SKU tier." + }, + "size": { + "type": "string", + "description": "The SKU size." + }, + "family": { + "type": "string", + "description": "The SKU family." + }, + "model": { + "type": "string", + "description": "The SKU model." + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "The SKU capacity." + } + }, + "description": "SKU for the resource." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GenericResource" + }, + "description": "An array of resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource groups." + }, + "ResourceGroup": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource group." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource group." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "location": { + "type": "string", + "description": "The location of the resource group. It cannot be changed after the resource group has been created. It must be one of the supported Azure locations." + }, + "managedBy": { + "type": "string", + "description": "The ID of the resource that manages this resource group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the resource group." + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "Resource group information." + }, + "ResourceGroupPatchable": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource group." + }, + "properties": { + "$ref": "#/definitions/ResourceGroupProperties", + "description": "The resource group properties." + }, + "managedBy": { + "type": "string", + "description": "The ID of the resource that manages this resource group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the resource group." + } + }, + "description": "Resource group information." + }, + "ResourceGroupProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state. " + } + }, + "description": "The resource group properties." + }, + "ResourceGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "An array of resource groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of resource groups." + }, + "ResourcesMoveInfo": { + "properties": { + "resources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IDs of the resources." + }, + "targetResourceGroup": { + "type": "string", + "description": "The target resource group." + } + }, + "description": "Parameters of move resources." + }, + "ExportTemplateRequest": { + "properties": { + "resources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IDs of the resources to filter the export by. To export all resources, supply an array with single entry '*'." + }, + "options": { + "type": "string", + "description": "The export template options. A CSV-formatted list containing zero or more of the following: 'IncludeParameterDefaultValue', 'IncludeComments', 'SkipResourceNameParameterization', 'SkipAllParameterization'" + } + }, + "description": "Export resource group template request parameters." + }, + "TagCount": { + "properties": { + "type": { + "type": "string", + "description": "Type of count." + }, + "value": { + "type": "integer", + "description": "Value of count." + } + }, + "description": "Tag count." + }, + "TagValue": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The tag ID." + }, + "tagValue": { + "type": "string", + "description": "The tag value." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." + } + }, + "x-ms-azure-resource": true, + "description": "Tag information." + }, + "TagDetails": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The tag ID." + }, + "tagName": { + "type": "string", + "description": "The tag name." + }, + "count": { + "$ref": "#/definitions/TagCount", + "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/TagValue" + }, + "description": "The list of tag values." + } + }, + "description": "Tag details." + }, + "TagsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagDetails" + }, + "description": "An array of tags." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of subscription tags." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true, + "description": "Specified resource." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "ResourceGroupExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The template export error." + } + }, + "description": "Resource group export result." + }, + "Operation": { + "description": "Microsoft.Resources operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of a deployment.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/readme.csharp.md b/specification/resources/resource-manager/readme.csharp.md index 8ecb43549df2..9eebe1e0c3d4 100644 --- a/specification/resources/resource-manager/readme.csharp.md +++ b/specification/resources/resource-manager/readme.csharp.md @@ -110,6 +110,19 @@ batch: ApiVersionName: Api2019_07_01 - policyD-2016-12-01: true ApiVersionName: Api2019_07_01 + + - resources-2019-08-01: true + ApiVersionName: Api2019_08_01 + - links-2016-09-01: true + ApiVersionName: Api2019_08_01 + - subscription-2016-06-01: true + ApiVersionName: Api2019_08_01 + - locks-2016-09-01: true + ApiVersionName: Api2019_08_01 + - policyA-2016-12-01: true + ApiVersionName: Api2019_08_01 + - policyD-2016-12-01: true + ApiVersionName: Api2019_08_01 ``` @@ -504,6 +517,74 @@ input-file: - Microsoft.Authorization/stable/2016-12-01/policyDefinitions.json ``` +``` yaml $(Separator) +########################################################################### +########################################################################### +``` + + +``` yaml $(resources-2019-08-01) +tag: pkg-2019-08-Az-res +``` + +``` yaml $(links-2016-09-01) +tag: pkg-2019-08-Az-lnk +``` + +``` yaml $(subscription-2016-06-01) +tag: pkg-2019-08-Az-sub +``` + +``` yaml $(locks-2016-09-01) +tag: pkg-2019-08-Az-loc +``` + +``` yaml $(policyA-2016-12-01) +tag: pkg-2019-08-Az-polA +``` + +``` yaml $(policyD-2016-12-01) +tag: pkg-2019-08-Az-polD +``` + + +## Tag: Packages for Azure Stack +### 1) pkg-2019-08-AzStk-res +``` yaml $(tag) == 'pkg-2019-08-Az-res' +input-file: +- Microsoft.Resources/stable/2019-08-01/resources.json +``` + +### 2) pkg-2019-08-AzStk-lnk +``` yaml $(tag) == 'pkg-2019-08-Az-lnk' +input-file: +- Microsoft.Resources/stable/2016-09-01/links.json +``` + +### 3) pkg-2019-08-AzStk-sub +``` yaml $(tag) == 'pkg-2019-08-Az-sub' +input-file: +- Microsoft.Resources/stable/2016-06-01/subscriptions.json +``` + +### 4) pkg-2019-08-AzStk-loc +``` yaml $(tag) == 'pkg-2019-08-Az-loc' +input-file: +- Microsoft.Authorization/stable/2016-09-01/locks.json +``` + +### 5) pkg-2019-08-AzStk-polA +``` yaml $(tag) == 'pkg-2019-08-Az-polA' +input-file: +- Microsoft.Authorization/stable/2016-12-01/policyAssignments.json +``` + +### 6) pkg-2019-08-AzStk-polD +``` yaml $(tag) == 'pkg-2019-08-Az-polD' +input-file: +- Microsoft.Authorization/stable/2016-12-01/policyDefinitions.json +``` + ### Profile: hybrid_2018_03_01 These settings apply only when `--profile=hybrid_2018_03_01` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 3b5d87adc3f5..d4c935f6da27 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -45,7 +45,7 @@ tag: package-policy-2019-01 ``` ``` yaml $(package-resources) -tag: package-resources-2019-07 +tag: package-resources-2019-08 ``` ``` yaml $(package-subscriptions) @@ -217,6 +217,15 @@ input-file: - Microsoft.Authorization/preview/2015-10-01-preview/policy.json ``` +### Tag: package-resources-2019-08 + +These settings apply only when `--tag=package-resources-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2019-08' +input-file: +- Microsoft.Resources/stable/2019-08-01/resources.json +``` + ### Tag: package-resources-2019-07 These settings apply only when `--tag=package-resources-2019-07` is specified on the command line. @@ -506,6 +515,7 @@ batch: - tag: package-policy-2018-05 - tag: package-policy-2018-03 - tag: package-policy-2016-12 + - tag: package-resources-2019-08 - tag: package-resources-2019-07 - tag: package-resources-2019-0510 - tag: package-resources-2019-05 @@ -634,6 +644,19 @@ directive: transform: $['x-ms-client-name'] = 'scopeProperty' ``` +### Tag: package-resources-2019-08 and java + +These settings apply only when `--tag=package-resources-2019-08 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-08' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_08_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_08_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-resources-2019-07 and java These settings apply only when `--tag=package-resources-2019-07 --java` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index afc89c937c2b..99f59b17746e 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -34,6 +34,7 @@ batch: - tag: package-policy-2016-12 - tag: package-policy-2016-04 - tag: package-policy-2015-10 + - tag: package-resources-2019-08 - tag: package-resources-2019-07 - tag: package-resources-2019-0510 - tag: package-resources-2019-05 @@ -201,6 +202,17 @@ python: output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview ``` +### Tag: package-resources-2019-08 and python + +These settings apply only when `--tag=package-resources-2019-08 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-resources-2019-08' && $(python) +python: + namespace: azure.mgmt.resource.resources.v2019_08_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_08_01 +``` + ### Tag: package-resources-2019-07 and python These settings apply only when `--tag=package-resources-2019-07 --python` is specified on the command line. From 8f6b897bc0720f2101a7f90c899c5083e63ddf9f Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Wed, 28 Aug 2019 05:31:42 +0000 Subject: [PATCH 034/123] regenerated all-api-versions --- specification/resources/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index d4c935f6da27..88ea43b5333c 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -824,6 +824,7 @@ input-file: - $(this-folder)/Microsoft.Authorization/stable/2016-12-01/policyAssignments.json - $(this-folder)/Microsoft.Authorization/stable/2016-04-01/policy.json - $(this-folder)/Microsoft.Authorization/preview/2015-10-01-preview/policy.json + - $(this-folder)/Microsoft.Resources/stable/2019-08-01/resources.json - $(this-folder)/Microsoft.Resources/stable/2019-07-01/resources.json - $(this-folder)/Microsoft.Resources/stable/2019-05-10/resources.json - $(this-folder)/Microsoft.Resources/stable/2019-05-01/resources.json From 93e3a5248c3c408ac981488decefe3aac680925a Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 01:36:21 -0400 Subject: [PATCH 035/123] chore: jsonfmt sql (#7055) --- .../preview/2018-06-01-preview/PrivateLinkResources.json | 2 +- .../2018-06-01-preview/examples/PrivateLinkResourcesGet.json | 4 ++-- .../2018-06-01-preview/examples/PrivateLinkResourcesList.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json index d2ddce5eb176..3f8be5fd41f1 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json @@ -289,4 +289,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json index 2d72ad7c75a2..22559161aa91 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesGet.json @@ -3,7 +3,7 @@ "subscriptionId": "00000000-1111-2222-3333-444444444444", "resourceGroupName": "Default", "serverName": "test-svr", - "groupName" : "plr", + "groupName": "plr", "api-version": "2018-06-01-preview" }, "responses": { @@ -21,4 +21,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json index 0760568b3d12..508e694ecaf4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateLinkResourcesList.json @@ -24,4 +24,4 @@ } } } -} \ No newline at end of file +} From 29915d7a3fec1333ba3bf282317cd8825e76eb33 Mon Sep 17 00:00:00 2001 From: nivimsft Date: Tue, 27 Aug 2019 23:01:50 -0700 Subject: [PATCH 036/123] Adding revalidate API for SQL and managed instance encryption protectors (#6672) --- custom-words.txt | 4 +- .../encryptionProtectors.json | 108 +++++++++++++++++- .../EncryptionProtectorRevalidate.json | 13 +++ .../ManagedInstanceEncryptionProtectors.json | 64 ++++++++++- ...InstanceEncryptionProtectorRevalidate.json | 13 +++ 5 files changed, 191 insertions(+), 11 deletions(-) create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json diff --git a/custom-words.txt b/custom-words.txt index 46592c167985..bb440d203a0c 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1,4 +1,4 @@ -AADDS +AADDS aadiam AATP abcxyz @@ -207,6 +207,7 @@ browsable bruceper Bsaling BYOC +BYOK BYOL BYOS bzip @@ -1166,6 +1167,7 @@ retargeted retargeting Retriable Retryable +Revalidates Revertable REVOKEACE rgname diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json index ec376c42b9d8..673df291e8d9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json @@ -16,6 +16,60 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector/{encryptionProtectorName}/revalidate": { + "post": { + "tags": [ + "EncryptionProtectors" + ], + "description": "Revalidates an existing encryption protector.", + "operationId": "EncryptionProtectors_Revalidate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully revalidated the encryption protector." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Revalidates the encryption protector": { + "$ref": "./examples/EncryptionProtectorRevalidate.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector": { "get": { "tags": [ @@ -45,7 +99,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-pageable": { @@ -101,7 +155,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -161,7 +215,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured on server. Please contact support.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." }, "202": { "description": "Accepted" @@ -250,7 +304,8 @@ "properties": { "kind": { "description": "Kind of encryption protector. This is metadata used for the Azure portal experience.", - "type": "string" + "type": "string", + "readOnly": true }, "location": { "description": "Resource location.", @@ -298,6 +353,14 @@ "type": "string", "x-ms-parameter-location": "method" }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, "DatabaseNameParameter": { "name": "databaseName", "in": "path", @@ -305,6 +368,41 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { @@ -318,4 +416,4 @@ } } } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json new file mode 100644 index 000000000000..de53530efda5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2015-05-01-preview" + }, + "responses": { + "200": { }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json index 6c2388153be7..d66c7e1cf4c0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json @@ -16,6 +16,60 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector/{encryptionProtectorName}/revalidate": { + "post": { + "tags": [ + "ManagedInstanceEncryptionProtectors" + ], + "description": "Revalidates an existing encryption protector.", + "operationId": "ManagedInstanceEncryptionProtectors_Revalidate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "encryptionProtectorName", + "in": "path", + "description": "The name of the encryption protector to be updated.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "EncryptionProtectorName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully revalidated the encryption protector." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Revalidates the encryption protector": { + "$ref": "./examples/ManagedInstanceEncryptionProtectorRevalidate.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector": { "get": { "tags": [ @@ -45,7 +99,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-pageable": { @@ -101,7 +155,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -126,7 +180,7 @@ { "name": "encryptionProtectorName", "in": "path", - "description": "The name of the encryption protector to be created or updated.", + "description": "The name of the encryption protector to be updated.", "required": true, "type": "string", "enum": [ @@ -161,7 +215,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." + "description": "*** Error Responses: ***\n\n * 400 InvalidKeyName - An invalid value was given for the server key name.\n\n * 400 InvalidKeyType - The create server key type is not supported.\n\n * 400 InvalidUpsertKeyType - Service Managed type keys are managed by Azure SQL. This key type does not support create or update by the user.\n\n * 400 InvalidKeyUpsertRequest - The create server key request does not exist or has no properties object.\n\n * 400 InvalidEncryptionProtectorName - The encryption protector key name is not supported.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerKeyNotFound - The requested server key was not found on the current subscription.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information ." }, "202": { "description": "Accepted" @@ -352,4 +406,4 @@ } } } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json new file mode 100644 index 000000000000..3259df58fca6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "encryptionProtectorName": "current", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file From f538bd328c965d72c7bbb9429e89ecce7b8f92f5 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 02:14:53 -0400 Subject: [PATCH 037/123] chore: jsonfmt logic (#7056) --- .../2018-07-01-preview/examples/WorkflowRuns_Delete.json | 2 +- .../stable/2016-06-01/examples/WorkflowRuns_Delete.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json index 5c8fd3befe8c..3e6392f1560c 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRuns_Delete.json @@ -10,4 +10,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json index 35927d4b65c4..42c6da461598 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRuns_Delete.json @@ -10,4 +10,4 @@ "200": {}, "204": {} } -} \ No newline at end of file +} From 3018f43ed6daf7ab0acf0ec1c9563ee1dc0147cc Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 02:15:08 -0400 Subject: [PATCH 038/123] chore: jsonfmt azsadmin (#7057) --- .../Microsoft.Network.Admin/preview/2015-06-15/Network.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json index 5135c591e5f4..78c9add8cc90 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json @@ -232,7 +232,7 @@ "readOnly": true } } - }, + }, "OperationResult": { "description": "Describes results of a given operation", "properties": { @@ -242,7 +242,7 @@ "readOnly": true } } - }, + }, "Display": { "description": "Contains the localized display information for this particular operation / action.", "properties": { From dad172816ba66a8b0c7314c5a0c4ee72101170f5 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 02:15:34 -0400 Subject: [PATCH 039/123] chore: jsonfmt managednetwork (#7058) --- .../2019-06-01-preview/managedNetwork.json | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json index a2e6b15144c8..505d0362f690 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json @@ -1013,9 +1013,9 @@ "tags": { "type": "array", "items": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/TagsObject" - }, + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagsObject" + }, "description": "Updates the tags property of the Managed Network" } }, @@ -1414,15 +1414,15 @@ "description": "The resource model definition for a ARM tracked top level resource", "properties": { "tags": { - "type": "array", - "items": { - "type": "string", - "x-ms-mutability": [ - "read", - "create", - "update" - ] - }, + "type": "array", + "items": { + "type": "string", + "x-ms-mutability": [ + "read", + "create", + "update" + ] + }, "description": "Resource tags." }, "location": { From 35b484b592948aa81f9c95d2ec7425cf08fd15a2 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 02:16:00 -0400 Subject: [PATCH 040/123] chore: jsonfmt resources (#7059) --- .../stable/2019-06-01/policyAssignments.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json index 4b93d9b9b14a..025d358dfb2a 100644 --- a/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json +++ b/specification/resources/resource-manager/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json @@ -98,8 +98,7 @@ }, "Create or update a policy assignment with a managed identity": { "$ref": "./examples/createPolicyAssignmentWithIdentity.json" - } - , + }, "Create or update a policy assignment without enforcing policy effect during resource creation or update.": { "$ref": "./examples/createPolicyAssignmentWithoutEnforcement.json" } @@ -569,7 +568,7 @@ "type": "object", "description": "The policy assignment metadata." }, - "enforcementMode": { + "enforcementMode": { "type": "string", "description": "The policy assignment enforcement mode. Possible values are Default and DoNotEnforce.", "enum": [ @@ -579,7 +578,7 @@ "x-ms-enum": { "name": "enforcementMode", "modelAsString": true, - "values": [ + "values": [ { "value": "Default", "description": "The policy effect is enforced during resource creation or update." From 4afd8fcb6ec408ac4178ef05027ba2273cdf35af Mon Sep 17 00:00:00 2001 From: Tom FitzMacken Date: Wed, 28 Aug 2019 00:55:39 -0700 Subject: [PATCH 041/123] added link for definition (#6772) --- .../Microsoft.Logic/preview/2018-07-01-preview/logic.json | 2 +- .../Microsoft.Logic/stable/2016-06-01/logic.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json index 0ed59060e6ee..6eedb0189fd2 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json @@ -5293,7 +5293,7 @@ }, "definition": { "$ref": "#/definitions/Object", - "description": "The definition." + "description": "The definition. See [Schema reference for Workflow Definition Language in Azure Logic Apps](https://aka.ms/logic-apps-workflow-definition-language)." }, "parameters": { "type": "object", diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json index 25f30f1cac09..920e049a7c1f 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json @@ -5544,7 +5544,7 @@ }, "definition": { "$ref": "#/definitions/Object", - "description": "The definition." + "description": "The definition. See [Schema reference for Workflow Definition Language in Azure Logic Apps](https://aka.ms/logic-apps-workflow-definition-language)." }, "parameters": { "type": "object", From b0981cc2687195453d5eb85ca9a5c01a11b4d17d Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Wed, 28 Aug 2019 05:06:23 -0400 Subject: [PATCH 042/123] chore: jsonfmt reservations (#7041) --- .../examples/GetAvailableScope.json | 30 ++++---- .../preview/2019-04-01/reservations.json | 70 +++++++++---------- 2 files changed, 50 insertions(+), 50 deletions(-) diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json index ef87d0df991d..f3457c49d481 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/examples/GetAvailableScope.json @@ -1,28 +1,28 @@ { -"parameters": { + "parameters": { "api-version": "2019-04-01", "reservationOrderId": "276e7ae4-84d0-4da6-ab4b-d6b94f3557da", "reservationId": "356e7ae4-84d0-4da6-ab4b-d6b94f3557da", "body": { "properties": { - "scopes": [ - "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9" - ] - } + "scopes": [ + "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9" + ] } + } }, "responses": { "200": { "body": { - "properties": { - "scopes": [ - { - "scope": "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9", - "valid": true - } - ] - } - } + "properties": { + "scopes": [ + { + "scope": "/subscriptions/efc7c997-7700-4a74-b731-55aec16c15e9", + "valid": true + } + ] + } + } } } -} \ No newline at end of file +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json index ad8f0a3cfd6f..f57d4440c5bc 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-04-01/reservations.json @@ -31,15 +31,15 @@ "post": { "summary": "Get Available Scopes for `Reservation`.", "description": "Get Available Scopes for `Reservation`.\n", - "operationId": "Reservation_AvailableScopes", - "x-ms-examples": { + "operationId": "Reservation_AvailableScopes", + "x-ms-examples": { "AvailableScopes": { "$ref": "./examples/GetAvailableScope.json" } - }, + }, "x-ms-long-running-operation": true, "parameters": [ - { + { "$ref": "#/parameters/ReservationOrderIdParameter" }, { @@ -59,10 +59,10 @@ "200": { "description": "List of `Subscription`s created after the filter.", "schema": { - "$ref": "#/definitions/Properties" + "$ref": "#/definitions/Properties" } }, - "default": { + "default": { "description": "Unexpected error", "schema": { "$ref": "#/definitions/Error" @@ -1437,33 +1437,33 @@ "format": "int32", "description": "Quantity of the SKUs that are part of the Reservation. Must be greater than zero." }, - "Properties" : { - "type" : "object", + "Properties": { + "type": "object", "properties": { - "properties" :{ + "properties": { "$ref": "#/definitions/SubscriptionScopeProperties" } } }, - "SubscriptionScopeProperties":{ - "type": "object", - "properties": { - "scopes":{ + "SubscriptionScopeProperties": { + "type": "object", + "properties": { + "scopes": { "type": "array", "items": { - "$ref": "#/definitions/ScopeProperties" + "$ref": "#/definitions/ScopeProperties" } - } - } - }, - "ScopeProperties":{ - "type": "object", - "properties": { - "scope": { - "type": "string" - }, - "valid": { - "type": "boolean" + } + } + }, + "ScopeProperties": { + "type": "object", + "properties": { + "scope": { + "type": "string" + }, + "valid": { + "type": "boolean" } } }, @@ -1488,17 +1488,17 @@ }, "parameters": { "ScopeParameter": { - "name": "body", - "x-ms-parameter-location": "method", - "in": "body", - "required": true, - "schema": { - "type": "array", - "items": { - "type": "string" - } + "name": "body", + "x-ms-parameter-location": "method", + "in": "body", + "required": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } } - }, + }, "PurchaseParameter": { "name": "body", "x-ms-parameter-location": "method", From 08e29aba646dd8bdf542c7733f1b62a6a4d88171 Mon Sep 17 00:00:00 2001 From: disreedh <54045317+disreedh@users.noreply.github.com> Date: Wed, 28 Aug 2019 02:14:08 -0700 Subject: [PATCH 043/123] add SocketAddr matchvariable (#6944) --- .../stable/2019-03-01/webapplicationfirewall.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json index 7c687789c1ea..a49a01a2f97a 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json @@ -497,7 +497,8 @@ "RequestUri", "RequestHeader", "RequestBody", - "Cookies" + "Cookies", + "SocketAddr" ], "x-ms-enum": { "name": "MatchVariable", From 3fa20fb62911b53377ad6df0ad38532d1971be4c Mon Sep 17 00:00:00 2001 From: He Huang <47040595+hjhhh3000vitae@users.noreply.github.com> Date: Wed, 28 Aug 2019 18:16:39 -0700 Subject: [PATCH 044/123] Add new API for calculate template hash (#7046) * Add new API for calculate template hash * Work around spell check. * Add back default response. * Add examples * Update 2019-08-01 --- .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2015-11-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2016-02-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2016-07-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2016-09-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2017-05-10/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2018-02-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2018-05-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2019-03-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2019-05-01/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2019-05-10/resources.json | 64 +++++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2019-07-01/resources.json | 55 ++++++++++++++++ .../examples/CalculateTemplateHash.json | 46 +++++++++++++ .../stable/2019-08-01/resources.json | 55 ++++++++++++++++ 24 files changed, 1302 insertions(+) create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..58c03f0c700f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2015-11-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json index 40fdb8f7d6c1..7a174f2b2eaf 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json @@ -2066,6 +2066,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2259,6 +2301,15 @@ }, "description": "Deployment operation parameters." }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementError": { "properties": { "code": { @@ -2907,6 +2958,19 @@ } }, "x-ms-azure-resource": true + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..7bc98ab39031 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2016-02-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json index 56e2cfda6b9c..b7d746dd305e 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json @@ -1630,6 +1630,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -1770,6 +1812,15 @@ } } }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2534,6 +2585,19 @@ "description": "The error." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..86675e179c95 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2016-07-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json index e014b789c1f4..2bd3e7280137 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json @@ -1634,6 +1634,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -1775,6 +1817,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2543,6 +2594,19 @@ "description": "The error." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..c1161f93f04e --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2016-09-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json index 0fd09bd4fb02..695fe3a24c45 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json @@ -1873,6 +1873,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2016,6 +2058,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2802,6 +2853,19 @@ "description": "The error." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..6925dfd05b4b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2017-05-10", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json index b6db696c8834..b45533e7129d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json @@ -1922,6 +1922,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2065,6 +2107,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2884,6 +2935,19 @@ } }, "description": "Resource group export result." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..dd4e845364fc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2018-02-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json index 57793027cd77..8b681ac85d4c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json @@ -1930,6 +1930,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2077,6 +2119,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2951,6 +3002,19 @@ } }, "description": "Resource group export result." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..463ecc09401a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2018-05-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json index 3d4bed52814a..53b83febb105 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json @@ -2363,6 +2363,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2514,6 +2556,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -3467,6 +3518,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..52940752d3f0 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-03-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json index eae1299f3f68..2f90491c6270 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json @@ -2371,6 +2371,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2522,6 +2564,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -3484,6 +3535,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..107519946b27 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json index fab6e1853213..c6c511b0d4b9 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json @@ -2590,6 +2590,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2742,6 +2784,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -3716,6 +3767,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..e6861957d083 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-05-10", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json index bdb4281cec1c..97ac03d9053c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json @@ -2666,6 +2666,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -2818,6 +2860,15 @@ }, "description": "The deployment export result. " }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -3792,6 +3843,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..d8cc2f1db392 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json index 2d350d0fd7f4..ec66c90890be 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json @@ -3821,6 +3821,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -4928,6 +4970,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json new file mode 100644 index 000000000000..79f311eaaf56 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "template": { + "$schema": "http://schemas.management.azure.com/deploymentTemplate?api-version=2014-04-01-preview", + "contentVersion": "1.0.0.0", + "parameters": { + "string": { + "type": "string" + } + }, + "variables": { + "string": "string", + "int": 42, + "bool": true, + "array": [ + 1, + 2, + 3, + 4 + ], + "object": { + "object": { + "vmSize": "Large", + "location": "West US" + } + } + }, + "resources": [], + "outputs": { + "string": { + "type": "string", + "value": "myvalue" + } + } + } + }, + "responses": { + "200": { + "body": { + "minifiedTemplate": "{\"$SCHEMA\":\"HTTP://SCHEMAS.MANAGEMENT.AZURE.COM/DEPLOYMENTTEMPLATE?API-VERSION=2014-04-01-PREVIEW\",\"CONTENTVERSION\":\"1.0.0.0\",\"PARAMETERS\":{\"STRING\":{\"TYPE\":\"STRING\"}},\"VARIABLES\":{\"STRING\":\"STRING\",\"INT\":42,\"BOOL\":TRUE,\"ARRAY\":[1,2,3,4],\"OBJECT\":{\"OBJECT\":{\"VMSIZE\":\"LARGE\",\"LOCATION\":\"WEST US\"}}},\"RESOURCES\":[],\"OUTPUTS\":{\"STRING\":{\"TYPE\":\"STRING\",\"VALUE\":\"MYVALUE\"}}}", + "templateHash": "695440707931307747" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json index 303ac03a25c1..cc3f05489187 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -3791,6 +3791,48 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -4894,6 +4936,19 @@ "description": "URL to get the next set of operation list results if there are any." } } + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } } }, "parameters": { From 1241f9604ddd76bac1a778e9bf26d739110e0928 Mon Sep 17 00:00:00 2001 From: Phoenix He Date: Thu, 29 Aug 2019 11:08:45 +0800 Subject: [PATCH 045/123] Lock typescript version to fix compile error (#7068) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 995d0fd1053e..b4b83ecff038 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "mocha": "*", "ts-node": "^8.1.0", "tslib": "^1.10.0", - "typescript": "^3.4.4" + "typescript": "3.5.3" }, "homepage": "https://github.com/azure/azure-rest-api-specs", "repository": { From 534c9a7c6dd49fa6caff0518cde8048922906a02 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 29 Aug 2019 02:58:33 -0400 Subject: [PATCH 046/123] chore: jsonfmt resources (#7070) --- .../stable/2015-11-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2016-02-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2016-07-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2016-09-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2017-05-10/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2018-02-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2018-05-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2019-03-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2019-05-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2019-05-10/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2019-07-01/examples/CalculateTemplateHash.json | 4 ++-- .../stable/2019-08-01/examples/CalculateTemplateHash.json | 4 ++-- 12 files changed, 24 insertions(+), 24 deletions(-) diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json index 58c03f0c700f..75522b1580b7 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json index 7bc98ab39031..be57329e65be 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json index 86675e179c95..b51cb824a921 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json index c1161f93f04e..5f60e76f9a1d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json index 6925dfd05b4b..3357069151c3 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json index dd4e845364fc..ac1023612528 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json index 463ecc09401a..22895dd753cc 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json index 52940752d3f0..b07081e2f38f 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json index 107519946b27..950b017e3ae3 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json index e6861957d083..bfb45244f459 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json index d8cc2f1db392..a65c3a1fb4ed 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json index 79f311eaaf56..f195b17570d1 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json @@ -25,7 +25,7 @@ "location": "West US" } } - }, + }, "resources": [], "outputs": { "string": { @@ -33,7 +33,7 @@ "value": "myvalue" } } - } + } }, "responses": { "200": { From cb604cedc3b5adf3c401a10d23610c3984fd2947 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 29 Aug 2019 02:59:04 -0400 Subject: [PATCH 047/123] chore: jsonfmt sql (#7071) --- .../2015-05-01-preview/encryptionProtectors.json | 2 +- .../examples/EncryptionProtectorRevalidate.json | 10 +++++----- .../ManagedInstanceEncryptionProtectors.json | 2 +- .../ManagedInstanceEncryptionProtectorRevalidate.json | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json index 673df291e8d9..66315fab2827 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json @@ -416,4 +416,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json index de53530efda5..6060ee78ba7d 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/EncryptionProtectorRevalidate.json @@ -6,8 +6,8 @@ "encryptionProtectorName": "current", "api-version": "2015-05-01-preview" }, - "responses": { - "200": { }, - "202": { } - } -} \ No newline at end of file + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json index d66c7e1cf4c0..e8541adcaf4e 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json @@ -406,4 +406,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json index 3259df58fca6..94781be7aa33 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedInstanceEncryptionProtectorRevalidate.json @@ -10,4 +10,4 @@ "200": {}, "202": {} } -} \ No newline at end of file +} From 17dab88564071ede20a8be33e2a2fa48496f13c8 Mon Sep 17 00:00:00 2001 From: Zhiqing Qiu Date: Thu, 29 Aug 2019 15:00:34 +0800 Subject: [PATCH 048/123] Add diff tool in pre-production pipeline (#7062) --- preproduction-azure-pipelines.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/preproduction-azure-pipelines.yml b/preproduction-azure-pipelines.yml index 1850de2bbcf4..9b8b9f2b3402 100644 --- a/preproduction-azure-pipelines.yml +++ b/preproduction-azure-pipelines.yml @@ -47,3 +47,17 @@ jobs: - script: 'npm install -D @azure/avocado@0.6.0' - script: './node_modules/.bin/avocado' displayName: 'Avocado' + +- job: "BreakingChange" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - script: 'scripts/install-dotnet.sh' + displayName: 'Install .Net' + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm install @azure/rest-api-specs-scripts@0.5.0' + - script: 'npm run tsc && node scripts/breaking-change.js' + displayName: 'Breaking Changes' From 59db1e6d21138c24428233b9ddfab3fe2cb18097 Mon Sep 17 00:00:00 2001 From: bowen0106 <49418659+bowen0106@users.noreply.github.com> Date: Thu, 29 Aug 2019 01:33:05 -0700 Subject: [PATCH 049/123] Update 2019-04-01 API as changes from 2019-06-01. (#6959) --- .../stable/2019-04-01/privateEndpoint.json | 33 +++++++--- .../stable/2019-04-01/privateLinkService.json | 63 ++++++++++++++----- 2 files changed, 71 insertions(+), 25 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateEndpoint.json index 807ef0d89c20..c67b957db73d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateEndpoint.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateEndpoint.json @@ -74,7 +74,7 @@ "description": "Delete successful." }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -133,7 +133,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -176,7 +176,7 @@ "schema": { "$ref": "#/definitions/PrivateEndpoint" }, - "description": "Parameters supplied to the create or update private endpoint operation" + "description": "Parameters supplied to the create or update private endpoint operation." }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -199,7 +199,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -249,7 +249,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -288,7 +288,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -396,7 +396,7 @@ }, "etag": { "type": "string", - "description": "Gets a unique read-only string that changes whenever the resource is updated." + "description": "A unique read-only string that changes whenever the resource is updated." } }, "allOf": [ @@ -422,8 +422,8 @@ }, "provisioningState": { "readOnly": true, - "type": "string", - "description": "The provisioning state of the private endpoint. Possible values are: 'Updating', 'Deleting', and 'Failed'." + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint." }, "privateLinkServiceConnections": { "type": "array", @@ -452,6 +452,16 @@ "name": { "type": "string", "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." } }, "allOf": [ @@ -463,6 +473,11 @@ }, "PrivateLinkServiceConnectionProperties": { "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection." + }, "privateLinkServiceId": { "type": "string", "description": "The resource id of private link service." diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateLinkService.json index e8fa9661b772..06321a2cb0f1 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateLinkService.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/privateLinkService.json @@ -74,7 +74,7 @@ "description": "Delete successful." }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -133,7 +133,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -173,7 +173,7 @@ "schema": { "$ref": "#/definitions/PrivateLinkService" }, - "description": "Parameters supplied to the create or update private link service operation" + "description": "Parameters supplied to the create or update private link service operation." }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -196,7 +196,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -243,7 +243,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -282,7 +282,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -351,7 +351,7 @@ } }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -409,7 +409,7 @@ "description": "Delete successful." }, "default": { - "description": "Error", + "description": "Error.", "schema": { "$ref": "./network.json#/definitions/Error" } @@ -623,7 +623,7 @@ }, "etag": { "type": "string", - "description": "Gets a unique read-only string that changes whenever the resource is updated." + "description": "A unique read-only string that changes whenever the resource is updated." } }, "allOf": [ @@ -659,8 +659,8 @@ }, "provisioningState": { "readOnly": true, - "type": "string", - "description": "The provisioning state of the private link service. Possible values are: 'Updating', 'Succeeded', and 'Failed'." + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service." }, "privateEndpointConnections": { "type": "array", @@ -722,8 +722,23 @@ "name": { "type": "string", "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." } }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], "description": "The private link service ip configuration." }, "PrivateLinkServiceIpConfigurationProperties": { @@ -740,13 +755,14 @@ "$ref": "./virtualNetwork.json#/definitions/Subnet", "description": "The reference of the subnet resource." }, - "publicIPAddress": { - "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", - "description": "The reference of the public IP resource." + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." }, "provisioningState": { - "type": "string", - "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service ip configuration." }, "privateIPAddressVersion": { "$ref": "./network.json#/definitions/IPVersion", @@ -765,6 +781,16 @@ "name": { "type": "string", "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." } }, "allOf": [ @@ -783,6 +809,11 @@ "privateLinkServiceConnectionState": { "$ref": "#/definitions/PrivateLinkServiceConnectionState", "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection." } }, "description": "Properties of the PrivateEndpointConnectProperties." From 543e24fb91a603ac8395d767824ad6deddd1d20a Mon Sep 17 00:00:00 2001 From: Anton Evseev Date: Thu, 29 Aug 2019 01:33:58 -0700 Subject: [PATCH 050/123] Add missing read-only property "outboundRules" in LoadBalancer specs (#6908) --- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2018-07-01/examples/LoadBalancerGet.json | 1 - .../2018-07-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2018-07-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2018-08-01/examples/LoadBalancerGet.json | 1 - .../2018-08-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2018-08-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2018-10-01/examples/LoadBalancerGet.json | 1 - .../2018-10-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2018-10-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2018-11-01/examples/LoadBalancerGet.json | 1 - .../2018-11-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2018-11-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2018-12-01/examples/LoadBalancerGet.json | 1 - .../2018-12-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2018-12-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 409 +++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2019-02-01/examples/LoadBalancerGet.json | 1 - .../2019-02-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2019-02-01/loadBalancer.json | 15 +- .../examples/LoadBalancerCreate.json | 5 +- .../LoadBalancerCreateWithInboundNatPool.json | 7 +- .../LoadBalancerCreateWithOutboundRules.json | 411 ++++++++++++++++++ .../examples/LoadBalancerCreateWithZones.json | 7 +- .../2019-04-01/examples/LoadBalancerGet.json | 1 - .../2019-04-01/examples/LoadBalancerList.json | 2 - .../examples/LoadBalancerListAll.json | 1 - .../stable/2019-04-01/loadBalancer.json | 15 +- 56 files changed, 3033 insertions(+), 98 deletions(-) create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithOutboundRules.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithOutboundRules.json diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreate.json index 918521942656..347224952dc5 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithInboundNatPool.json index fe1f466fe39d..1268fabede47 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..eb6ddda1d97e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2018-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithZones.json index 6d0ecd186351..b80669bf0895 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerGet.json index 0ee3eb4b5de0..5ab92c439f3e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerList.json index 136390e59262..8f3b9085b996 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerListAll.json index 5c487f735d9d..2c5aafc9f9b1 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/loadBalancer.json index 1c179241bd2a..64030dae0c18 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-07-01/loadBalancer.json @@ -193,6 +193,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true @@ -1129,6 +1132,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1511,7 +1522,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1534,7 +1545,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreate.json index f76b4f7675dd..b7b6456a8840 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithInboundNatPool.json index 6f6de446ec8b..816e76b5ec58 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..24a5043f8d4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2018-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithZones.json index 8c1ec0c50863..19cd111b811c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerGet.json index 21898ba82f1c..37636e167a72 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerList.json index 8db5dfc20ba7..a08bc7e385e2 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerListAll.json index 8e5416bc2454..c9c905ac3a28 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/loadBalancer.json index ea5406a883ed..552dde346274 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-08-01/loadBalancer.json @@ -193,6 +193,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true @@ -1227,6 +1230,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1609,7 +1620,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1632,7 +1643,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreate.json index f86fe146a72d..8d112187854a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithInboundNatPool.json index c8e5309bb6f5..732246e0bef9 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..cbeb9f13f012 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithZones.json index 0df91d5511fc..4f3c64f84c72 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerGet.json index 8bb87495dd3a..8f09ae3d4381 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerList.json index 68ac484840ba..ab1cce555269 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerListAll.json index b2484a90a378..693c45b484ae 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/loadBalancer.json index 637cf60318d3..c4b2928008f8 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/loadBalancer.json @@ -193,6 +193,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true @@ -1227,6 +1230,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1609,7 +1620,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1632,7 +1643,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreate.json index 8ca959f046c0..76656b61996d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreate.json @@ -73,8 +73,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -191,7 +190,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -308,7 +306,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithInboundNatPool.json index 21998a51eb40..5d2bb1316bb9 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -5,6 +5,9 @@ "resourceGroupName": "rg1", "loadBalancerName": "lb", "parameters": { + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -57,7 +60,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "westus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -114,7 +117,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "westus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..e5825e7aea52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2018-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithZones.json index 12494336ec0d..c996d0ec4ecc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerCreateWithZones.json @@ -5,6 +5,9 @@ "resourceGroupName": "rg1", "loadBalancerName": "lb", "parameters": { + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -87,7 +90,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "westus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -205,7 +208,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "westus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerGet.json index 93c0df558bb5..35b1d85f816f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerList.json index 951081d1c8f1..6b05a628115c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerListAll.json index 9981b03a51f5..6edff1b8079c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/loadBalancer.json index abb40d0531ea..7583dd884398 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-11-01/loadBalancer.json @@ -193,6 +193,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true @@ -1227,6 +1230,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1609,7 +1620,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1632,7 +1643,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json index 8db0140db39c..fc211432e3ff 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json index 9e1420ca97b5..108896ffdb06 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..361c61c74ccb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json index b5ec83586676..94ce7640ecaa 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json index a75d9abbbfab..08e30b95621c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json index d8cc0d6c372b..8ce5fd013277 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json index 60ebf69bd237..20fb44024268 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json index 0dd1f3ef7999..d8529c25fb2f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json @@ -193,6 +193,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true @@ -1227,6 +1230,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1609,7 +1620,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1632,7 +1643,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreate.json index 8bc63b0bf5dd..77267b86e976 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithInboundNatPool.json index c2ef5f454625..3a7c483684d8 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..747cafbba870 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2019-02-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithZones.json index b90d6ac3c239..1b2ed3e35891 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerGet.json index d32a9892bdf3..55c724c46aee 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerGet.json @@ -118,7 +118,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerList.json index 2069d3a5ffd9..00bcca699b2e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerList.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -131,7 +130,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerListAll.json index ee9911b5b692..142301a38b5a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/examples/LoadBalancerListAll.json @@ -114,7 +114,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/loadBalancer.json index 426f54f933ef..94d254f7838f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-02-01/loadBalancer.json @@ -196,6 +196,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true, @@ -1231,6 +1234,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1620,7 +1631,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1643,7 +1654,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreate.json index 5cd987c2aab6..f822c4ac2bd4 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreate.json @@ -74,8 +74,7 @@ } } ], - "inboundNatPools": [], - "outboundRules": [] + "inboundNatPools": [] } } }, @@ -192,7 +191,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } @@ -309,7 +307,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithInboundNatPool.json index e6e50729a55b..45662e947279 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithInboundNatPool.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -58,7 +61,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -115,7 +118,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..cb2e2b8607dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,411 @@ +{ + "parameters": { + "api-version": "2019-04-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithZones.json index e0f2f62ef01d..33678c0f3ed6 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerCreateWithZones.json @@ -6,6 +6,9 @@ "loadBalancerName": "lb", "parameters": { "location": "eastus", + "sku": { + "name": "Standard" + }, "properties": { "frontendIPConfigurations": [ { @@ -88,7 +91,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", @@ -206,7 +209,7 @@ "type": "Microsoft.Network/loadBalancers", "location": "eastus", "sku": { - "name": "Basic" + "name": "Standard" }, "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerGet.json index a12712cb9bce..95abc8d73b14 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerGet.json @@ -119,7 +119,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerList.json index 1f646659aebe..ce8b1e40846d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerList.json @@ -116,7 +116,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, @@ -132,7 +131,6 @@ "loadBalancingRules": [], "probes": [], "inboundNatRules": [], - "outboundRules": [], "inboundNatPools": [] } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerListAll.json index 565a1be10d3e..047fc53caa70 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerListAll.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/examples/LoadBalancerListAll.json @@ -115,7 +115,6 @@ } } ], - "outboundRules": [], "inboundNatPools": [] } }, diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/loadBalancer.json index d12d17d06e45..829bb0d5335c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/loadBalancer.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-04-01/loadBalancer.json @@ -196,6 +196,9 @@ }, "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" } }, "x-ms-long-running-operation": true, @@ -1235,6 +1238,14 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Gets outbound rules that use this backend address pool." }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets outbound rules that use this backend address pool." + }, "provisioningState": { "type": "string", "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." @@ -1624,7 +1635,7 @@ "frontendIPConfigurations", "protocol" ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "OutboundRule": { "properties": { @@ -1647,7 +1658,7 @@ "$ref": "./network.json#/definitions/SubResource" } ], - "description": "Outbound pool of the load balancer." + "description": "Outbound rule of the load balancer." }, "LoadBalancerPropertiesFormat": { "properties": { From 2fbb5118cd34f412a51d9bc8a274224b216763cf Mon Sep 17 00:00:00 2001 From: Robert Johnson Date: Thu, 29 Aug 2019 19:58:50 -0700 Subject: [PATCH 051/123] Move to stable version (#6997) * Following changes are related to updating the arm api version number to GA version. Current version number is 2018-08-20-preview. GA version number is 2019-09-16 * Add new example, change example names, and update kind. * Updated Readme with GA tag * Fixed the formatting * Changes Per feedback * Updated the way we retrieve the version * Updated the way we retrieve version parameter --- .../examples/CheckNameAvailabilityPost.json | 19 + .../examples/OperationResultsGet.json | 27 + .../2019-09-16/examples/OperationsList.json | 53 + .../2019-09-16/examples/ServiceCreate.json | 147 +++ .../examples/ServiceCreateMinimum.json | 90 ++ .../2019-09-16/examples/ServiceDelete.json | 12 + .../2019-09-16/examples/ServiceGet.json | 58 ++ .../2019-09-16/examples/ServiceList.json | 61 ++ .../examples/ServiceListByResourceGroup.json | 62 ++ .../2019-09-16/examples/ServicePatch.json | 67 ++ .../stable/2019-09-16/healthcare-apis.json | 945 ++++++++++++++++++ .../resource-manager/readme.go.md | 12 +- .../healthcareapis/resource-manager/readme.md | 27 +- 13 files changed, 1577 insertions(+), 3 deletions(-) create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/CheckNameAvailabilityPost.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationResultsGet.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationsList.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceDelete.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json create mode 100644 specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/CheckNameAvailabilityPost.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/CheckNameAvailabilityPost.json new file mode 100644 index 000000000000..bd1c098443b4 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/CheckNameAvailabilityPost.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-09-16", + "subscriptionId": "subid", + "checkNameAvailabilityInputs": { + "type": "Microsoft.HealthcareApis/services", + "name": "serviceName" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Service name is not available." + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationResultsGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationResultsGet.json new file mode 100644 index 000000000000..86e0b9e3761c --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationResultsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-09-16", + "subscriptionId": "subid", + "locationName": "westus", + "operationResultId": "exampleid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HealthcareApis/locations/westus/operationresults/exampleid", + "name": "servicename", + "status": "Requested", + "startTime": "2019-01-21T06:03:30.2716301Z", + "properties": {} + } + }, + "404": { + "body": { + "error": { + "code": "OperationResultNotFound", + "message": "The operation result was not found." + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationsList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationsList.json new file mode 100644 index 000000000000..60f0733d9c97 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/OperationsList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-09-16" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.HealthcareApis/services/read", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/services/write", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/services/delete", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/locations/operationresults/read", + "display": { + "provider": "Microsoft.HealthcareApis", + "resource": "operationresults", + "operation": "read", + "description": "Get the status of an asynchronous operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/checkNameAvailability/post", + "display": {}, + "origin": "user" + }, + { + "name": "Microsoft.HealthcareApis/Operations/read", + "display": { + "provider": "Microsoft.HealthcareApis", + "resource": "operations", + "operation": "read", + "description": "Get the list of operations supported by this Resource Provider." + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json new file mode 100644 index 000000000000..4645ef06e0ac --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2019-09-16", + "subscriptionId": "subid", + "serviceDescription": { + "location": "westus2", + "tags": {}, + "kind": "fhir-R4", + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US 2", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US 2", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json new file mode 100644 index 000000000000..f7cdcacd09d6 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceName": "service2", + "resourceGroupName": "rg1", + "api-version": "2019-09-16", + "subscriptionId": "subid", + "serviceDescription": { + "location": "westus2", + "tags": {}, + "kind": "fhir-R4", + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service2", + "name": "service2", + "type": "Microsoft.HealthcareApis/services", + "etag": "etagvalue", + "location": "westus2", + "kind": "fhir-R4", + "tags": {}, + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": false + }, + "corsConfiguration": { + "origins": [], + "headers": [], + "methods": [], + "maxAge": null, + "allowCredentials": false + }, + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service2", + "name": "service2", + "type": "Microsoft.HealthcareApis/services", + "etag": "etagvalue", + "location": "westus2", + "kind": "fhir-R4", + "tags": {}, + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": false + }, + "corsConfiguration": { + "origins": [], + "headers": [], + "methods": [], + "maxAge": null, + "allowCredentials": false + }, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceDelete.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceDelete.json new file mode 100644 index 000000000000..151c043fd930 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2019-09-16", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json new file mode 100644 index 000000000000..887f172b72d7 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2019-09-16", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json new file mode 100644 index 000000000000..c0bd8d213ec5 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-09-16", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etag", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + ], + "nextLink": "https://host/subscriptions/subid/providers/Microsoft.HealthcareApis/services?api-version=2018-08-20-preview&%24skipToken=e30%3d" + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json new file mode 100644 index 000000000000..746c27cb480d --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-09-16", + "subscriptionId": "subid", + "resourceGroupName": "rgname" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/dddb8dcb-effb-4290-bb47-ce1e8440c729", + "name": "service1", + "location": "westus", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "tags": {}, + "etag": "etagvalue", + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + ], + "nextLink": "https://host/subscriptions/subid/resourceGroups/rgname/providers/Microsoft.HealthcareApis/services?api-version=2018-08-20-preview&%24skipToken=e30%3d" + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json new file mode 100644 index 000000000000..00117dc15baa --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2019-09-16", + "subscriptionId": "subid", + "servicePatchDescription": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/common", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json new file mode 100644 index 000000000000..3c7ea1171836 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json @@ -0,0 +1,945 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-09-16", + "title": "HealthcareApisClient", + "description": "Use this API to manage Microsoft HealthcareApis services in your Azure subscription." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}": { + "get": { + "tags": [ + "Resource" + ], + "description": "Get the metadata of a service instance.", + "operationId": "Services_Get", + "x-ms-examples": { + "Get metadata": { + "$ref": "./examples/ServiceGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all of the properties of the service instance.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Resource" + ], + "description": "Create or update the metadata of a service instance.", + "operationId": "Services_CreateOrUpdate", + "x-ms-examples": { + "Create or Update a service with all parameters": { + "$ref": "./examples/ServiceCreate.json" + }, + "Create or Update a service with minimum parameters": { + "$ref": "./examples/ServiceCreateMinimum.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "serviceDescription", + "in": "body", + "description": "The service instance metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + } + ], + "responses": { + "200": { + "description": "Updated - Put request accepted and an existing resource is being updated; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "201": { + "description": "Created - Put request accepted and a new resource was created; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "Resource" + ], + "description": "Update the metadata of a service instance.", + "operationId": "Services_Update", + "x-ms-examples": { + "Patch service": { + "$ref": "./examples/ServicePatch.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "servicePatchDescription", + "in": "body", + "description": "The service instance metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/ServicesPatchDescription" + } + } + ], + "responses": { + "200": { + "description": "The tags for the resource were updated successfully.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Resource" + ], + "description": "Delete a service instance.", + "operationId": "Services_Delete", + "x-ms-examples": { + "Delete service": { + "$ref": "./examples/ServiceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "Accepted - Delete request accepted; the operation will complete asynchronously." + }, + "204": { + "description": "The resource does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/services": { + "get": { + "tags": [ + "Collection" + ], + "description": "Get all the service instances in a subscription.", + "operationId": "Services_List", + "x-ms-examples": { + "List all services in subscription": { + "$ref": "./examples/ServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the subscription.", + "schema": { + "$ref": "#/definitions/ServicesDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services": { + "get": { + "tags": [ + "Collection" + ], + "description": "Get all the service instances in a resource group.", + "operationId": "Services_ListByResourceGroup", + "x-ms-examples": { + "List all services in resource group": { + "$ref": "./examples/ServiceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the resource group.", + "schema": { + "$ref": "#/definitions/ServicesDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/providers/Microsoft.HealthcareApis/operations": { + "get": { + "tags": [ + "Proxy" + ], + "description": "Lists all of the available Healthcare service REST API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "List operations": { + "$ref": "./examples/OperationsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/checkNameAvailability": { + "post": { + "tags": [ + "Proxy" + ], + "description": "Check if a service instance name is available.", + "operationId": "Services_CheckNameAvailability", + "x-ms-examples": { + "Check name availability": { + "$ref": "./examples/CheckNameAvailabilityPost.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "checkNameAvailabilityInputs", + "in": "body", + "description": "Set the name parameter in the CheckNameAvailabilityParameters structure to the name of the service instance to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the service name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/ServicesNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/locations/{locationName}/operationresults/{operationResultId}": { + "get": { + "tags": [ + "Resource" + ], + "description": "Get the operation result for a long running operation.", + "operationId": "OperationResults_Get", + "x-ms-examples": { + "Get operation result": { + "$ref": "./examples/OperationResultsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/locationName" + }, + { + "$ref": "#/parameters/operationResultId" + } + ], + "responses": { + "200": { + "description": "The body contains all of the properties of the operation result.", + "schema": { + "$ref": "#/definitions/OperationResultsDescription" + } + }, + "404": { + "description": "No operation result was found matching operationResultId.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "ServicesProperties": { + "description": "The properties of a service instance.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state.", + "enum": [ + "Deleting", + "Succeeded", + "Creating", + "Accepted", + "Verifying", + "Updating", + "Failed", + "Canceled", + "Deprovisioned" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "accessPolicies": { + "$ref": "#/definitions/ServiceAccessPoliciesInfo", + "description": "The access policies of the service instance." + }, + "cosmosDbConfiguration": { + "$ref": "#/definitions/ServiceCosmosDbConfigurationInfo", + "description": "The settings for the Cosmos DB database backing the service." + }, + "authenticationConfiguration": { + "$ref": "#/definitions/ServiceAuthenticationConfigurationInfo", + "description": "The authentication configuration for the service instance." + }, + "corsConfiguration": { + "$ref": "#/definitions/ServiceCorsConfigurationInfo", + "description": "The settings for the CORS configuration of the service instance." + } + }, + "required": [ + "accessPolicies" + ] + }, + "ServiceAccessPoliciesInfo": { + "description": "The access policies of the service instance.", + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/ServiceAccessPolicyEntry" + } + }, + "ServiceAccessPolicyEntry": { + "description": "An access policy entry.", + "properties": { + "objectId": { + "description": "An Azure AD object ID (User or Apps) that is allowed access to the FHIR service.", + "type": "string", + "pattern": "^(([0-9A-Fa-f]{8}[-]?(?:[0-9A-Fa-f]{4}[-]?){3}[0-9A-Fa-f]{12}){1})+$" + } + }, + "required": [ + "objectId" + ] + }, + "ServiceCosmosDbConfigurationInfo": { + "description": "The settings for the Cosmos DB database backing the service.", + "type": "object", + "properties": { + "offerThroughput": { + "type": "integer", + "description": "The provisioned throughput for the backing database.", + "readOnly": false, + "minimum": 400, + "maximum": 10000 + } + } + }, + "ServiceAuthenticationConfigurationInfo": { + "description": "Authentication configuration information", + "type": "object", + "properties": { + "authority": { + "type": "string", + "description": "The authority url for the service", + "readOnly": false + }, + "audience": { + "type": "string", + "description": "The audience url for the service", + "readOnly": false + }, + "smartProxyEnabled": { + "type": "boolean", + "description": "If the SMART on FHIR proxy is enabled", + "readOnly": false + } + } + }, + "ServiceCorsConfigurationInfo": { + "description": "The settings for the CORS configuration of the service instance.", + "type": "object", + "properties": { + "origins": { + "type": "array", + "description": "The origins to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationOriginEntry" + } + }, + "headers": { + "type": "array", + "description": "The headers to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationHeaderEntry" + } + }, + "methods": { + "type": "array", + "description": "The methods to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationMethodEntry" + } + }, + "maxAge": { + "type": "integer", + "description": "The max age to be allowed via CORS.", + "readOnly": false, + "minimum": 0, + "maximum": 99999 + }, + "allowCredentials": { + "type": "boolean", + "description": "If credentials are allowed via CORS.", + "readOnly": false + } + } + }, + "ServiceCorsConfigurationOriginEntry": { + "description": "An origin for CORS.", + "type": "string", + "pattern": "^(?:(?:(?:[hH][tT][tT][pP](?:[sS]|))\\:\\/\\/(?:[a-zA-Z0-9-]+[.]?)+(?:\\:[0-9]{1,5})?|[*]))$" + }, + "ServiceCorsConfigurationHeaderEntry": { + "description": "A header for CORS.", + "type": "string" + }, + "ServiceCorsConfigurationMethodEntry": { + "description": "A method for CORS.", + "type": "string" + }, + "ServicesDescription": { + "description": "The description of the service.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": false, + "description": "The common properties of a service.", + "$ref": "#/definitions/ServicesProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ServicesPatchDescription": { + "description": "The description of the service.", + "type": "object", + "properties": { + "tags": { + "description": "Instance tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "The common properties of a service.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^[a-z0-9][a-z0-9-]{1,21}[a-z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "kind": { + "readOnly": false, + "type": "string", + "description": "The kind of the service.", + "enum": [ + "fhir", + "fhir-Stu3", + "fhir-R4" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": false + } + }, + "location": { + "type": "string", + "description": "The resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + }, + "etag": { + "description": "An etag associated with the resource, used for optimistic concurrency when editing it.", + "type": "string" + } + }, + "x-ms-azure-resource": true, + "required": [ + "location", + "kind" + ] + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ServicesDescriptionListResult": { + "description": "A list of service description objects with a next link.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of service description objects.", + "type": "string" + }, + "value": { + "description": "A list of service description objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ServicesDescription" + } + } + } + }, + "OperationListResult": { + "description": "A list of service operations. It contains a list of operations and a URL link to get the next set of results.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of service description objects.", + "type": "string" + }, + "value": { + "description": "A list of service operations supported by the Microsoft.HealthcareApis resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Service REST API operation.", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "origin": { + "readOnly": true, + "type": "string", + "description": "Default value is 'user,system'." + }, + "display": { + "description": "The information displayed about the operation.", + "$ref": "#/definitions/OperationDisplay" + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft.HealthcareApis" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: Services" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Friendly description for the operation," + } + } + }, + "CheckNameAvailabilityParameters": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the service instance to check.", + "type": "string" + }, + "type": { + "description": "The fully qualified resource type which includes provider namespace.", + "type": "string" + } + }, + "required": [ + "name", + "type" + ] + }, + "ServicesNameAvailabilityInfo": { + "description": "The properties indicating whether a given service name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ServiceNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "OperationResultsDescription": { + "description": "The properties indicating the operation result of an operation on a service.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the operation returned.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the operation result.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "The status of the operation being performed.", + "enum": [ + "Canceled", + "Succeeded", + "Failed", + "Requested", + "Running" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "OperationResultStatus", + "modelAsString": true + } + }, + "startTime": { + "description": "The time that the operation was started.", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": false, + "description": "Additional properties of the operation result." + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the service instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the service instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 3, + "maxLength": 24 + }, + "locationName": { + "name": "locationName", + "in": "path", + "description": "The location of the operation.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "operationResultId": { + "name": "operationResultId", + "in": "path", + "description": "The ID of the operation result to get.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/healthcareapis/resource-manager/readme.go.md b/specification/healthcareapis/resource-manager/readme.go.md index 59f303cd7ff2..8d7829b97159 100644 --- a/specification/healthcareapis/resource-manager/readme.go.md +++ b/specification/healthcareapis/resource-manager/readme.go.md @@ -3,6 +3,7 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) +go: license-header: MICROSOFT_APACHE_NO_VERSION namespace: healthcareapis clear-output-folder: true @@ -12,10 +13,19 @@ These settings apply only when `--go` is specified on the command line. ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-09 - tag: package-2018-08-preview ``` +### Tag: package-2019-09 and go -### Tag: package-2018-08-preview +These settings apply only when `--tag=package-2019-09 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-09' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-09-16/$(namespace) +``` + +### Tag: package-2018-08-preview and go These settings apply only when `--tag=package-2018-08-preview --go` is specified on the command line. Please also specify `--go-sdk-folder=`. diff --git a/specification/healthcareapis/resource-manager/readme.md b/specification/healthcareapis/resource-manager/readme.md index a69b7422c4ab..b8bef7262541 100644 --- a/specification/healthcareapis/resource-manager/readme.md +++ b/specification/healthcareapis/resource-manager/readme.md @@ -28,10 +28,18 @@ These are the global settings for HealthcareApis service. title: HealthcareApisManagementClient description: Azure Healthcare APIs Client openapi-type: arm -tag: package-2018-08-preview +tag: package-2019-09 azure-arm: true ``` +### Tag: package-2019-09 + +These settings apply only when `--tag=package-2019-09` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09' +input-file: +- Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json +``` ### Tag: package-2018-08-preview @@ -98,9 +106,23 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-healthcareapis ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-09 - tag: package-2018-08-preview ``` +### Tag: package-2019-09 and java + +These settings apply only when `--tag=package-2019-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.healthcareapis.v2019-09-16 + output-folder: $(azure-libraries-for-java-folder)/healthcareapis/resource-manager/v2019-09-16 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2018-08-preview and java These settings apply only when `--tag=package-2018-08-preview --java` is specified on the command line. @@ -128,7 +150,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json + - $(this-folder)/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json + - $(this-folder)/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json ``` From 33e4ec6b667af53573fa74ca27fc008052dffbef Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 30 Aug 2019 03:00:07 +0000 Subject: [PATCH 052/123] regenerated all-api-versions --- specification/healthcareapis/resource-manager/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/healthcareapis/resource-manager/readme.md b/specification/healthcareapis/resource-manager/readme.md index b8bef7262541..3d55d0a60aec 100644 --- a/specification/healthcareapis/resource-manager/readme.md +++ b/specification/healthcareapis/resource-manager/readme.md @@ -150,8 +150,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json - - $(this-folder)/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json + - $(this-folder)/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json + - $(this-folder)/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json ``` From e31549913bdc9137ce0ede6a162ee5de3176caea Mon Sep 17 00:00:00 2001 From: haricr Date: Thu, 29 Aug 2019 20:24:47 -0700 Subject: [PATCH 053/123] [Data Factory] Add Chainingtrigger (#7076) * Add Chaining Trigger * Add Chaining Trigger * Fix Issues * Update review comments --- .../stable/2018-06-01/datafactory.json | 24 +++++++++++ .../2018-06-01/entityTypes/Pipeline.json | 8 ++++ .../2018-06-01/entityTypes/Trigger.json | 40 +++++++++++++++++++ .../examples/PipelineRuns_QueryByFactory.json | 10 ++++- .../2018-06-01/examples/Pipelines_Create.json | 18 +++++++++ 5 files changed, 98 insertions(+), 2 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index abfeb6407b35..4a372a496a16 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -4505,6 +4505,14 @@ }, "readOnly": true }, + "runDimensions": { + "description": "Run dimensions emitted by Pipeline run.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, "invokedBy": { "description": "Entity that started the pipeline run.", "$ref": "#/definitions/PipelineRunInvokedBy", @@ -4744,6 +4752,22 @@ "type": "string" }, "readOnly": true + }, + "runDimension": { + "description": "Run dimension for which trigger was fired.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "dependencyStatus": { + "description": "Status of the upstream pipelines.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true } }, "additionalProperties": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index 86582a37911e..36c6b2cbd239 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -41,6 +41,14 @@ "type": "object" } }, + "runDimensions": { + "description": "Dimensions emitted by Pipeline.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, "folder": { "description": "The folder that this Pipeline is in. If not specified, Pipeline will appear at the root level.", "type": "object", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json index d0671194aa21..6c66d196fad5 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json @@ -585,6 +585,46 @@ "required": [ "typeProperties" ] + }, + "ChainingTrigger": { + "description": "Trigger that allows the referenced pipeline to depend on other pipeline runs based on runDimension Name/Value pairs. Upstream pipelines should declare the same runDimension Name and their runs should have the values for those runDimensions. The referenced pipeline run would be triggered if the values for the runDimension match for all upstream pipeline runs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipeline": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference", + "description": "Pipeline for which runs are created when all upstream pipelines complete successfully." + }, + "typeProperties": { + "description": "Chaining Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/PipelineReference" + }, + "description": "Upstream Pipelines." + }, + "runDimension": { + "description": "Run Dimension property that needs to be emitted by upstream pipelines.", + "type": "string" + } + }, + "required": [ + "runDimension", + "dependsOn" + ] + } + }, + "required": [ + "pipeline", + "typeProperties" + ] } } } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json index b110f2399a3f..8a2579b02242 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json @@ -45,7 +45,10 @@ "status": "Succeeded", "message": "", "lastUpdated": "2018-06-16T00:38:12.7314495Z", - "annotations": [] + "annotations": [], + "runDimension": { + "JobId": "79c1cc52-265f-41a5-9553-be65e736fbd3" + } }, { "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", @@ -63,7 +66,10 @@ "status": "Cancelled", "message": "", "lastUpdated": "2018-06-16T00:39:51.216097Z", - "annotations": [] + "annotations": [], + "runDimension": { + "JobId": "84a3c493-0628-4b44-852f-ef5b3a11bdab" + } } ] } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Pipelines_Create.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Pipelines_Create.json index 9d0a1ba448e3..244732eeda4b 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Pipelines_Create.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Pipelines_Create.json @@ -61,12 +61,21 @@ "parameters": { "OutputBlobNameList": { "type": "Array" + }, + "JobId": { + "type": "String" } }, "variables": { "TestVariableArray": { "type": "Array" } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } } } }, @@ -140,12 +149,21 @@ "parameters": { "OutputBlobNameList": { "type": "Array" + }, + "JobId": { + "type": "String" } }, "variables": { "TestVariableArray": { "type": "Array" } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } } }, "etag": "0a0069d4-0000-0000-0000-5b245bd50000" From 2a6505e1af92016141d24f83a862878e09885455 Mon Sep 17 00:00:00 2001 From: Ajit Navasare Date: Thu, 29 Aug 2019 22:21:53 -0700 Subject: [PATCH 054/123] Eventhub: added NetworkRuleSets list API (#7052) * added NetworkRuleSets list API * lint fix * added x-ms-pageable and formating * update --- .../stable/2017-04-01/EventHub.json | 61 +++++++++++++++++ .../EHNetworkRuleSetList.json | 66 +++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json index 304bc8c7d25b..aa16f7d077a3 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json @@ -2029,6 +2029,51 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets": { + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetList": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json" + } + }, + "operationId": "Namespaces_ListNetworkRuleSets", + "description": "Gets list of NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of NetworkRuleSets for Namespace successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSetListResult" + } + }, + "default": { + "description": "EventHub error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } } }, "definitions": { @@ -2874,6 +2919,22 @@ } ], "description": "Description of NetworkRuleSet resource." + }, + "NetworkRuleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "Result of the List NetworkRuleSet operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of NetworkRuleSet." + } + }, + "description": "The response of the List NetworkRuleSet operation" } }, "parameters": { diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json new file mode 100644 index 000000000000..6228f06bf483 --- /dev/null +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/EHNetworkRuleSetList.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2017-04-01", + "subscriptionId": "Subscription" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionid/resourceGroups/resourcegroupid/providers/Microsoft.EventHub/namespaces/sdk-Namespace-9659/networkrulesets/default", + "name": "default", + "type": "Microsoft.EventHub/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "virtualNetworkRules": [ + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet2" + }, + "ignoreMissingVnetServiceEndpoint": true + }, + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet3" + }, + "ignoreMissingVnetServiceEndpoint": false + }, + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet6" + }, + "ignoreMissingVnetServiceEndpoint": false + } + ], + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + ] + } + } + } +} From d5f55fc2c88f4a03a06c7462dc031f558b8b56a6 Mon Sep 17 00:00:00 2001 From: Rohit Mahamuni <44378577+romahamu@users.noreply.github.com> Date: Fri, 30 Aug 2019 02:19:59 -0400 Subject: [PATCH 055/123] Dev storagecache microsoft.storagecache 2019 06 01 preview (#7043) * initial swagger for StorageCache RP * fix global parameters and indenting * pass oav validator; fix ARM SDK warning * review edits * fix cosmetic stuff with tabs, added path for storagetarget that was forgotten * 1. fixed readOnly; it was erroneously on some Cache properties 2. "Cluster" -> "Cache" globally 3. targettype enum fixed to have unknown type for future insurance 4. usage models examples fixed; they have short nonlocalized names now 5. x-ms-discriminator tag added to StorageTargets 6. modelasstring has been changed to true for enums 7. Avere expunged 8. vFXT expunged * fix typo in databox json * added python generation file * add swagger to sdk section * fix readme file for python generation * * add provisioning state to storage targets * add some provisioning states for cache * update a few doc strings * make usagemodel display an object instead of string * fix capitalization and provisioning states * capitalize states for consistency, add Unknown * update skus and make cache list a real paged list instead of an array * fix large sku to be 8G * Update sku models to match ARM, minor change to usage model * Update readme.python.md * add 201 return code for storagetarget put * add long running op * initial commit for new 2019-08-01-preview version * changes for initial 2018-08-01-preview version * updates for readme.md * try to fix pipeline error about body in example * add empty schema to satisfy pipeline checks * more changes for validator * update the correct version * additional fixes for pipeline * fix indent * Remove private preview version named 2019-06-01-preview * Add support for other languages and remove Tag 2019-06-01-preview from readme.md * Fix typo and add custom words * Add preview subfolder for supporting GO SDK Remove Node.js triggers for SDK generation * Fix output folder path for GO SDK and fix typo in Tag * Fix version in the path of output folder for GO SDK * Fix tag for ruby SDK --- custom-words.txt | 2 + .../examples/Caches_Create.json | 91 + .../examples/Caches_Delete.json | 19 + .../examples/Caches_Flush.json | 16 + .../examples/Caches_Get.json | 44 + .../examples/Caches_List.json | 78 + .../examples/Caches_ListByResourceGroup.json | 79 + .../examples/Caches_Start.json | 16 + .../examples/Caches_Stop.json | 16 + .../examples/Caches_Update.json | 57 + .../examples/Caches_UpgradeFirmware.json | 16 + .../examples/Operations_List.json | 35 + .../examples/Skus_List.json | 86 + .../examples/StorageTargets_Create.json | 87 + .../examples/StorageTargets_Delete.json | 20 + .../examples/StorageTargets_Get.json | 38 + .../examples/StorageTargets_ListByCache.json | 79 + .../examples/StorageTargets_Update.json | 60 + .../examples/UsageModels_List.json | 35 + .../2019-08-01-preview/storagecache.json | 1663 +++++++++++++++++ .../resource-manager/readme.csharp.md | 13 + .../resource-manager/readme.go.md | 19 + .../resource-manager/readme.java.md | 26 + .../storagecache/resource-manager/readme.md | 81 + .../resource-manager/readme.python.md | 27 + .../resource-manager/readme.ruby.md | 19 + .../resource-manager/readme.typescript.md | 13 + 27 files changed, 2735 insertions(+) create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Flush.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Start.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Stop.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_UpgradeFirmware.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Delete.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json create mode 100644 specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json create mode 100644 specification/storagecache/resource-manager/readme.csharp.md create mode 100644 specification/storagecache/resource-manager/readme.go.md create mode 100644 specification/storagecache/resource-manager/readme.java.md create mode 100644 specification/storagecache/resource-manager/readme.md create mode 100644 specification/storagecache/resource-manager/readme.python.md create mode 100644 specification/storagecache/resource-manager/readme.ruby.md create mode 100644 specification/storagecache/resource-manager/readme.typescript.md diff --git a/custom-words.txt b/custom-words.txt index bb440d203a0c..bc7f8736884e 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -243,6 +243,7 @@ CIDR CIDRs CIFS ciphertext +clfs Clickthrough clientaccesspolicy clienterror @@ -1327,6 +1328,7 @@ storageaccounts storagedatalake storageimportexport storagesync +storagetarget storageuri storsimple streamanalytics diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json new file mode 100644 index 000000000000..5cbf6ffdd7ed --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "201": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Delete.json new file mode 100644 index 000000000000..9ca5d1c615df --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Flush.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Flush.json new file mode 100644 index 000000000000..1a7117fd038e --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Flush.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json new file mode 100644 index 000000000000..a1b6d4057889 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json new file mode 100644 index 000000000000..5b4a814631d9 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Configuring", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json new file mode 100644 index 000000000000..30e4ddad4c3f --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + }, + { + "tags": { + "Dept": "Intertrode" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc2", + "location": "westus", + "name": "sc2", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Start.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Start.json new file mode 100644 index 000000000000..1a7117fd038e --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Start.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Stop.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Stop.json new file mode 100644 index 000000000000..1a7117fd038e --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Stop.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json new file mode 100644 index 000000000000..26b0e37ea22e --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cache": { + "tags": { + "Dept": "Initech" + }, + "location": "westus", + "properties": { + "cacheSizeGB": 3072, + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" + }, + "sku": { + "name": "Standard_2G" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "Dept": "Initech" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1", + "location": "westus", + "name": "sc1", + "type": "Microsoft.StorageCache/Cache", + "properties": { + "cacheSizeGB": 3072, + "health": { + "state": "Transitioning", + "statusDescription": "Cache is being created." + }, + "mountAddresses": [ + "192.168.1.1", + "192.168.1.2" + ], + "provisioningState": "Booting", + "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", + "upgradeStatus": { + "currentFirmwareVersion": "AvereOS V5.1.1.2", + "firmwareUpdateStatus": "available", + "firmwareUpdateDeadline": "2019-04-21T18:25:43.511Z", + "lastFirmwareUpdate": "2019-01-21T18:25:43.511Z", + "pendingFirmwareVersion": "AvereOS V5.1.1.32" + } + }, + "sku": { + "name": "Standard_2G" + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_UpgradeFirmware.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_UpgradeFirmware.json new file mode 100644 index 000000000000..78dafeba195b --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_UpgradeFirmware.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "cacheName": "sc1", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "201": { + "body": "" + }, + "202": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..da20fac79e33 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-08-01-preview", + "x-ms-client-request-id": [ + "7e655b68-e491-4cb6-90c3-6a5b10b7bd17" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.StorageCache/caches/write", + "display": { + "operation": "Create or Update Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + }, + { + "name": "Microsoft.StorageCache/caches/delete", + "display": { + "operation": "Delete Cache", + "provider": "Azure Storage Cache", + "resource": "Caches" + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json new file mode 100644 index 000000000000..90c76524f305 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "caches", + "name": "Standard_2G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "2" + }, + { + "name": "cache sizes(GB)", + "value": "3072,6144,12288" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_4G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "4" + }, + { + "name": "cache sizes(GB)", + "value": "6144,12288,24576" + } + ], + "restrictions": [] + }, + { + "resourceType": "caches", + "name": "Standard_8G", + "locations": [ + "East US" + ], + "locationInfo": [ + { + "location": "East US", + "zones": [] + } + ], + "capabilities": [ + { + "name": "throughput GB/s", + "value": "8" + }, + { + "name": "cache sizes(GB)", + "value": "12288,24576,49152" + } + ], + "restrictions": [] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json new file mode 100644 index 000000000000..53cc02c7ad13 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cacheName": "sc1", + "storageTargetName": "st1", + "storagetarget": { + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + }, + "201": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_INFREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Delete.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Delete.json new file mode 100644 index 000000000000..0dcd0c2c2f84 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json new file mode 100644 index 000000000000..11e7f4c3f77a --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cacheName": "sc1", + "storageTargetName": "st1" + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json new file mode 100644 index 000000000000..67c6004a37ff --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json @@ -0,0 +1,79 @@ + { + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cacheName": "sc1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + }, + { + "name": "st2", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st2", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazy/place/on/cache", + "targetPath": "/" + } + ], + "targetType": "clfs", + "clfs": { + "target": "https://atj5c2fc9b8c00.blob.core.windows.net/atj5c2fc9b8c01" + } + } + }, + { + "name": "st3", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st3", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/some/crazier/place/on/cache", + "targetPath": "/", + "nfsExport": "" + } + ], + "targetType": "unknown", + "unknown": { + "unknownMap": { + "foo": "bar", + "foo2": "test" + } + } + } + } + ] + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json new file mode 100644 index 000000000000..055de646fa3f --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "resourceGroupName": "scgroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview", + "cacheName": "sc1", + "storageTargetName": "st1", + "storagetarget": { + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "st1", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", + "type": "Microsoft.StorageCache/Cache/StorageTarget", + "properties": { + "junctions": [ + { + "namespacePath": "/path/on/cache", + "targetPath": "/path/on/exp1", + "nfsExport": "exp1" + }, + { + "namespacePath": "/path2/on/cache", + "targetPath": "/path2/on/exp2", + "nfsExport": "exp2" + + } + ], + "targetType": "nfs3", + "nfs3": { + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } + } + } + } + } +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json new file mode 100644 index 000000000000..87a24bde38cf --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "modelName": "READ_HEAVY_INFREQ", + "targetType": "nfs3", + "display": { + "description": "Read heavy, infrequent changes" + } + }, + { + "modelName": "WRITE_AROUND", + "targetType": "nfs3", + "display": { + "description": "Clients write directly to storage" + } + }, + { + "modelName": "WRITE_WORKLOAD_15", + "targetType": "nfs3", + "display": { + "description": "Write workload > 15%" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json new file mode 100644 index 000000000000..f214b3cd01a3 --- /dev/null +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json @@ -0,0 +1,1663 @@ +{ + "swagger": "2.0", + "info": { + "description": "A Storage Cache provides scalable caching service for NAS clients, serving data from either NFSv3 or Blob at-rest storage (referred to as \"Storage Targets\"). These operations allow you to manage caches.", + "title": "Storage Cache Mgmt Client", + "version": "2019-08-01-preview" + }, + "host": "management.azure.com", + "basePath": "/", + "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.StorageCache/operations": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ApiOperationListResult" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "tags": [ + "Operations" + ], + "description": "Lists all of the available RP operations.", + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/skus": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of SKU descriptors.", + "schema": { + "$ref": "#/definitions/ResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Skus_List": { + "$ref": "./examples/Skus_List.json" + } + }, + "tags": [ + "SKUs" + ], + "description": "Get the list of StorageCache.Cache SKUs available to this subscription.", + "operationId": "Skus_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/usageModels": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of UsageModel descriptors.", + "schema": { + "$ref": "#/definitions/UsageModelsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "UsageModels_List": { + "$ref": "./examples/UsageModels_List.json" + } + }, + "tags": [ + "UsageModels" + ], + "description": "Get the list of cache Usage Models available to this subscription.", + "operationId": "UsageModels_List" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Caches_List": { + "$ref": "./examples/Caches_List.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a subscription.", + "operationId": "Caches_List" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list of Cache objects. Note that entity references might replace complete Cache objects, as described in http://docs.oasis-open.org/odata/odata-json-format/v4.01/cs01/odata-json-format-v4.01-cs01.html#sec_EntityReference", + "schema": { + "$ref": "#/definitions/CachesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_ListByResourceGroup": { + "$ref": "./examples/Caches_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Caches" + ], + "description": "Returns all Caches the user has access to under a resource group and subscription.", + "operationId": "Caches_ListByResourceGroup" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Cache deleted.", + "schema": {} + }, + "202": { + "description": "Started the Cache's transition to Deleted state.", + "schema": {} + }, + "204": { + "description": "Cache deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Delete": { + "$ref": "./examples/Caches_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Schedules a Cache for deletion.", + "operationId": "Caches_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the Cache object corresponding to cacheId.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Get": { + "$ref": "./examples/Caches_Get.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Returns a Cache.", + "operationId": "Caches_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user selectable properties of the new cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Cache created or already exists.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "201": { + "description": "Cache creation has been initiated. Poll the new Cache's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Create": { + "$ref": "./examples/Caches_Create.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Create/update a Cache instance.", + "operationId": "Caches_Create" + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the user selectable properties of the new cache. If read-only properties are included, they must match the existing values of those properties.", + "in": "body", + "name": "cache", + "schema": { + "$ref": "#/definitions/Cache" + } + } + ], + "responses": { + "200": { + "description": "Patched the Cache.", + "schema": { + "$ref": "#/definitions/Cache" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Update": { + "$ref": "./examples/Caches_Update.json" + } + }, + "tags": [ + "Caches" + ], + "description": "Update a Cache instance.", + "operationId": "Caches_Update" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/flush": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "All cache data is clean.", + "schema": {} + }, + "202": { + "description": "Cache has started flushing.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Flush": { + "$ref": "./examples/Caches_Flush.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells a cache to write all dirty data to the StorageTarget(s). During the flush, clients will see errors returned until the flush is complete.", + "operationId": "Caches_Flush" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/start": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is Active.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Active.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Start": { + "$ref": "./examples/Caches_Start.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells a Stopped state cache to transition to Active state.", + "operationId": "Caches_Start" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/stop": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Cache is stopped.", + "schema": {} + }, + "202": { + "description": "Cache has started the transition to Stopped.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_Stop": { + "$ref": "./examples/Caches_Stop.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells an Active cache to transition to Stopped state.", + "operationId": "Caches_Stop" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets": { + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the list of storage targets defined by cacheId.", + "schema": { + "$ref": "#/definitions/StorageTargetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_List": { + "$ref": "./examples/StorageTargets_ListByCache.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns the StorageTargets for this cache in the subscription and resource group.", + "operationId": "StorageTargets_ListByCache" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/storageTargets/{storageTargetName}": { + "delete": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of storage target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Storage target deleted.", + "schema": {} + }, + "202": { + "description": "Started the storage target's deletion.", + "schema": {} + }, + "204": { + "description": "Storage target deleted.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Delete": { + "$ref": "./examples/StorageTargets_Delete.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Removes a storage target from a cache. This operation is allowed at any time, but if the cache is down or unhealthy, the actual removal of the storage target may be delayed until the cache is healthy again.", + "operationId": "StorageTargets_Delete" + }, + "get": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of storage target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the Storage Target object corresponding to storageTargetName.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Get": { + "$ref": "./examples/StorageTargets_Get.json" + } + }, + "tags": [ + "StorageTargets" + ], + "description": "Returns a storage target from a cache.", + "operationId": "StorageTargets_Get" + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of storage target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the definition of a storage target.", + "in": "body", + "name": "storagetarget", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + } + ], + "responses": { + "200": { + "description": "Storage Target has been created.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "201": { + "description": "Storage Target creation has been initiated. Poll the new Storage Target's provisioningState property to monitor creation progress.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Create": { + "$ref": "./examples/StorageTargets_Create.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "StorageTargets" + ], + "description": "Create/update a storage target. This operation is allowed at any time, but if the cache is down or unhealthy, the actual creation/modification of the storage target may be delayed until the cache is healthy again.", + "operationId": "StorageTargets_Create" + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Name of storage target.", + "in": "path", + "name": "storageTargetName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + }, + { + "description": "Object containing the definition of a storage target.", + "in": "body", + "name": "storagetarget", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + } + ], + "responses": { + "200": { + "description": "Storage Target has been patched.", + "schema": { + "$ref": "#/definitions/StorageTarget" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "StorageTargets_Update": { + "$ref": "./examples/StorageTargets_Update.json" + } + }, + "tags": [ + "StorageTargets" + ], + "description": "Update a storage target. This operation is allowed at any time, but if the cache is down or unhealthy, the actual creation/modification of the storage target may be delayed until the cache is healthy again.", + "operationId": "StorageTargets_Update" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/upgrade": { + "post": { + "produces": [ + "application/json" + ], + "parameters": [ + { + "description": "Target resource group.", + "in": "path", + "name": "resourceGroupName", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "description": "Name of cache.", + "in": "path", + "name": "cacheName", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Cache firmware is up to date.", + "schema": {} + }, + "202": { + "description": "Cache has started the upgrade.", + "schema": {} + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Caches_UpgradeFirmware": { + "$ref": "./examples/Caches_UpgradeFirmware.json" + } + }, + "x-ms-long-running-operation": true, + "tags": [ + "Caches" + ], + "description": "Tells a cache to upgrade its firmware.", + "operationId": "Caches_UpgradeFirmware" + } + } + }, + "definitions": { + "ApiOperation": { + "description": "REST API operation description: see https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md#r3023-operationsapiimplementation", + "properties": { + "display": { + "description": "The object that represents the operation.", + "properties": { + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft.StorageCache", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: cache, etc.", + "type": "string" + } + } + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + } + }, + "type": "object" + }, + "ApiOperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string" + }, + "value": { + "description": "List of Resource Provider operations supported by the Microsoft.StorageCache resource provider.", + "items": { + "$ref": "#/definitions/ApiOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "CloudError": { + "description": "An error response.", + "properties": { + "error": { + "description": "The body of the error.", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "type": "object" + }, + "CloudErrorBody": { + "description": "An error response.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "type": "array" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + } + }, + "type": "object" + }, + "Cache": { + "description": "A cache instance. Follows Azure Resource Manager standards: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md", + "properties": { + "tags": { + "description": "ARM tags as name/value pairs.", + "type": "object" + }, + "id": { + "description": "Fully qualified URL of the cache.", + "readOnly": true, + "$ref": "#/definitions/URLString" + }, + "location": { + "description": "Region name string.", + "type": "string" + }, + "name": { + "description": "Name of cache.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "type": { + "description": "Type for the cache; Microsoft.StorageCache/Cache", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties for the cache.", + "properties": { + "cacheSizeGB": { + "description": "The size of this cache's cache, in GB.", + "type": "integer" + }, + "health": { + "description": "Health of the cache.", + "readOnly": true, + "$ref": "#/definitions/CacheHealth" + }, + "mountAddresses": { + "description": "Array of IP addresses that can be used by clients mounting this Cache.", + "readOnly": true, + "items": { + "type": "string" + }, + "type": "array" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum":[ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "subnet": { + "description": "Subnet used for the cache.", + "$ref": "#/definitions/URLString" + }, + "upgradeStatus": { + "description": "Upgrade status of the cache.", + "$ref": "#/definitions/CacheUpgradeStatus" + } + }, + "type": "object" + }, + "sku": { + "description": "Sku for the cache.", + "properties": { + "name": { + "description": "Sku name for this cache.", + "type": "string" + } + }, + "type": "object" + } + }, + "x-ms-azure-resource": true, + "type": "object" + }, + "CachesListResult": { + "description": "Result of the request to list caches. It contains a list of caches and a URL link to get the next set of results.", + "properties": { + "nextLink": { + "description": "URL to get the next set of cache list results if there are any.", + "type": "string" + }, + "value": { + "description": "List of caches.", + "items": { + "$ref": "#/definitions/Cache" + }, + "type": "array" + } + }, + "type": "object" + }, + "CacheHealth": { + "description": "An indication of cache health. Gives more information about health than just that related to provisioning.", + "properties": { + "state": { + "description": "List of cache health states.", + "enum": [ + "Unknown", + "Healthy", + "Degraded", + "Down", + "Transitioning", + "Stopping", + "Stopped", + "Upgrading", + "Flushing" + ], + "x-ms-enum": { + "name": "HealthStateType", + "modelAsString": true + }, + "type": "string" + }, + "statusDescription": { + "description": "Describes explanation of state.", + "type": "string" + } + } + }, + "CacheUpgradeStatus": { + "description": "Properties describing the software upgrade state of the cache", + "properties": { + "currentFirmwareVersion": { + "description": "Version string of the firmware currently installed on this cache.", + "type": "string", + "readOnly": true + }, + "firmwareUpdateStatus": { + "description": "True if there is a firmware update ready to install on this cache. The firmware will automatically be installed after firmwareUpdateDeadline if not triggered earlier via the upgrade operation.", + "enum": [ + "available", + "unavailable" + ], + "x-ms-enum": { + "name": "FirmwareStatusType", + "modelAsString": true + }, + "readOnly": true, + "type": "string" + }, + "firmwareUpdateDeadline": { + "description": "Time at which the pending firmware update will automatically be installed on the cache.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "lastFirmwareUpdate": { + "description": "Time of the last successful firmware update.", + "format": "date-time", + "type": "string", + "readOnly": true + }, + "pendingFirmwareVersion": { + "description": "When firmwareUpdateAvailable is true, this field holds the version string for the update.", + "type": "string", + "readOnly": true + } + }, + "type": "object" + }, + "UnknownProperties": { + "description": "Properties of an unknown type of StorageTarget", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "Nfs3Target": { + "description": "An NFS mount point for use as a StorageTarget.", + "properties": { + "target": { + "description": "IP or name of an NFS Storage Target host, ie: 10.0.44.44", + "pattern": "^[-.0-9a-zA-Z]+$", + "type": "string" + }, + "usageModel": { + "description": "Identifies the primary usage model to be used for this storage target. GET choices from .../usageModels", + "type": "string" + } + }, + "x-ms-discriminator-value": "nfs3", + "type": "object" + }, + "ClfsTarget": { + "description": "Storage container for use as a CLFS StorageTarget.", + "properties": { + "target": { + "description": "URL of storage container.", + "$ref": "#/definitions/URLString" + } + }, + "x-ms-discriminator-value": "clfs", + "type": "object" + }, + "UnknownTarget": { + "description": "Storage container for use as a Unknown StorageTarget.", + "properties": { + "unknownMap": { + "description": "Dictionary of string->string pairs containing information about the StorageTarget.", + "$ref": "#/definitions/UnknownProperties" + } + }, + "x-ms-discriminator-value": "unknown", + "type": "object" + }, + "ResourceName": { + "description": "Schema for the name of resources served by this provider. Note that objects will contain an odata @id annotation as appropriate, this will contain the complete URL of the object. These names are case-preserving, but not case sensitive.", + "pattern": "^[-0-9a-zA-Z_]{1,31}$", + "type": "string" + }, + "ResourceSku": { + "description": "A resource SKU", + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the sku applies to." + }, + "capabilities": { + "description": "A list of capabilities of this SKU, such as throughput or ops/sec", + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "type": "array" + }, + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "description": "The set of locations that the SKU is available.", + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "type": "array" + }, + "name": { + "description": "The name of this sku.", + "type": "string" + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "type": "object" + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction. As of now this can be \"QuotaId\" or \"NotAvailableForSubscription\". Quota Id is set when the SKU has requiredQuotas parameter as the subscription does not belong to that quota. The \"NotAvailableForSubscription\" is related to capacity at DC." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "ResourceSkuCapabilities": { + "description": "A resource SKU capability.", + "properties": { + "name": { + "description": "Name of a capability, such as ops/sec", + "type": "string" + }, + "value": { + "description": "Quantity, if the capability is measured by quantity", + "type": "string" + } + }, + "type": "object" + }, + "ResourceSkuLocationInfo": { + "description": "Resource SKU location information.", + "properties": { + "location": { + "description": "Location where this Sku is available", + "type": "string" + }, + "zones": { + "description": "Zones if any.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, + "ResourceSkusResult": { + "description": "The response from the List Cache SKUs operation.", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of cache Skus.", + "type": "string" + }, + "value": { + "description": "The list of skus available for the subscription.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSku" + }, + "type": "array" + } + } + }, + "StorageTarget": { + "description": "A storage system being cached by a Cache.", + "type": "object", + "discriminator": "targetType", + "properties": { + "name": { + "description":"A fully qualified URL.", + "readOnly": true, + "$ref": "#/definitions/ResourceName" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "type": { + "description": "Type for the storage target; Microsoft.StorageCache/Cache/StorageTarget", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the storage target.", + "type": "object", + "properties": { + "junctions": { + "description": "List of cache namespace to target namespace associations.", + "type": "array", + "items": { + "$ref": "#/definitions/NamespaceJunction" + } + }, + "targetType": { + "description": "Type for storage target.", + "enum": [ + "nfs3", + "clfs", + "unknown" + ], + "x-ms-enum": { + "name": "StorageTargetType", + "modelAsString": true + }, + "type": "string" + }, + "provisioningState": { + "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", + "enum":[ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningStateType", + "modelAsString": true + }, + "type": "string" + }, + "nfs3": { + "description": "Properties when nfs3 target.", + "$ref": "#/definitions/Nfs3Target" + }, + "clfs": { + "description": "Properties when clfs target.", + "$ref": "#/definitions/ClfsTarget" + }, + "unknown": { + "description": "Properties when unknown target.", + "$ref": "#/definitions/UnknownTarget" + } + } + } + }, + "x-ms-azure-resource": true + }, + "NamespaceJunction": { + "description": "A namespace junction.", + "type": "object", + "properties": { + "namespacePath": { + "description": "Namespace path on a cache for a storage target.", + "type": "string" + }, + "targetPath": { + "description": "Path in storage target to which namespacePath points.", + "type": "string" + }, + "nfsExport": { + "description": "NFS export where targetPath exists.", + "type": "string" + } + } + }, + "StorageTargetsResult": { + "description": "A list of storage targets.", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of storage targets.", + "type": "string" + }, + "value": { + "description": "The list of storage targets defined for the cache.", + "items": { + "$ref": "#/definitions/StorageTarget" + }, + "type": "array" + } + }, + "type": "object" + }, + "URLString": { + "description": "A fully qualified URL.", + "type": "string" + }, + "UsageModel": { + "description": "A usage model.", + "properties": { + "display": { + "description": "Localized information describing this usage model.", + "type": "object", + "properties": { + "description": { + "description": "String to display for this usage model.", + "type": "string" + } + } + }, + "modelName": { + "description": "Non localized keyword naming this usage model.", + "type": "string" + }, + "targetType": { + "description": "The type of Storage Target to which this model is applicable (only nfs for now)", + "type": "string" + } + }, + "type": "object" + }, + "UsageModelsResult": { + "description": "A list of cache usage models.", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of cache usage models.", + "type": "string" + }, + "value": { + "description": "The list of usage models available for the subscription.", + "items": { + "$ref": "#/definitions/UsageModel" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/storagecache/resource-manager/readme.csharp.md b/specification/storagecache/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..8dc92be5e60c --- /dev/null +++ b/specification/storagecache/resource-manager/readme.csharp.md @@ -0,0 +1,13 @@ +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Azure.Management.Storagecache + output-folder: $(csharp-sdks-folder)/storagecache/Microsoft.Azure.Management.Storagecache/src/Generated +``` diff --git a/specification/storagecache/resource-manager/readme.go.md b/specification/storagecache/resource-manager/readme.go.md new file mode 100644 index 000000000000..d11946e954ce --- /dev/null +++ b/specification/storagecache/resource-manager/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: storagecache + clear-output-folder: true +``` + +### Tag: package-2019-08 and go + +These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2019-08' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-08/$(namespace) +``` diff --git a/specification/storagecache/resource-manager/readme.java.md b/specification/storagecache/resource-manager/readme.java.md new file mode 100644 index 000000000000..db7ff2df6f12 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.java.md @@ -0,0 +1,26 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.storagecache +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storagecache +``` + +### Tag: package-2019-08 and java + +These settings apply only when `--tag=package-2019-08 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-08' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storagecache.v2019_08_01 + output-folder: $(azure-libraries-for-java-folder)/storagecache/resource-manager/v2019_08_01 +regenerate-manager: true +generate-interface: true +``` diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md new file mode 100644 index 000000000000..ff8ed4822218 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.md @@ -0,0 +1,81 @@ +# StorageCache + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for storagecache RP. + + + +--- +## Getting Started +To build the SDK for storagecache, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the StorageCache API. + +``` yaml +openapi-type: arm +tag: package-2019-08 +``` + +### Tag: package-2019-08 + +These settings apply only when `--tag=package-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08' +input-file: +- Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json +``` + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-net + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_storagecache'] +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## C# + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + diff --git a/specification/storagecache/resource-manager/readme.python.md b/specification/storagecache/resource-manager/readme.python.md new file mode 100644 index 000000000000..5e7e96a9a90a --- /dev/null +++ b/specification/storagecache/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.storagecache + package-name: azure-mgmt-storagecache + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache/azure/mgmt/storagecache +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagecache +``` diff --git a/specification/storagecache/resource-manager/readme.ruby.md b/specification/storagecache/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..209e042d0485 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_storagecache +package-version: 2019-08 +azure-arm: true +``` + +### Tag: package-2019-08 and ruby + +These settings apply only when `--tag=package-2019-08 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2019-08' && $(ruby) +namespace: "Azure::StorageCache::Mgmt::V2019_08" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_storagecache/lib +``` diff --git a/specification/storagecache/resource-manager/readme.typescript.md b/specification/storagecache/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..3c8bc521c8c9 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-storagecache" + payload-flattening-threshold: 2 + output-folder: "$(typescript-sdks-folder)/sdk/storagecache/arm-storagecache" + generate-metadata: true +``` From 9b0aab7af652f087ead11c4a6dc7f9b5542d5862 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 30 Aug 2019 06:21:24 +0000 Subject: [PATCH 056/123] regenerated all-api-versions --- .../storagecache/resource-manager/readme.md | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index ff8ed4822218..d626d64d443b 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -79,3 +79,28 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.ruby.md](./readme.ruby.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + From 972c6e72e6be9d418fd99e51cb11db7a6c701486 Mon Sep 17 00:00:00 2001 From: Hyonho Lee Date: Fri, 30 Aug 2019 02:04:39 -0700 Subject: [PATCH 057/123] Add missing $expand parameter to AvSet list by subscription API (#7078) --- .../stable/2016-03-30/compute.json | 7 ++ .../stable/2017-03-30/compute.json | 7 ++ ...eSetFromAnUnmanagedGeneralizedOsImage.json | 69 ++++++++++++++ ...geVmFromAnUnmanagedGeneralizedOsImage.json | 3 +- ...formImageScaleSetWithUnmanagedOsDisks.json | 74 +++++++++++++++ ...ormImageVmWithUnmanagedOsAndDataDisks.json | 3 +- .../CreateAScaleSetFromACustomImage.json | 69 ++++++++++++++ ...ateAScaleSetWithAMarketplaceImagePlan.json | 78 ++++++++++++++++ ...ScaleSetWithAnAzureApplicationGateway.json | 78 ++++++++++++++++ ...reateAScaleSetWithAnAzureLoadBalancer.json | 83 +++++++++++++++++ .../CreateAScaleSetWithBootDiagnostics.json | 79 ++++++++++++++++ ...teAScaleSetWithEmptyDataDisksOnEachVm.json | 93 +++++++++++++++++++ ...teAScaleSetWithPasswordAuthentication.json | 73 +++++++++++++++ .../CreateAScaleSetWithPremiumStorage.json | 73 +++++++++++++++ .../CreateAScaleSetWithSshAuthentication.json | 80 ++++++++++++++++ .../examples/CreateAVmFromACustomImage.json | 3 +- .../CreateAVmInAnAvailabilitySet.json | 3 +- .../CreateAVmWithAMarketplaceImagePlan.json | 1 - .../CreateAVmWithBootDiagnostics.json | 3 +- .../examples/CreateAVmWithEmptyDataDisks.json | 3 +- .../CreateAVmWithPasswordAuthentication.json | 3 +- .../examples/CreateAVmWithPremiumStorage.json | 3 +- .../CreateAVmWithSshAuthentication.json | 3 +- .../examples/CreateAnImageFromABlob.json | 20 ++++ .../CreateAnImageFromAManagedDisk.json | 22 +++++ .../examples/CreateAnImageFromASnapshot.json | 22 +++++ .../examples/CreateAnImageFromAVM.json | 25 +++++ ...AnImageThatIncludesADataDiskFromABlob.json | 25 +++++ ...ThatIncludesADataDiskFromAManagedDisk.json | 29 ++++++ ...ageThatIncludesADataDiskFromASnapshot.json | 29 ++++++ .../stable/2017-12-01/compute.json | 7 ++ ...geVmFromAnUnmanagedGeneralizedOsImage.json | 3 +- ...ormImageVmWithUnmanagedOsAndDataDisks.json | 3 +- .../examples/CreateAVmFromACustomImage.json | 3 +- .../CreateAVmInAnAvailabilitySet.json | 3 +- .../CreateAVmWithAMarketplaceImagePlan.json | 1 - .../CreateAVmWithBootDiagnostics.json | 3 +- .../examples/CreateAVmWithEmptyDataDisks.json | 3 +- .../CreateAVmWithPasswordAuthentication.json | 3 +- .../examples/CreateAVmWithPremiumStorage.json | 3 +- .../CreateAVmWithSshAuthentication.json | 3 +- .../stable/2018-04-01/compute.json | 7 ++ ...geVmFromAnUnmanagedGeneralizedOsImage.json | 3 +- ...ormImageVmWithUnmanagedOsAndDataDisks.json | 3 +- .../examples/CreateAVmFromACustomImage.json | 3 +- .../CreateAVmInAnAvailabilitySet.json | 3 +- .../CreateAVmWithAMarketplaceImagePlan.json | 1 - .../CreateAVmWithBootDiagnostics.json | 3 +- .../examples/CreateAVmWithEmptyDataDisks.json | 3 +- .../CreateAVmWithPasswordAuthentication.json | 3 +- .../examples/CreateAVmWithPremiumStorage.json | 3 +- .../CreateAVmWithSshAuthentication.json | 3 +- .../LogAnalyticsRequestRateByInterval.json | 6 +- .../LogAnalyticsThrottledRequests.json | 6 +- .../stable/2018-06-01/compute.json | 7 ++ .../stable/2018-10-01/compute.json | 7 ++ .../stable/2019-03-01/compute.json | 7 ++ 57 files changed, 1099 insertions(+), 67 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json index 458748090195..a78097f8bce6 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json @@ -173,6 +173,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json index e6aa026cd672..8396348d4785 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json @@ -177,6 +177,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json index 2eb8a7fa2932..367a48b1a691 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json @@ -57,6 +57,75 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json index 053c6d05f092..8174719fc864 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -39,8 +39,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json index 61b31b36a345..19228ae2bd7b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json @@ -67,6 +67,80 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json index 5c0dbdd7291b..91ec6e0193d9 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -59,8 +59,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetFromACustomImage.json index 8f321d125fba..e4151f47968d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetFromACustomImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetFromACustomImage.json @@ -59,6 +59,75 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAMarketplaceImagePlan.json index 824527c74cef..bf7bcddb3843 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAMarketplaceImagePlan.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAMarketplaceImagePlan.json @@ -67,6 +67,84 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureApplicationGateway.json index 9d2089201e4d..621990a6e488 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureApplicationGateway.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureApplicationGateway.json @@ -67,6 +67,84 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureLoadBalancer.json index c3b831146c0f..2266799f00cd 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureLoadBalancer.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithAnAzureLoadBalancer.json @@ -72,6 +72,89 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithBootDiagnostics.json index 8981af240044..5d0e3f27fa68 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithBootDiagnostics.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithBootDiagnostics.json @@ -68,6 +68,85 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json index 7195a3f27106..9792e9102ba0 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json @@ -74,6 +74,99 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPasswordAuthentication.json index 07d08d005f26..3751150b5277 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPasswordAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPasswordAuthentication.json @@ -62,6 +62,79 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPremiumStorage.json index 31154933a966..df4f9520a114 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPremiumStorage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithPremiumStorage.json @@ -62,6 +62,79 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithSshAuthentication.json index 9e14df45aead..95c2c83b6820 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithSshAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAScaleSetWithSshAuthentication.json @@ -72,6 +72,86 @@ } }, "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, "201": { "body": { "sku": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmFromACustomImage.json index 3b702b136ec3..c4aa78e5164f 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmFromACustomImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmFromACustomImage.json @@ -38,8 +38,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmInAnAvailabilitySet.json index aec64b17b53d..f102d1a55644 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmInAnAvailabilitySet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmInAnAvailabilitySet.json @@ -44,8 +44,7 @@ "availabilitySet": { "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithAMarketplaceImagePlan.json index 5aa553945a7d..a5413229216a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithAMarketplaceImagePlan.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -11,7 +11,6 @@ "product": "windows-data-science-vm", "name": "windows2016" }, - "name": "myVM", "properties": { "hardwareProfile": { "vmSize": "Standard_D1_v2" diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithBootDiagnostics.json index 17a71c772c67..e39aea890b07 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithBootDiagnostics.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithBootDiagnostics.json @@ -47,8 +47,7 @@ "enabled": true } } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithEmptyDataDisks.json index f2ab3afe5612..564668d9d4a8 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithEmptyDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithEmptyDataDisks.json @@ -53,8 +53,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPasswordAuthentication.json index 9e65a5f9d355..776ea58dd59e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPasswordAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPasswordAuthentication.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPremiumStorage.json index f68bbe09816c..ee13fc8eb1fd 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPremiumStorage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithPremiumStorage.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithSshAuthentication.json index e5182120f538..f7bf39407cf7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithSshAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAVmWithSshAuthentication.json @@ -51,8 +51,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromABlob.json index ad84382fe7e9..6efac9d4ecca 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromABlob.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromABlob.json @@ -18,6 +18,26 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAManagedDisk.json index 5b13273b57f3..b1d46b4d5d05 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAManagedDisk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAManagedDisk.json @@ -20,6 +20,28 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromASnapshot.json index 8b54f231479b..abc20742b869 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromASnapshot.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromASnapshot.json @@ -20,6 +20,28 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAVM.json index ac54e1bd98fd..9f301cafdd3e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAVM.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageFromAVM.json @@ -14,6 +14,31 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromABlob.json index f4f14a84581f..7a0c79b74a5b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromABlob.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromABlob.json @@ -24,6 +24,31 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json index a6e5ca71e8c6..b205c5ddc7ae 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json @@ -28,6 +28,35 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json index 12023acf3634..bcbf48e85eb9 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json @@ -28,6 +28,35 @@ } }, "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, "201": { "body": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index 359a36fa1d17..be0f95849a48 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -248,6 +248,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json index 7fc99c5727ae..e3e994321c68 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -39,8 +39,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json index becc019a8fef..8cb6a7fa3e4f 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -59,8 +59,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmFromACustomImage.json index 0aec04501d1e..c6fdb7cdd87a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmFromACustomImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmFromACustomImage.json @@ -38,8 +38,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmInAnAvailabilitySet.json index fd66711a71c1..44a8f007f6a6 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmInAnAvailabilitySet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmInAnAvailabilitySet.json @@ -44,8 +44,7 @@ "availabilitySet": { "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json index 41bf7f06d16e..e033867da391 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -11,7 +11,6 @@ "product": "windows-data-science-vm", "name": "windows2016" }, - "name": "myVM", "properties": { "hardwareProfile": { "vmSize": "Standard_D1_v2" diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithBootDiagnostics.json index c7dec4a7325e..4f954f8d4ee7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithBootDiagnostics.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithBootDiagnostics.json @@ -47,8 +47,7 @@ "enabled": true } } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithEmptyDataDisks.json index 3e82199880af..07af453e864a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithEmptyDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithEmptyDataDisks.json @@ -53,8 +53,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPasswordAuthentication.json index a1bae28f04ed..7323c79e5ff5 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPasswordAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPasswordAuthentication.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPremiumStorage.json index 38bca9ecbe98..10cf54c72a63 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPremiumStorage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithPremiumStorage.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithSshAuthentication.json index 6a9b0daee851..0a97ac31b881 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithSshAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/examples/CreateAVmWithSshAuthentication.json @@ -51,8 +51,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json index b0ad1015e966..5a910b5a41b1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json @@ -245,6 +245,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json index 4f9f1876d67d..d5d11961736b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -39,8 +39,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json index 654744f21548..260617dc716b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -59,8 +59,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmFromACustomImage.json index ccf9a7684aaf..fc52c775ee56 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmFromACustomImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmFromACustomImage.json @@ -38,8 +38,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmInAnAvailabilitySet.json index d2d761f236cb..9386c0cc0c27 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmInAnAvailabilitySet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmInAnAvailabilitySet.json @@ -44,8 +44,7 @@ "availabilitySet": { "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithAMarketplaceImagePlan.json index 01910919eb91..728a62b1428b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithAMarketplaceImagePlan.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -11,7 +11,6 @@ "product": "windows-data-science-vm", "name": "windows2016" }, - "name": "myVM", "properties": { "hardwareProfile": { "vmSize": "Standard_D1_v2" diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithBootDiagnostics.json index 425252a2588a..8e8718e785c5 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithBootDiagnostics.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithBootDiagnostics.json @@ -47,8 +47,7 @@ "enabled": true } } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithEmptyDataDisks.json index 1caa47caf5e3..1a0b06757c56 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithEmptyDataDisks.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithEmptyDataDisks.json @@ -53,8 +53,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPasswordAuthentication.json index 96e5b052e5ee..ac1aaebee3e4 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPasswordAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPasswordAuthentication.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPremiumStorage.json index c8ecc10c67c1..5263dbb48f26 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPremiumStorage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithPremiumStorage.json @@ -41,8 +41,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithSshAuthentication.json index a3505e3ce8af..d0a0238225b4 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithSshAuthentication.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/CreateAVmWithSshAuthentication.json @@ -51,8 +51,7 @@ } ] } - }, - "name": "myVM" + } } }, "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsRequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsRequestRateByInterval.json index 7c1ede1e077b..f2fba97887ee 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsRequestRateByInterval.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsRequestRateByInterval.json @@ -14,13 +14,9 @@ "responses": { "200": { "body": { - "startTime": "2018-01-30T17:54:14.8806951-08:00", - "endTime": "2018-01-30T17:54:17.5832413-08:00", - "status": "Succeeded", "properties": { "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv" - }, - "name": "8eb1169a-5cf9-46b1-aadf-41e4f60692df" + } } }, "202": {} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsThrottledRequests.json index 5dfa9a403195..af6be605ebc8 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsThrottledRequests.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/examples/LogAnalyticsThrottledRequests.json @@ -14,13 +14,9 @@ "responses": { "200": { "body": { - "startTime": "2018-01-30T17:54:14.8806951-08:00", - "endTime": "2018-01-30T17:54:17.5832413-08:00", - "status": "Succeeded", "properties": { "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv" - }, - "name": "8eb1169a-5cf9-46b1-aadf-41e4f60692df" + } } }, "202": {} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json index 9d872a0199b0..5ebf7ac468e7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json @@ -245,6 +245,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index 82faabebd76c..47de71527c0c 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -245,6 +245,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 7863ebcd7c8c..e1fa0878ba79 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -245,6 +245,13 @@ }, { "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." } ], "responses": { From 0516b844c497a20322b9455d7c428e534690835d Mon Sep 17 00:00:00 2001 From: David Li Date: Sat, 31 Aug 2019 00:59:06 +0800 Subject: [PATCH 058/123] Fix check domain path (#7042) * Adding data plane spec starting with Face * Move Spec to right folder * Fixing validation issues. * Fixing issues and adding a readme.md * Fixing examples by removing decimals. * Removing another decimal value * Update readme.md * Updating spec based on comments. * Removing .gitignore. * Changing namespace to include category. * Adding ComputerVision jsopn * Fixing CheckDomainAvailability path * Removed rogue file --- .../stable/2017-04-18/cognitiveservices.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json index de9845f17678..8dce807da01d 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json @@ -676,7 +676,7 @@ } } }, - "/providers/Microsoft.CognitiveServices/checkDomainAvailability": { + "/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/checkDomainAvailability": { "post": { "tags": [ "CognitiveServicesAccounts" @@ -689,6 +689,9 @@ } }, "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, { "$ref": "#/parameters/apiVersionParameter" }, From 081caca33421fea03e4bd7da9178192af93f6270 Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Fri, 30 Aug 2019 10:23:16 -0700 Subject: [PATCH 059/123] Adding Maintenance RP, Private Preview PR https://github.com/Azure/azure-rest-api-specs-pr/pull/482 (#6469) * Maintenance RP manifest and examples * Adding MRP List operation * removing scheduler * removing Policy based examples * adding maintenanceConfiguration list and resourceId for updates --- .../2018-06-01-preview/Maintenance.json | 1632 +++++++++++++++++ .../examples/ApplyUpdates_CreateOrUpdate.json | 23 + .../ApplyUpdates_CreateOrUpdateParent.json | 25 + .../examples/ApplyUpdates_Get.json | 24 + .../examples/ApplyUpdates_GetParent.json | 26 + ...nfigurationAssignments_CreateOrUpdate.json | 29 + ...ationAssignments_CreateOrUpdateParent.json | 31 + .../ConfigurationAssignments_Delete.json | 20 + ...ConfigurationAssignments_DeleteParent.json | 22 + .../ConfigurationAssignments_List.json | 27 + .../ConfigurationAssignments_ListParent.json | 29 + ...figurations_CreateOrUpdateForResource.json | 27 + ...nanceConfigurations_DeleteForResource.json | 20 + ...ntenanceConfigurations_GetForResource.json | 21 + .../MaintenanceConfigurations_List.json | 24 + ...nanceConfigurations_UpdateForResource.json | 27 + .../examples/Operations_List.json | 13 + .../examples/Updates_List.json | 26 + .../examples/Updates_ListParent.json | 28 + .../maintenance/resource-manager/readme.md | 143 ++ .../resource-manager/readme.nodejs.md | 15 + .../resource-manager/readme.ruby.md | 27 + 22 files changed, 2259 insertions(+) create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json create mode 100644 specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json create mode 100644 specification/maintenance/resource-manager/readme.md create mode 100644 specification/maintenance/resource-manager/readme.nodejs.md create mode 100644 specification/maintenance/resource-manager/readme.ruby.md diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json new file mode 100644 index 000000000000..de7f0ec5be77 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json @@ -0,0 +1,1632 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01-preview", + "title": "MaintenanceManagementClient", + "description": "Azure Maintenance Management Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource with parent", + "description": "Track maintenance updates to resource with parent", + "operationId": "ApplyUpdates_GetParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_GetParent": { + "$ref": "./examples/ApplyUpdates_GetParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource", + "description": "Track maintenance updates to resource", + "operationId": "ApplyUpdates_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_Get": { + "$ref": "./examples/ApplyUpdates_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource with parent", + "description": "Apply maintenance updates to resource with parent", + "operationId": "ApplyUpdates_CreateOrUpdateParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdateParent": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource", + "description": "Apply maintenance updates to resource", + "operationId": "ApplyUpdates_CreateOrUpdate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdate": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdateParent", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdateParent": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_DeleteParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_DeleteParent": { + "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdate": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_Delete": { + "$ref": "./examples/ConfigurationAssignments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_ListParent": { + "$ref": "./examples/ConfigurationAssignments_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_List": { + "$ref": "./examples/ConfigurationAssignments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration record", + "operationId": "MaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_GetForResource": { + "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Create or Update configuration record", + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_CreateOrUpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Delete Configuration record", + "operationId": "MaintenanceConfigurations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_DeleteForResource": { + "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" + } + } + }, + "patch": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Patch configuration record", + "operationId": "MaintenanceConfigurations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_UpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "MaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MaintenanceConfigurations_List": { + "$ref": "./examples/MaintenanceConfigurations_List.json" + } + } + } + }, + "/providers/Microsoft.Maintenance/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations", + "description": "List the available operations supported by the Microsoft.Maintenance resource provider", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_ListParent": { + "$ref": "./examples/Updates_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_List": { + "$ref": "./examples/Updates_List.json" + } + } + } + } + }, + "definitions": { + "ApplyUpdateProperties": { + "description": "Properties for apply update", + "type": "object", + "properties": { + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resourceId", + "type": "string" + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last Update time", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ApplyUpdate": { + "description": "Apply Update request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplyUpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "ConfigurationAssignmentProperties": { + "description": "Properties for configuration assignment", + "type": "object", + "properties": { + "maintenanceConfigurationId": { + "description": "The maintenance configuration Id", + "type": "string" + }, + "resourceId": { + "description": "The unique resourceId", + "type": "string" + } + } + }, + "ConfigurationAssignment": { + "description": "Configuration Assignment", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ConfigurationAssignmentProperties", + "description": "Properties of the configuration assignment", + "x-ms-client-flatten": true + } + } + }, + "ListConfigurationAssignmentsResult": { + "description": "Response for ConfigurationAssignments list", + "type": "object", + "properties": { + "value": { + "description": "The list of configuration Assignments", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + } + }, + "MaintenanceConfigurationProperties": { + "description": "Properties for maintenance configuration", + "type": "object", + "properties": { + "namespace": { + "description": "Gets or sets namespace of the resource", + "type": "string" + }, + "extensionProperties": { + "description": "Gets or sets extensionProperties of the maintenanceConfiguration", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "maintenanceScope": { + "description": "Gets or sets maintenanceScope of the configuration", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + } + } + }, + "MaintenanceConfiguration": { + "description": "Maintenance configuration record type", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Gets or sets location of the resource", + "type": "string" + }, + "tags": { + "description": "Gets or sets tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "description": "Gets or sets properties of the resource", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceError": { + "description": "An error response received from the Azure Maintenance service.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails", + "description": "Details of the error" + } + } + }, + "ErrorDetails": { + "description": "An error response details received from the Azure Maintenance service.", + "type": "object", + "properties": { + "code": { + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + } + } + }, + "ListMaintenanceConfigurationsResult": { + "description": "Response for MaintenanceConfigurations list", + "type": "object", + "properties": { + "value": { + "description": "The list of maintenance Configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + }, + "ListUpdatesResult": { + "description": "Response for Updates list", + "type": "object", + "properties": { + "value": { + "description": "The pending updates", + "type": "array", + "items": { + "$ref": "#/definitions/Update" + } + } + } + }, + "Update": { + "description": "Maintenance update on a resource", + "type": "object", + "properties": { + "maintenanceScope": { + "description": "The impact area", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + }, + "impactType": { + "description": "The impact type", + "enum": [ + "None", + "Freeze", + "Restart", + "Redeploy" + ], + "type": "string", + "x-ms-enum": { + "name": "ImpactType", + "modelAsString": true + } + }, + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "impactDurationInSec": { + "format": "int32", + "description": "Duration of impact in seconds", + "type": "integer" + }, + "notBefore": { + "format": "date-time", + "description": "Time when Azure will start force updates if not self-updated by customer before this time", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/UpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "UpdateProperties": { + "description": "Properties for update", + "type": "object", + "properties": { + "resourceId": { + "description": "The resourceId", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Version of the API to be used with the client request.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json new file mode 100644 index 000000000000..b4264e12af39 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Pending" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json new file mode 100644 index 000000000000..5ca31ab48bae --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "smdvm1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Pending" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json new file mode 100644 index 000000000000..127fbb817d04 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "applyUpdateName" : "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json new file mode 100644 index 000000000000..21db01cf51d0 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "smdvm1", + "applyUpdateName" : "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Completed" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json new file mode 100644 index 000000000000..b84a6ae84081 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "configurationAssignmentName" : "workervmConfiguration", + "api-version": "2018-06-01-preview", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json new file mode 100644 index 000000000000..3b8be738006e --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "smdvm1", + "configurationAssignmentName" : "workervmPolicy", + "api-version": "2018-06-01-preview", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" + } + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json new file mode 100644 index 000000000000..8b95b257ae05 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "configurationAssignmentName" : "workervmConfiguration", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json new file mode 100644 index 000000000000..fc7ac3fe53e3 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "smdvm1", + "configurationAssignmentName" : "workervmConfiguration", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json new file mode 100644 index 000000000000..75b0ba1dc730 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value":[ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json new file mode 100644 index 000000000000..759ead17c1fc --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "smdvm1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value":[ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json new file mode 100644 index 000000000000..618936d8c95b --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName" : "configuration1", + "api-version": "2018-06-01-preview", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json new file mode 100644 index 000000000000..e664e47c271c --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName" : "example1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..5c46c6ccb4ba --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName" : "configuration1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json new file mode 100644 index 000000000000..7c3dee16b6e5 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": + [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json new file mode 100644 index 000000000000..618936d8c95b --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName" : "configuration1", + "api-version": "2018-06-01-preview", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..af8acc7ab70a --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + ] + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json new file mode 100644 index 000000000000..c99bd147e1c2 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceType" : "virtualMachineScaleSets", + "resourceName" : "smdtest1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [{ + "maintenanceScope": "Resource", + "status" : "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties":{ + "resourceId":"/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + }] + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json new file mode 100644 index 000000000000..166c838215d3 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName" : "Microsoft.Compute", + "resourceParentType" : "virtualMachineScaleSets", + "resourceParentName" : "smdtest1", + "resourceType" : "virtualMachines", + "resourceName" : "1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [{ + "maintenanceScope": "Resource", + "status" : "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties":{ + "resourceId":"/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + } + }] + } + } + } +} \ No newline at end of file diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md new file mode 100644 index 000000000000..27f52b7015ac --- /dev/null +++ b/specification/maintenance/resource-manager/readme.md @@ -0,0 +1,143 @@ +# Maintenance + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Maintenance. + + + +--- +## Getting Started +To build the SDK for Azure Maintenance, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the Azure Maintenance API. + +``` yaml +openapi-type: arm +tag: package-2018-06-preview +``` + + +### Tag: package-2018-06-preview + +These settings apply only when `--tag=package-2018-06-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-06-preview' +input-file: +- Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json +``` + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-libraries-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-node +``` + + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.Maintenance + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Maintenance/Management.Maintenance/Generated + clear-output-folder: true +``` + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.Maintenance + package-name: azure-mgmt-Maintenance + package-version: 1.0.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-Maintenance/azure/mgmt/Maintenance +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-Maintenance +``` + +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: Maintenance + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2018-06-preview +``` + +### Tag: package-2018-06-preview and go + +These settings apply only when `--tag=package-2018-06-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-06-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/Maintenance/mgmt/2018-06-01-preview/Maintenance +``` + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.Maintenance + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-Maintenance +``` diff --git a/specification/maintenance/resource-manager/readme.nodejs.md b/specification/maintenance/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..d0fd37dc9a62 --- /dev/null +++ b/specification/maintenance/resource-manager/readme.nodejs.md @@ -0,0 +1,15 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-maintenance + package-version: 1.0.0-preview + output-folder: $(node-sdks-folder)/lib/services/maintenanceManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/maintenance/resource-manager/readme.ruby.md b/specification/maintenance/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..297bf5691b21 --- /dev/null +++ b/specification/maintenance/resource-manager/readme.ruby.md @@ -0,0 +1,27 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml $(ruby) +ruby: + package-name: azure_mgmt_maintenance + package-version: "0.10.0" + azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2018-06-preview +``` + +### Tag: package-2018-06-preview and ruby + +These settings apply only when `--tag=package-2017-06-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2017-06-preview' && $(ruby) +namespace: "Azure::Maintenance::Mgmt::V2018_06_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_maintenance/lib +``` From 6359c5dac93947b24007afd9c569e23e92848ea5 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 30 Aug 2019 17:24:27 +0000 Subject: [PATCH 060/123] regenerated all-api-versions --- .../maintenance/resource-manager/readme.md | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index 27f52b7015ac..2807fd8e5cf5 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -141,3 +141,28 @@ java: payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-Maintenance ``` + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + From 9cad6f6bb2653315fda2a5ee16a153e44efa0607 Mon Sep 17 00:00:00 2001 From: Phoenix He Date: Sat, 31 Aug 2019 05:07:20 +0800 Subject: [PATCH 061/123] Refactor pipeline file and add package-lock.json (#7073) * Refactor pipeline file and add package-lock.json * Update preproduction-azure-pipelines.yml * Update variable * Use npm ci instead of npm install --- .../package-lock.json | 5781 +++++++++++++++++ .azure-pipelines-preproduction/package.json | 42 + .azure-pipelines/Avocado.yml | 11 + .../BranchProtectionForPrivateRepo.yml | 8 + .azure-pipelines/BreakingChange.yml | 13 + .azure-pipelines/LintDiff.yml | 15 + .azure-pipelines/ModelValidation.yml | 11 + .azure-pipelines/NetworkValidation.yml | 39 + .azure-pipelines/Semantic.yml | 11 + .azure-pipelines/Spellcheck.yml | 15 + .azure-pipelines/SwaggerToSDK.yml | 28 + .azure-pipelines/Syntax.yml | 20 + .gitignore | 1 - azure-pipelines.yml | 164 +- package-lock.json | 5781 +++++++++++++++++ package.json | 1 + preproduction-azure-pipelines.yml | 53 +- scripts/switch-to-preproduction.sh | 8 + 18 files changed, 11796 insertions(+), 206 deletions(-) create mode 100644 .azure-pipelines-preproduction/package-lock.json create mode 100644 .azure-pipelines-preproduction/package.json create mode 100644 .azure-pipelines/Avocado.yml create mode 100644 .azure-pipelines/BranchProtectionForPrivateRepo.yml create mode 100644 .azure-pipelines/BreakingChange.yml create mode 100644 .azure-pipelines/LintDiff.yml create mode 100644 .azure-pipelines/ModelValidation.yml create mode 100644 .azure-pipelines/NetworkValidation.yml create mode 100644 .azure-pipelines/Semantic.yml create mode 100644 .azure-pipelines/Spellcheck.yml create mode 100644 .azure-pipelines/SwaggerToSDK.yml create mode 100644 .azure-pipelines/Syntax.yml create mode 100644 package-lock.json create mode 100755 scripts/switch-to-preproduction.sh diff --git a/.azure-pipelines-preproduction/package-lock.json b/.azure-pipelines-preproduction/package-lock.json new file mode 100644 index 000000000000..868605f56898 --- /dev/null +++ b/.azure-pipelines-preproduction/package-lock.json @@ -0,0 +1,5781 @@ +{ + "name": "azure-rest-api-specs-tests", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@azure/avocado": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.1.tgz", + "integrity": "sha512-GOdVNS/yr7wSQVUGfvR4/nP6+UDBrxqT/McvTsKuy1vWV8BwgKx3JZLB/9mrWYhXQZ257AQkVO9nepxRu9/PsQ==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.1", + "@ts-common/async-iterator": "^0.2.2", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.6", + "@ts-common/json": "^0.3.1", + "@ts-common/json-parser": "^0.8.0", + "@ts-common/string-map": "^0.3.0", + "commonmark": "^0.29.0", + "js-yaml": "^3.13.1", + "node-object-hash": "^1.4.2" + } + }, + "@azure/oad": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.7.0.tgz", + "integrity": "sha512-voz6Q71GmJpRAThFG5aDWqHiQCc6eL1ajAR0JqbqCsqStQdBauGkGZhOeawkNJIgHnFY3GG9GO/fWhfp36uBWg==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/json-parser": "^0.7.0", + "autorest": "^2.0.0", + "glob": "^7.1.3", + "js-yaml": "^3.13.1", + "json-pointer": "^0.6.0", + "json-refs": "^3.0.13", + "request": "^2.88.0", + "source-map": "^0.7.3", + "tslib": "^1.9.3", + "winston": "^2.3.0", + "yargs": "^13.2.2" + }, + "dependencies": { + "@ts-common/json-parser": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.7.2.tgz", + "integrity": "sha512-Rb0bA/maGzfjA7ZegDvfDABF+vz2norftJX80aTOLb88gLd2+SnD6gYVg3nZH9FpA5/34JXFDvMs4Fb5GuPoew==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.4", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + } + } + }, + "@azure/openapi-markdown": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.1.tgz", + "integrity": "sha512-d0pIhGAoL+q7rqLuA4HHkzIRVHe3gsRv6cvxPDFIVmLoY44DuUOZwvv6viL1WF1i7lRK/M8n4GHvlLSkx3l7Tw==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.2.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@azure/rest-api-specs-scripts": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.5.0.tgz", + "integrity": "sha512-UJ7IF1P1/j3N64WNUdazc1Sutna+mqfuoBAuzAhDu9Gwunkjbo0cx2UVmcdwctHJ81OnjWRak1so0Rsn2hPVOg==", + "dev": true, + "requires": { + "@azure/avocado": "^0.4.1", + "@azure/oad": "^0.7.0", + "@octokit/rest": "^16.25.0", + "@ts-common/string-map": "^0.3.0", + "fs-extra": "^7.0.1", + "glob": "^7.1.3", + "js-yaml": "^3.13.1", + "oav": "^0.18.1", + "request": "^2.88.0" + }, + "dependencies": { + "@azure/avocado": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.4.10.tgz", + "integrity": "sha512-0zPM0gE/QkQEGZkqyFW2+UgmbhvR1D0MzEucVg1fbVIXpHktVzo0O95bEm6jrg07XrCO3yj9eZmOwTDqotnp9A==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.1", + "@ts-common/async-iterator": "^0.2.2", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.6", + "@ts-common/json": "^0.3.1", + "@ts-common/json-parser": "^0.8.0", + "@ts-common/string-map": "^0.3.0", + "commonmark": "^0.29.0", + "js-yaml": "^3.13.1", + "node-object-hash": "^1.4.2" + } + } + } + }, + "@microsoft.azure/autorest-extension-base": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@microsoft.azure/autorest-extension-base/-/autorest-extension-base-1.0.13.tgz", + "integrity": "sha1-/VobUj8CzK3525vK8Jez/5mSgeY=", + "dev": true, + "requires": { + "vscode-jsonrpc": "^3.5.0" + } + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@octokit/endpoint": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.3.2.tgz", + "integrity": "sha512-gRjteEM9I6f4D8vtwU2iGUTn9RX/AJ0SVXiqBUEuYEWVGGAVjSXdT0oNmghH5lvQNWs8mwt6ZaultuG6yXivNw==", + "dev": true, + "requires": { + "deepmerge": "4.0.0", + "is-plain-object": "^3.0.0", + "universal-user-agent": "^3.0.0", + "url-template": "^2.0.8" + } + }, + "@octokit/request": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.0.2.tgz", + "integrity": "sha512-z1BQr43g4kOL4ZrIVBMHwi68Yg9VbkRUyuAgqCp1rU3vbYa69+2gIld/+gHclw15bJWQnhqqyEb7h5a5EqgZ0A==", + "dev": true, + "requires": { + "@octokit/endpoint": "^5.1.0", + "@octokit/request-error": "^1.0.1", + "deprecation": "^2.0.0", + "is-plain-object": "^3.0.0", + "node-fetch": "^2.3.0", + "once": "^1.4.0", + "universal-user-agent": "^3.0.0" + } + }, + "@octokit/request-error": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.0.4.tgz", + "integrity": "sha512-L4JaJDXn8SGT+5G0uX79rZLv0MNJmfGa4vb4vy1NnpjSnWDLJRy6m90udGwvMmavwsStgbv2QNkPzzTCMmL+ig==", + "dev": true, + "requires": { + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "@octokit/rest": { + "version": "16.28.7", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.28.7.tgz", + "integrity": "sha512-cznFSLEhh22XD3XeqJw51OLSfyL2fcFKUO+v2Ep9MTAFfFLS1cK1Zwd1yEgQJmJoDnj4/vv3+fGGZweG+xsbIA==", + "dev": true, + "requires": { + "@octokit/request": "^5.0.0", + "@octokit/request-error": "^1.0.2", + "atob-lite": "^2.0.0", + "before-after-hook": "^2.0.0", + "btoa-lite": "^1.0.0", + "deprecation": "^2.0.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lodash.uniq": "^4.5.0", + "octokit-pagination-methods": "^1.1.0", + "once": "^1.4.0", + "universal-user-agent": "^3.0.0", + "url-template": "^2.0.8" + } + }, + "@ts-common/add-position": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@ts-common/add-position/-/add-position-0.0.2.tgz", + "integrity": "sha512-ENfIN5410jyxqXbQZXmj1ifFPjnhXOuJdQjglDXhLR8vyD74PTUz277BN9Voua2DKeOjlAnyBK7ml1ciMsBqhw==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.5" + } + }, + "@ts-common/async-iterator": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@ts-common/async-iterator/-/async-iterator-0.2.3.tgz", + "integrity": "sha512-szLdrutwQxBCIECaO2RTFcUPFj+9QVk4xKAj+APgeeLoEs67tNjXFgvfU0kOfF04qTHlPNPqcutSqxMHqzG3qA==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.6", + "tslib": "^1.10.0" + } + }, + "@ts-common/commonmark-to-markdown": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/commonmark-to-markdown/-/commonmark-to-markdown-1.2.0.tgz", + "integrity": "sha512-xFWpGZN1XzWN0egRs6gcT+tgYYw57us/Xr9euoaTsi9N+UR9ZxnG8Mrt4K/KlB54dNIED/LaGxReqRM5L7tKZA==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0", + "@types/commonmark": "^0.27.3", + "commonmark": "^0.28.1", + "front-matter": "^3.0.1" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/fs/-/fs-0.2.0.tgz", + "integrity": "sha512-ul1v4ZatcHuAzrwr/hGjSbk37pnfnLYDWC1yMEynQlnV8ndAcIVNYwQPPOYtLADPKTi3y74g5Q4BF3xPurDHLA==", + "dev": true, + "requires": { + "@ts-common/async-iterator": "^0.2.0", + "@types/node": "^10.12.18", + "tslib": "^1.9.3" + } + }, + "@ts-common/iterator": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@ts-common/iterator/-/iterator-0.3.6.tgz", + "integrity": "sha512-nNdcleTj3qLlchH17HI/xqOc6sNgOqJ5DdRR0nOEVdJVZCo5bfqoQTu6+Q9ZwMhuETuR2d86MSlmaL2FVHnPjQ==", + "dev": true + }, + "@ts-common/json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@ts-common/json/-/json-0.3.1.tgz", + "integrity": "sha512-vaplNdZPdeWr4p+hLJGdn08UMTSgYQrlRtxrAS0fAWyMlmFalBm/XRhHnohgiflRaj2jxl7ZxihjNlC/LZ/1YQ==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0" + } + }, + "@ts-common/json-parser": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.8.0.tgz", + "integrity": "sha512-mlScUHhZiyUH9Am1zGv4r5ce8SM5OkBz9UpnzQrSK8PDHsgnHVHAukMUKxyvqWB9V2JemTXcbnQkjnrBH02QIQ==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/property-set": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ts-common/property-set/-/property-set-0.1.0.tgz", + "integrity": "sha512-Mw/CPiksQI/Tvp8/bmne6ZYmOcgHuMOrflairbzdpfgMz7lrINFu8PyDQw6yTnIASeZR4yW0xljb66gCE4Jj0w==", + "dev": true + }, + "@ts-common/source-map": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@ts-common/source-map/-/source-map-0.5.0.tgz", + "integrity": "sha512-aKFWvuN5uALt+hUtkPA4gHjtloDy2qHW1FB1r758KCTI0h0lP3dNJGcfwg7NnmD0qKQiZAY/J73/NYrbuTfT3A==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0", + "@ts-common/json": "^0.3.0", + "@ts-common/property-set": "^0.1.0", + "@ts-common/string-map": "^0.3.0" + } + }, + "@ts-common/string-map": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/string-map/-/string-map-0.3.0.tgz", + "integrity": "sha512-tikHtQPV/R48VAnlolyl1FIHciror68LXyruelvYf+lRE6ysjIGB2iNyw7wN6aDcUs2wN/CD6fF8Ye7lVIWNTQ==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0" + } + }, + "@ts-common/virtual-fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.2.0.tgz", + "integrity": "sha512-KQ1WV8sMBTC1mq126DWzywIX4YwOtjP/opdvAbuwJ+wPCR/hK2XPm15NcYphZ5nLetdl1PTaDlfB5OOcQ4JnuA==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.2.3", + "@types/node-fetch": "^2.3.0", + "async-retry": "^1.2.3", + "node-fetch": "^2.3.0" + } + }, + "@types/async-retry": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@types/async-retry/-/async-retry-1.4.1.tgz", + "integrity": "sha512-hDI5Ttk9SUmDLcD/Yl2VuWQRGYZjJ7aaJFeRlomUOz/iTKSE7yA55SwY87QwjiZgwhMlVAKoT1rl08UyQoheag==", + "dev": true, + "requires": { + "@types/retry": "*" + } + }, + "@types/commonmark": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@types/commonmark/-/commonmark-0.27.4.tgz", + "integrity": "sha512-7koSjp08QxKoS1/+3T15+kD7+vqOUvZRHvM8PutF3Xsk5aAEkdlIGRsHJ3/XsC3izoqTwBdRW/vH7rzCKkIicA==", + "dev": true + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-SGGAhXLHDx+PK4YLNcNGa6goPf9XRWQNAUUbffkwVGGXIxmDKWyGGL4inzq2sPmExu431Ekb9aEMn9BkPqEYFA==", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "@types/mocha": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz", + "integrity": "sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==", + "dev": true + }, + "@types/node": { + "version": "10.14.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.16.tgz", + "integrity": "sha512-/opXIbfn0P+VLt+N8DE4l8Mn8rbhiJgabU96ZJ0p9mxOkIks5gh6RUnpHak7Yh0SFkyjO/ODbxsQQPV2bpMmyA==", + "dev": true + }, + "@types/node-fetch": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.0.tgz", + "integrity": "sha512-TLFRywthBgL68auWj+ziWu+vnmmcHCDFC/sqCOQf1xTz4hRq8cu79z8CtHU9lncExGBsB8fXA4TiLDLt6xvMzw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "abab": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.1.tgz", + "integrity": "sha512-1zSbbCuoIjafKZ3mblY5ikvAb0ODUbqBnFuUb7f6uLeQhhGJ0vEV4ntmtxKLT2WgXCO94E07BjunsIw1jOMPZw==", + "dev": true + }, + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-globals": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.3.tgz", + "integrity": "sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ==", + "dev": true, + "requires": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", + "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true, + "optional": true + }, + "ansi-colors": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", + "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "dev": true + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "arg": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.1.tgz", + "integrity": "sha512-SlmP3fEA88MBv0PypnXZ8ZfJhwmDeIE3SP71j37AiXQBXYosPV0x6uISAaHYSlSVhmHOVkomen0tbGk6Anlebw==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "async-retry": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.2.3.tgz", + "integrity": "sha512-tfDb02Th6CE6pJUF2gjW5ZVjsgwlucVXOEQMvEX9JgSJMs9gAX+Nz3xRuJBKuUYjTSYORqvDBORdAQ3LU59g7Q==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "atob-lite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz", + "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=", + "dev": true + }, + "autorest": { + "version": "2.0.4283", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4283.tgz", + "integrity": "sha512-3jU9yDR71d2thRnKdPH03DaWbla1Iqnrx2rqUUwbMrb4di36a8+nttCQaTWG7biWPJc6Ke6zSSTzFH0uhya+Nw==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "before-after-hook": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", + "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha1-M3dm2hWAEhD92VbCLpxokaudAzc=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/color/-/color-3.0.0.tgz", + "integrity": "sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w==", + "dev": true, + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", + "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", + "dev": true, + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colornames": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/colornames/-/colornames-1.1.1.tgz", + "integrity": "sha1-+IiQMGhcfE/54qVZ9Qd+t2qBb5Y=", + "dev": true + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "dev": true + }, + "colorspace": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz", + "integrity": "sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ==", + "dev": true, + "requires": { + "color": "3.0.x", + "text-hex": "1.0.x" + } + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + }, + "comment-json": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-1.1.3.tgz", + "integrity": "sha1-aYbDMw/uDEyeAMI5jNYa+l2PI54=", + "dev": true, + "requires": { + "json-parser": "^1.0.0" + } + }, + "commonmark": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.29.0.tgz", + "integrity": "sha512-Wc3kvAIm0EK85pHsM95Fev31wEN6/zQpwd2qcLDL8psjHRoUFvUeGHevIJAdToWUuFoX8WI/gmeDauqy32xgJQ==", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "configstore": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.0.tgz", + "integrity": "sha512-eE/hvMs7qw7DlcB5JPRnthmrITuHMmACUJAp89v6PT6iOqzoLS7HRWhBtuHMlhNHo2AhUSA/3Dh1bKNJHcublQ==", + "dev": true, + "requires": { + "dot-prop": "^5.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, + "cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true + }, + "cspell": { + "version": "4.0.28", + "resolved": "https://registry.npmjs.org/cspell/-/cspell-4.0.28.tgz", + "integrity": "sha512-2YH8pOUnaGCjHHKKUC2K247nAKx2/ah/JsyMYgSe0U3R1Lokl6+HwTsU2+I01o8u5GbM5sLjxsQRPzceYQkzLg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "commander": "^2.20.0", + "comment-json": "^1.1.3", + "cspell-glob": "^0.1.11", + "cspell-lib": "^4.0.25", + "fs-extra": "^8.1.0", + "gensequence": "^2.1.2", + "get-stdin": "^7.0.0", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "cspell-dict-companies": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/cspell-dict-companies/-/cspell-dict-companies-1.0.14.tgz", + "integrity": "sha512-q4Xfe/vNteOs57r+YeEYzVsoQe2YGsi3uVMv06w0CkMa9y8llDXpBv7UJniLZVyW19491jlxIORkHx4i39MBUw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-cpp": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/cspell-dict-cpp/-/cspell-dict-cpp-1.1.23.tgz", + "integrity": "sha512-vR24jdt3oCE51sfrTPEmzlw1JVltKNkUnS/1kjeauY5VAQjx04Q1XOBPHJHmTNRXdmcX/MvNFR8z3qbpC2pbMA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-django": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/cspell-dict-django/-/cspell-dict-django-1.0.12.tgz", + "integrity": "sha512-ChBzWNltlqIs7FSYjQV6qTdkxt4VFQJm2XGlfIoNUZ1kwrOpzVdEUuVpRhWtj9NVB6AJqJxWjm/HzVvMYEY2cg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-elixir": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-elixir/-/cspell-dict-elixir-1.0.10.tgz", + "integrity": "sha512-Z+9K1ZHGo5XnbS2AZ5DG2bpEA9wJ4BdsTa69VIqPgZ6vEfVLqeMidk70FF0Y/DY49+Qyg3ngY0WyE5Je/Romzw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-en-gb": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/cspell-dict-en-gb/-/cspell-dict-en-gb-1.1.11.tgz", + "integrity": "sha512-UnmAeMDzf/YeXuI85BIaQzpArXlt+m+I9S9uy88nvUfq6goOfUFN8Axh0idDtqsFNoaMS5TgSzvjP7DgMXArYg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-en_us": { + "version": "1.2.18", + "resolved": "https://registry.npmjs.org/cspell-dict-en_us/-/cspell-dict-en_us-1.2.18.tgz", + "integrity": "sha512-P2TRblBVd9KOfwjvI5mxzEXMGBvvTIfqcKSQ+0RbpwC2S4ImW9k++LYxy9LtfSRmdSGjHbejYYtsrgvId1KcoA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-fullstack": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/cspell-dict-fullstack/-/cspell-dict-fullstack-1.0.17.tgz", + "integrity": "sha512-XmFyvt5r9JXcIjnycFfZfc/82dmMBUSowL4Oa/Mubx0Tm66bKOTmhrDatXl96qo6J0cIoyoPXitsfj5YaDV17g==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-golang": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/cspell-dict-golang/-/cspell-dict-golang-1.1.12.tgz", + "integrity": "sha512-G3D5CIJfwPdzpgM/N5d/9hImG637GHn3FUkPzC3Kz1QN2G6JTwTAYPnsKybvLE80U9PUwrylZTZBM+cRZSWPzQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-haskell": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cspell-dict-haskell/-/cspell-dict-haskell-1.0.2.tgz", + "integrity": "sha512-d+pFdRUGZjusiXRqWW05pZqeFKsR5Nvrp/8qlowp/mwNFRBoMzrrAHnP7DZrfo/zHHpzCR3SnmT0ImnCv2MDcQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-html-symbol-entities": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-html-symbol-entities/-/cspell-dict-html-symbol-entities-1.0.11.tgz", + "integrity": "sha512-8uqZOa+8jDg/FH1LPfwfgOWT/0+3CXPWoWf4t+SjEhNVRoih2HVweQZCwVr+CsmEHgVON8Tem3OWwz+e1zJwNA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-java": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-java/-/cspell-dict-java-1.0.10.tgz", + "integrity": "sha512-GKgJ+HSii7Xp+LT0Gajy4ipcQgapwsM3fmmZS6pZBZMoodJ0BRzga6QZrBuJSHVhSBV4rFIPJwI4oBGYZCGSpQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-latex": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-latex/-/cspell-dict-latex-1.0.11.tgz", + "integrity": "sha512-z/mejOvZAHIL76wnk7i/RT1v1IkSCYlk1l8pLW8l/KA76MCdNAB5xA6zfyBCftbhEOBJA9Fx60JU2T2aba4isg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-lorem-ipsum": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-lorem-ipsum/-/cspell-dict-lorem-ipsum-1.0.10.tgz", + "integrity": "sha512-UlboQ3xH+D3l+hemLO4J5yz8EM60SH91f1dJIy2s94AeePZXtwYh1hTFM5dEsXI2CAQkfTu3ZdPWflLsInPfrA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-php": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-php/-/cspell-dict-php-1.0.11.tgz", + "integrity": "sha512-0aC8PWVqEVg5II9+U9DBcUv6k9x1DpclH7l5cbvoiR8u69O/LnVlnSol1nSdzAwBhC6fWQ9mfOiMyDIHNZ2GfA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-powershell": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cspell-dict-powershell/-/cspell-dict-powershell-1.0.2.tgz", + "integrity": "sha512-BW2Bdpet0yRQKB+7HjA75O0aJnh1VjdnMLNYb1SLvow73uCsC8GpvYLtvFyDm0Q717FYKoPzuZiSrXhyHerNAw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-python": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/cspell-dict-python/-/cspell-dict-python-1.0.14.tgz", + "integrity": "sha512-w8kevjvayndKkZqY4yt877UzGXUNTG6gB0zoeOCVxnAFFqTexVvmJ9Johc+eOdqd+dnUu6gF8XfX4ZdX5J+Rxw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-rust": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-rust/-/cspell-dict-rust-1.0.10.tgz", + "integrity": "sha512-iwWMVqOMnkTtb2Z50pGs+x9HM6ghqVotVguqgeJUVD62gqjHMHOTXAw/p7e8VFMXEPfVJeCZg3KGT3Ut6b+8Zg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-scala": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/cspell-dict-scala/-/cspell-dict-scala-1.0.9.tgz", + "integrity": "sha512-wWMjYe4OLFqeQpHYqBoAlXCwEgANu4DuJIg8Vg9Ig8arzobWX9uzmSwsicyGKtCjyno99/MIHAhksTTr7ccMzQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-glob": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-0.1.11.tgz", + "integrity": "sha512-1s9539g+AB+V0gX4TPfCvhwWYso/fKlWQIX5w31BuqLjV6e8542x9vpdO/GS7aq1y1vec4ocx0B9I/d1SGFDSg==", + "dev": true, + "requires": { + "micromatch": "^4.0.2" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "cspell-io": { + "version": "4.0.17", + "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-4.0.17.tgz", + "integrity": "sha512-srJnvfTm9QdrAGPx7OIR6MIZeXJPgwWupderhy4ywDQKgds4Yj1w3f10JWzHgsfWAwExAaEs3GZ4fEMUeWhnAA==", + "dev": true, + "requires": { + "iconv-lite": "^0.4.24", + "iterable-to-stream": "^1.0.1" + } + }, + "cspell-lib": { + "version": "4.0.25", + "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-4.0.25.tgz", + "integrity": "sha512-EltUo+BBx15gCCYuDQ2V/pSPu1xIje9mdzCaEDoTJXIl1J5QVONmc91sukXLNEoymG4cdoZlnd2xg4fV/orynQ==", + "dev": true, + "requires": { + "comment-json": "^1.1.3", + "configstore": "^5.0.0", + "cspell-dict-companies": "^1.0.12", + "cspell-dict-cpp": "^1.1.21", + "cspell-dict-django": "^1.0.12", + "cspell-dict-elixir": "^1.0.10", + "cspell-dict-en-gb": "^1.1.11", + "cspell-dict-en_us": "^1.2.18", + "cspell-dict-fullstack": "^1.0.15", + "cspell-dict-golang": "^1.1.12", + "cspell-dict-haskell": "^1.0.2", + "cspell-dict-html-symbol-entities": "^1.0.11", + "cspell-dict-java": "^1.0.10", + "cspell-dict-latex": "^1.0.11", + "cspell-dict-lorem-ipsum": "^1.0.10", + "cspell-dict-php": "^1.0.11", + "cspell-dict-powershell": "^1.0.2", + "cspell-dict-python": "^1.0.14", + "cspell-dict-rust": "^1.0.10", + "cspell-dict-scala": "^1.0.9", + "cspell-io": "^4.0.17", + "cspell-trie-lib": "^4.0.15", + "cspell-util-bundle": "^4.0.5", + "fs-extra": "^8.1.0", + "gensequence": "^2.1.2", + "vscode-uri": "^2.0.3" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "cspell-trie-lib": { + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-4.0.15.tgz", + "integrity": "sha512-k3P03msJJh6Fhic9db7kva3+VodhvywvxxB5Q8Y7qF1xCu9zL2Zeoi+gA8ziL1QtUFqAqpzbDNPfiHhz6BaJsQ==", + "dev": true, + "requires": { + "gensequence": "^2.1.2", + "js-xxhash": "^1.0.1" + } + }, + "cspell-util-bundle": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/cspell-util-bundle/-/cspell-util-bundle-4.0.5.tgz", + "integrity": "sha512-luu/xIjoTRt82eJJxf77fhgjU6XJve+CfoTyfejOj7niYDRvoZkt0rTSHPgTI6MADjaZxlCLleSihEgqidt5WQ==", + "dev": true + }, + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "dev": true, + "requires": { + "cssom": "0.3.x" + } + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.2.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } + } + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepmerge": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.0.0.tgz", + "integrity": "sha512-YZ1rOP5+kHor4hMAH+HRQnBQHg+wvS1un1hAOuIcxcBy0hzcUf6Jg2a1w65kpoOUnurOfZbERwjI1TfZxNjcww==", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "diagnostics": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/diagnostics/-/diagnostics-1.1.1.tgz", + "integrity": "sha512-8wn1PmdunLJ9Tqbx+Fx/ZEuHfJf4NKSN2ZBj7SJC/OWRWha843+WsTjqMe1B5E3p28jqBlp+mJ2fPVxPyNgYKQ==", + "dev": true, + "requires": { + "colorspace": "1.1.x", + "enabled": "1.0.x", + "kuler": "1.0.x" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "^3.0.0" + } + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "dot-prop": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.0.tgz", + "integrity": "sha512-n1oC6NBF+KM9oVXtjmen4Yo7HyAVWV2UUl50dCYJdw2924K6dX9bf9TTTWaKtYlRn0FEtxG27KS80ayVLixxJA==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, + "drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "dev": true + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "enabled": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz", + "integrity": "sha1-ll9lE9LC0cX0ZStkouM5ZGf8L5M=", + "dev": true, + "requires": { + "env-variable": "0.0.x" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "env-variable": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.5.tgz", + "integrity": "sha512-zoB603vQReOFvTg5xMl9I1P2PnHsHQQKTEowsKKD7nseUfJq6UWzK+4YtlWUO1nhiQUxe6XMkk+JleSZD1NZFA==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + } + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", + "dev": true + }, + "faker": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/faker/-/faker-4.1.0.tgz", + "integrity": "sha1-HkW7vsxndLPBlfrSg1EJxtdIzD8=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.6.tgz", + "integrity": "sha512-q8BZ89jjc+mz08rSxROs8VsrBBcn1SIw1kq9NjolL509tkABRk9io01RAjSaEv1Xb2uFLt8VtRiZbGp5H8iDtg==", + "dev": true + }, + "fecha": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", + "integrity": "sha512-lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", + "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", + "dev": true, + "requires": { + "is-buffer": "~2.0.3" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==", + "dev": true + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "format-util": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.3.tgz", + "integrity": "sha1-Ay3KShFiYqEsQ/TD7IVmQWxbLZU=", + "dev": true + }, + "formidable": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", + "integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "front-matter": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-3.0.2.tgz", + "integrity": "sha512-iBGZaWyzqgsrPGsqrXZP6N4hp5FzSKDi18nfAoYpgz3qK5sAwFv/ojmn3VS60SOgLvq6CtojNqy0y6ZNz05IzQ==", + "dev": true, + "requires": { + "js-yaml": "^3.13.1" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gensequence": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-2.1.3.tgz", + "integrity": "sha512-qa/2k1YSyh6TGVtIMtmwv1tXfq7lkhR8pMtOExfZGuwyaqplMhUxyO/Wrw9fV+37B38WE6egpjSMcwyzlNOoHA==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stdin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, + "globby": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + } + }, + "graceful-fs": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", + "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==", + "dev": true + }, + "graphlib": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", + "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", + "dev": true, + "requires": { + "lodash": "^4.17.5" + } + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "handlebars": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", + "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", + "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.1" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, + "is-plain-object": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", + "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", + "dev": true, + "requires": { + "isobject": "^4.0.0" + } + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", + "dev": true, + "requires": { + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "iterable-to-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/iterable-to-stream/-/iterable-to-stream-1.0.1.tgz", + "integrity": "sha512-O62gD5ADMUGtJoOoM9U6LQ7i4byPXUNoHJ6mqsmkQJcom331ZJGDApWgDESWyBMEHEJRjtHozgIiTzYo9RU4UA==", + "dev": true + }, + "js-base64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "dev": true + }, + "js-xxhash": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/js-xxhash/-/js-xxhash-1.0.4.tgz", + "integrity": "sha512-S/6Oo7ruxx5k8m4qlMnbpwQdJjRsvvfcIhIk1dA9c5y5GNhYHKYKu9krEK3QgBax6CxJuf4gRL2opgLkdzWIKg==", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + } + }, + "json-parser": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/json-parser/-/json-parser-1.1.5.tgz", + "integrity": "sha1-5i7FJh0aal/CDoEqMgdAxtkAVnc=", + "dev": true, + "requires": { + "esprima": "^2.7.0" + }, + "dependencies": { + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + } + } + }, + "json-pointer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.0.tgz", + "integrity": "sha1-jlAFUKaqxUZKRzN32leqbMIoKNc=", + "dev": true, + "requires": { + "foreach": "^2.0.4" + } + }, + "json-refs": { + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.13.tgz", + "integrity": "sha512-/FJ+BJ6BASjmNsBJHE8qMVj46HTS2Pfq5gI5BQRhyUsdrw9HaHRWSOsOh87deTOyWMtGas5Qr8H6ikrcWHdZbw==", + "dev": true, + "requires": { + "commander": "~2.19.0", + "graphlib": "^2.1.7", + "js-yaml": "^3.13.0", + "lodash": "^4.17.11", + "native-promise-only": "^0.8.1", + "path-loader": "^1.0.10", + "slash": "^2.0.0", + "uri-js": "^4.2.2" + } + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-faker": { + "version": "0.5.0-rc17", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc17.tgz", + "integrity": "sha512-ZQSLPpnsGiMBuPOHi09cAzhsiIeOcs5im2GAQ2P6XKyWOuetO8eYdYCP/kW7VVU891Ucan0/dl8GYbRA6pf9gw==", + "dev": true, + "requires": { + "json-schema-ref-parser": "^6.0.2", + "jsonpath": "^1.0.1", + "randexp": "^0.5.3" + } + }, + "json-schema-ref-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", + "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "js-yaml": "^3.12.1", + "ono": "^4.0.11" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonpath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.0.2.tgz", + "integrity": "sha512-rmzlgFZiQPc6q4HDyK8s9Qb4oxBnI5sF61y/Co5PV0lc3q2bIuRsNdueVbhoSHdKM4fxeimphOAtfz47yjCfeA==", + "dev": true, + "requires": { + "esprima": "1.2.2", + "static-eval": "2.0.2", + "underscore": "1.7.0" + }, + "dependencies": { + "esprima": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", + "integrity": "sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs=", + "dev": true + } + } + }, + "jsonschema": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.4.tgz", + "integrity": "sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw==", + "dev": true + }, + "jsonschema-draft4": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jsonschema-draft4/-/jsonschema-draft4-1.0.0.tgz", + "integrity": "sha1-8K8gBQVPDwrefqIRhhS2ncUS2GU=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "kuler": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-1.0.1.tgz", + "integrity": "sha512-J9nVUucG1p/skKul6DU3PUZrhs0LPulNaeUOox0IyXDi8S4CztTHs1gQphhuZmzXG7VOQSf6NJfKuzteQLv9gQ==", + "dev": true, + "requires": { + "colornames": "^1.1.1" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "linq": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.0.tgz", + "integrity": "sha512-rdmaLOf2tSCzZ75scdjjN/LVHGZzRu48ql9LdxppQec/pKpPtf8jlMDlPBX3rQnLMcGPtAx8Lel6YbF7jND70g==", + "dev": true + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "logform": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.1.2.tgz", + "integrity": "sha512-+lZh4OpERDBLqjiwDLpAWNQu6KMjnlXH2ByZwCuSqVPJletw0kTWJf5CgSNAUKn1KUkv3m2cUz/LK8zyEy7wzQ==", + "dev": true, + "requires": { + "colors": "^1.2.1", + "fast-safe-stringify": "^2.0.4", + "fecha": "^2.3.3", + "ms": "^2.1.1", + "triple-beam": "^1.3.0" + }, + "dependencies": { + "colors": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", + "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", + "dev": true + } + } + }, + "macos-release": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz", + "integrity": "sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA==", + "dev": true + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "md5-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-4.0.0.tgz", + "integrity": "sha512-UC0qFwyAjn4YdPpKaDNw6gNxRf7Mcx7jC1UGCY4boCzgvU2Aoc1mOGzTtrjjLKhM5ivsnhoKpQVxKPp+1j1qwg==", + "dev": true + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "merge2": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.4.tgz", + "integrity": "sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocha": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.0.tgz", + "integrity": "sha512-qwfFgY+7EKAAUAdv7VYMZQknI7YJSGesxHyhn6qD52DV8UcSZs5XwCifcZGMVIE4a5fbmhvbotxC0DLQ0oKohQ==", + "dev": true, + "requires": { + "ansi-colors": "3.2.3", + "browser-stdout": "1.3.1", + "debug": "3.2.6", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "find-up": "3.0.0", + "glob": "7.1.3", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "3.13.1", + "log-symbols": "2.2.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "ms": "2.1.1", + "node-environment-flags": "1.0.5", + "object.assign": "4.1.0", + "strip-json-comments": "2.0.1", + "supports-color": "6.0.0", + "which": "1.3.1", + "wide-align": "1.1.3", + "yargs": "13.2.2", + "yargs-parser": "13.0.0", + "yargs-unparser": "1.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + } + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "supports-color": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", + "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", + "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + } + }, + "yargs-parser": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", + "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "ms-rest": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", + "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "dev": true, + "requires": { + "duplexer": "^0.1.1", + "is-buffer": "^1.1.6", + "is-stream": "^1.1.0", + "moment": "^2.21.0", + "request": "^2.88.0", + "through": "^2.3.8", + "tunnel": "0.0.5", + "uuid": "^3.2.1" + } + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "native-promise-only": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", + "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-environment-flags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", + "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", + "dev": true, + "requires": { + "object.getownpropertydescriptors": "^2.0.3", + "semver": "^5.7.0" + } + }, + "node-fetch": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", + "dev": true + }, + "node-object-hash": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-1.4.2.tgz", + "integrity": "sha512-UdS4swXs85fCGWWf6t6DMGgpN/vnlKeSGEQ7hJcrs7PBFoxoKLmibc3QRb7fwiYsjdL7PX8iI/TMSlZ90dgHhQ==", + "dev": true + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "nwsapi": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz", + "integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "oav": { + "version": "0.18.6", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.18.6.tgz", + "integrity": "sha512-qDMtwnEMZOCdqonzxR7ICbYcSsLkzXpcrZQHsFN9EgGXKUJ9cwPwV2zEba1+fk6WsW/id79cZWfFT0y3XBxiuA==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.0", + "@microsoft.azure/autorest-extension-base": "1.0.13", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/json": "^0.3.0", + "@ts-common/json-parser": "^0.7.0", + "@ts-common/property-set": "^0.1.0", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.2.0", + "commonmark": "^0.29.0", + "glob": "^5.0.15", + "globby": "^9.2.0", + "js-yaml": "^3.13.1", + "json-pointer": "^0.6.0", + "json-refs": "^3.0.13", + "jsonpath": "^1.0.1", + "linq": "^3.2.0", + "lodash": "^4.17.11", + "md5-file": "^4.0.0", + "moment": "^2.24.0", + "ms-rest": "^2.5.0", + "swagger-parser": "^6.0.5", + "uuid": "^3.3.2", + "vscode-jsonrpc": "^3.6.2", + "winston": "^3.2.1", + "yargs": "^6.6.0", + "yasway": "^1.8.3", + "yuml2svg": "^4.2.1", + "z-schema": "^4.1.0" + }, + "dependencies": { + "@ts-common/json-parser": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.7.2.tgz", + "integrity": "sha512-Rb0bA/maGzfjA7ZegDvfDABF+vz2norftJX80aTOLb88gLd2+SnD6gYVg3nZH9FpA5/34JXFDvMs4Fb5GuPoew==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.4", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "winston": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.2.1.tgz", + "integrity": "sha512-zU6vgnS9dAWCEKg/QYigd6cgMVVNwyTzKs81XZtTFuRwJOcDdBg7AU0mXVyNbs7O5RH2zdv+BdNZUlx7mXPuOw==", + "dev": true, + "requires": { + "async": "^2.6.1", + "diagnostics": "^1.1.1", + "is-stream": "^1.1.0", + "logform": "^2.1.1", + "one-time": "0.0.4", + "readable-stream": "^3.1.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.3.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "^3.0.0" + } + } + } + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "octokit-pagination-methods": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz", + "integrity": "sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "one-time": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-0.0.4.tgz", + "integrity": "sha1-+M33eISCb+Tf+T46nMN7HkSAdC4=", + "dev": true + }, + "ono": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", + "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", + "dev": true, + "requires": { + "format-util": "^1.0.3" + } + }, + "openapi-schema-validation": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/openapi-schema-validation/-/openapi-schema-validation-0.4.2.tgz", + "integrity": "sha512-K8LqLpkUf2S04p2Nphq9L+3bGFh/kJypxIG2NVGKX0ffzT4NQI9HirhiY6Iurfej9lCu7y4Ndm4tv+lm86Ck7w==", + "dev": true, + "requires": { + "jsonschema": "1.2.4", + "jsonschema-draft4": "^1.0.0", + "swagger-schema-official": "2.0.0-bab6bed" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-name": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz", + "integrity": "sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==", + "dev": true, + "requires": { + "macos-release": "^2.2.0", + "windows-release": "^3.1.0" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-loader": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/path-loader/-/path-loader-1.0.10.tgz", + "integrity": "sha512-CMP0v6S6z8PHeJ6NFVyVJm6WyJjIwFvyz2b0n2/4bKdS/0uZa/9sKUlYZzubrn3zuDRU0zIuEDX9DZYQ2ZI8TA==", + "dev": true, + "requires": { + "native-promise-only": "^0.8.1", + "superagent": "^3.8.3" + } + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "psl": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", + "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.8.0.tgz", + "integrity": "sha512-tPSkj8y92PfZVbinY1n84i1Qdx75lZjMQYx9WZhnkofyxzw2r7Ho39G3/aEvSUdebxpnnM4LZJCtvE/Aq3+s9w==", + "dev": true + }, + "randexp": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", + "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", + "dev": true, + "requires": { + "drange": "^1.0.2", + "ret": "^0.2.0" + }, + "dependencies": { + "ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "dev": true + } + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "dependencies": { + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + } + } + }, + "request-promise-core": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", + "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "request-promise-native": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", + "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", + "dev": true, + "requires": { + "request-promise-core": "1.1.2", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "resolve": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", + "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dev": true, + "requires": { + "is-arrayish": "^0.3.1" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "static-eval": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz", + "integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==", + "dev": true, + "requires": { + "escodegen": "^1.8.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "string.prototype.repeat": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", + "integrity": "sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8=", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "superagent": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", + "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", + "dev": true, + "requires": { + "component-emitter": "^1.2.0", + "cookiejar": "^2.1.0", + "debug": "^3.1.0", + "extend": "^3.0.0", + "form-data": "^2.3.1", + "formidable": "^1.2.0", + "methods": "^1.1.1", + "mime": "^1.4.1", + "qs": "^6.5.1", + "readable-stream": "^2.3.5" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + }, + "swagger-methods": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-1.0.8.tgz", + "integrity": "sha512-G6baCwuHA+C5jf4FNOrosE4XlmGsdjbOjdBK4yuiDDj/ro9uR4Srj3OR84oQMT8F3qKp00tYNv0YN730oTHPZA==", + "dev": true + }, + "swagger-parser": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/swagger-parser/-/swagger-parser-6.0.5.tgz", + "integrity": "sha512-UL47eu4+GRm5y+N7J+W6QQiqAJn2lojyqgMwS0EZgA55dXd5xmpQCsjUmH/Rf0eKDiG1kULc9VS515PxAyTDVw==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "json-schema-ref-parser": "^6.0.3", + "ono": "^4.0.11", + "openapi-schema-validation": "^0.4.2", + "swagger-methods": "^1.0.8", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^3.24.2" + }, + "dependencies": { + "z-schema": { + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.25.1.tgz", + "integrity": "sha512-7tDlwhrBG+oYFdXNOjILSurpfQyuVgkRe3hB2q8TEssamDHB7BbLWYkYO98nTn0FibfdFroFKDjndbgufAgS/Q==", + "dev": true, + "requires": { + "commander": "^2.7.1", + "core-js": "^2.5.7", + "lodash.get": "^4.0.0", + "lodash.isequal": "^4.0.0", + "validator": "^10.0.0" + } + } + } + }, + "swagger-schema-official": { + "version": "2.0.0-bab6bed", + "resolved": "https://registry.npmjs.org/swagger-schema-official/-/swagger-schema-official-2.0.0-bab6bed.tgz", + "integrity": "sha1-cAcEaNbSl3ylI3suUZyn0Gouo/0=", + "dev": true + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "triple-beam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==", + "dev": true + }, + "ts-node": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz", + "integrity": "sha512-dyNS/RqyVTDcmNM4NIBAeDMpsAdaQ+ojdf0GOLqE6nwJOgzEkdRNzJywhDfwnuvB10oa6NLVG1rUJQCpRN7qoQ==", + "dev": true, + "requires": { + "arg": "^4.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.6", + "yn": "^3.0.0" + }, + "dependencies": { + "diff": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz", + "integrity": "sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==", + "dev": true + } + } + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "dev": true + }, + "tunnel": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.5.tgz", + "integrity": "sha512-gj5sdqherx4VZKMcBA4vewER7zdK25Td+z1npBqpbDys4eJrLx+SlYjJvq1bDXs2irkuJM5pf8ktaEQVipkrbA==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.3.tgz", + "integrity": "sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g==", + "dev": true + }, + "uglify-js": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", + "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true, + "optional": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "underscore": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", + "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "universal-user-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-3.0.0.tgz", + "integrity": "sha512-T3siHThqoj5X0benA5H0qcDnrKGXzU8TKoX15x/tQHw1hQBvIEBHjxQ2klizYsqBOO/Q+WuxoQUihadeeqDnoA==", + "dev": true, + "requires": { + "os-name": "^3.0.0" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validator": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-10.11.0.tgz", + "integrity": "sha512-X/p3UZerAIsbBfN/IwahhYaBbY68EN/UQBWHtsbXGT5bfrH/p4NQzUCG1kF/rtKaNpnJ7jAu6NGTdSNtyNIXMw==", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "viz.js": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/viz.js/-/viz.js-2.1.2.tgz", + "integrity": "sha512-UO6CPAuEMJ8oNR0gLLNl+wUiIzQUsyUOp8SyyDKTqVRBtq7kk1VnFmIZW8QufjxGrGEuI+LVR7p/C7uEKy0LQw==", + "dev": true + }, + "vscode-jsonrpc": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.2.tgz", + "integrity": "sha512-T24Jb5V48e4VgYliUXMnZ379ItbrXgOimweKaJshD84z+8q7ZOZjJan0MeDe+Ugb+uqERDVV8SBmemaGMSMugA==", + "dev": true + }, + "vscode-uri": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.0.3.tgz", + "integrity": "sha512-4D3DI3F4uRy09WNtDGD93H9q034OHImxiIcSq664Hq1Y1AScehlP3qqZyTkX/RWxeu0MRMHGkrxYqm2qlDF/aw==", + "dev": true + }, + "w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "windows-release": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", + "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "dev": true, + "requires": { + "execa": "^1.0.0" + } + }, + "winston": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.4.tgz", + "integrity": "sha512-NBo2Pepn4hK4V01UfcWcDlmiVTs7VTB1h7bgnB0rgP146bYhMxX0ypCz3lBOfNxCO4Zuek7yeT+y/zM1OfMw4Q==", + "dev": true, + "requires": { + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "stack-trace": "0.0.x" + } + }, + "winston-transport": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.3.0.tgz", + "integrity": "sha512-B2wPuwUi3vhzn/51Uukcao4dIduEiPOcOt9HJ3QeaXgkJ5Z7UwpBzxS4ZGNHtrxrUvTwemsQiSys0ihOf8Mp1A==", + "dev": true, + "requires": { + "readable-stream": "^2.3.6", + "triple-beam": "^1.2.0" + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write-file-atomic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", + "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "yargs-unparser": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.5.0.tgz", + "integrity": "sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==", + "dev": true, + "requires": { + "flat": "^4.1.0", + "lodash": "^4.17.11", + "yargs": "^12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "yasway": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.3.tgz", + "integrity": "sha512-4cBs1eK6HiEe8AvwRNztRdWQnvkuermxRfFVRekk2y/fpna99AQ5b9ByDY/hwWkW80bGipAXoDMI3Ifqol2+tg==", + "dev": true, + "requires": { + "@ts-common/json": "^0.3.0", + "@ts-common/string-map": "^0.3.0", + "debug": "^4.1.1", + "faker": "^4.1.0", + "istanbul": "^0.4.5", + "js-base64": "^2.5.1", + "js-yaml": "^3.13.1", + "json-refs": "^3.0.13", + "json-schema-faker": "^0.5.0-rc16", + "lodash": "^4.17.11", + "native-promise-only": "^0.8.1", + "path-to-regexp": "^1.7.0", + "swagger-methods": "^1.0.8", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^4.1.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true + }, + "yuml2svg": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/yuml2svg/-/yuml2svg-4.2.2.tgz", + "integrity": "sha512-u1hdk7QaxNhMXaqawFJxwGQE2nu93H0v4F+2Mzp+X0tEvc1sg1QMFE+5TcniMr7PaRVfIniYYWWVgojWzUuRDg==", + "dev": true, + "requires": { + "color": "^3.0.0", + "jsdom": "^11.6.2", + "viz.js": "^2.0.0" + } + }, + "z-schema": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.1.1.tgz", + "integrity": "sha512-0aKvR9FgrghUXXndYNDmAEazl8jykuHSkqkmPw2ZSuTWuLcEscn1zUTbR3LEfyxHl5EEHpqqOpF+Sd7wZvuDxw==", + "dev": true, + "requires": { + "commander": "^2.7.1", + "core-js": "^3.2.1", + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^11.0.0" + }, + "dependencies": { + "core-js": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz", + "integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==", + "dev": true + }, + "validator": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", + "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", + "dev": true + } + } + } + } +} diff --git a/.azure-pipelines-preproduction/package.json b/.azure-pipelines-preproduction/package.json new file mode 100644 index 000000000000..16d902361c0a --- /dev/null +++ b/.azure-pipelines-preproduction/package.json @@ -0,0 +1,42 @@ +{ + "name": "azure-rest-api-specs-tests", + "private": true, + "author": { + "name": "Microsoft Corporation", + "email": "azsdkteam@microsoft.com", + "url": "https://github.com/azure/azure-rest-api-specs" + }, + "version": "0.1.0", + "description": "Tests for Azure REST API Specifications", + "license": "MIT", + "devDependencies": { + "@azure/avocado": "^0.6.0", + "@azure/rest-api-specs-scripts": "^0.5.0", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/fs": "0.2.0", + "@ts-common/iterator": "^0.3.6", + "@types/js-yaml": "^3.12.1", + "@types/mocha": "^5.2.6", + "cspell": "^4.0.12", + "js-yaml": "^3.13.1", + "json-schema-ref-parser": "^6.1.0", + "mocha": "*", + "ts-node": "^8.1.0", + "tslib": "^1.10.0", + "typescript": "3.5.3" + }, + "homepage": "https://github.com/azure/azure-rest-api-specs", + "repository": { + "type": "git", + "url": "git@github.com:azure/azure-rest-api-specs.git" + }, + "bugs": { + "url": "http://github.com/azure/azure-rest-api-specs/issues" + }, + "scripts": { + "test": "tsc && mocha -t 500000 --reporter min", + "spellcheck": "cspell \"specification/**/*.json\"", + "tsc": "tsc", + "multiapi": "ts-node ./scripts/multiapi.ts" + } +} diff --git a/.azure-pipelines/Avocado.yml b/.azure-pipelines/Avocado.yml new file mode 100644 index 000000000000..f94462d86452 --- /dev/null +++ b/.azure-pipelines/Avocado.yml @@ -0,0 +1,11 @@ +jobs: +- job: "Avocado" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: './node_modules/.bin/avocado' + displayName: 'Avocado' diff --git a/.azure-pipelines/BranchProtectionForPrivateRepo.yml b/.azure-pipelines/BranchProtectionForPrivateRepo.yml new file mode 100644 index 000000000000..7c913b101274 --- /dev/null +++ b/.azure-pipelines/BranchProtectionForPrivateRepo.yml @@ -0,0 +1,8 @@ +jobs: + - job: "BranchProtectionForPrivateRepo" + pool: + vmImage: 'Ubuntu 16.04' + condition: and(variables['PRIVATE'], eq(variables['System.PullRequest.TargetBranch'], 'master')) + steps: + - script: '>&2 echo "the branch is protected"' + failOnStderr: true diff --git a/.azure-pipelines/BreakingChange.yml b/.azure-pipelines/BreakingChange.yml new file mode 100644 index 000000000000..466349bd3bfd --- /dev/null +++ b/.azure-pipelines/BreakingChange.yml @@ -0,0 +1,13 @@ +jobs: +- job: "BreakingChange" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - script: 'scripts/install-dotnet.sh' + displayName: 'Install .Net' + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm run tsc && node scripts/breaking-change.js' + displayName: 'Breaking Changes' \ No newline at end of file diff --git a/.azure-pipelines/LintDiff.yml b/.azure-pipelines/LintDiff.yml new file mode 100644 index 000000000000..c2937cfe7899 --- /dev/null +++ b/.azure-pipelines/LintDiff.yml @@ -0,0 +1,15 @@ +jobs: +- job: "LintDiff" + variables: + NODE_OPTIONS: '--max-old-space-size=8192' + pool: + vmImage: 'Ubuntu 16.04' + steps: + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'scripts/install-dotnet.sh' + displayName: 'install .Net' + - script: 'npm run tsc && node scripts/momentOfTruth.js && node scripts/momentOfTruthPostProcessing.js' + displayName: 'LintDiff' \ No newline at end of file diff --git a/.azure-pipelines/ModelValidation.yml b/.azure-pipelines/ModelValidation.yml new file mode 100644 index 000000000000..15ba9410a6dc --- /dev/null +++ b/.azure-pipelines/ModelValidation.yml @@ -0,0 +1,11 @@ +jobs: +- job: "ModelValidation" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm run tsc && node scripts/modelValidation.js' + displayName: 'Model Validation' diff --git a/.azure-pipelines/NetworkValidation.yml b/.azure-pipelines/NetworkValidation.yml new file mode 100644 index 000000000000..b62841ad85f7 --- /dev/null +++ b/.azure-pipelines/NetworkValidation.yml @@ -0,0 +1,39 @@ +jobs: +- job: "NetworkValidation" + condition: and(startsWith(variables['System.PullRequest.TargetBranch'], 'network-'), endsWith(variables['System.PullRequest.TargetBranch'], '-release')) + continueOnError: true + pool: + vmImage: vs2017-win2016 + variables: + NRP_SWAGGER_VALIDATION_OVERRIDE_PS_BRANCH: 'true' + NRP_BUILD_TOOLS_SKIP_GENERATE_PS1: 'true' + NRP_BUILD_TOOLS_OUTPUT_PATH: '$(System.DefaultWorkingDirectory)\Out' + steps: + - powershell: | + & "C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6.1 Tools/sn.exe" -Vr *,31bf3856ad364e35 + displayName: Bypass Strong Name validation + - task: NodeTool@0 + inputs: + versionSpec: 10.x + displayName: Install Node.js + - script: npm install autorest -g + displayName: Install autorest + - script: git clone --depth 1 -- https://dev.azure.com/v-anevse/BuildScripts/_git/BuildScripts ..\BuildScripts + displayName: Clone build tools + - powershell: | + $swgrPath = (Get-Item ".\").FullName + $outputPath = $env:NRP_BUILD_TOOLS_OUTPUT_PATH + New-Item -Path $outputPath -ItemType "Directory" -Force | Out-Null + ..\BuildScripts\Test-SwaggerRelease.ps1 -Component Network -SwaggerRepoPath $swgrPath -OutputFolder $outputPath + failOnStderr: false + displayName: Test Swagger updates + - powershell: | + Copy-Item "..\BuildScripts\.azure-pipelines\.artifactignore" -Destination "$($env:NRP_BUILD_TOOLS_OUTPUT_PATH)\.artifactignore" -Force -ErrorAction "SilentlyContinue" + failOnStderr: false + condition: always() + displayName: Copy .artifactignore + - task: PublishPipelineArtifact@0 + condition: always() + inputs: + artifactName: SwaggerTestOutput + targetPath: $(NRP_BUILD_TOOLS_OUTPUT_PATH) \ No newline at end of file diff --git a/.azure-pipelines/Semantic.yml b/.azure-pipelines/Semantic.yml new file mode 100644 index 000000000000..04627acc1a31 --- /dev/null +++ b/.azure-pipelines/Semantic.yml @@ -0,0 +1,11 @@ +jobs: +- job: "Semantic" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm run tsc && node scripts/semanticValidation.js' + displayName: 'Semantic Validation' diff --git a/.azure-pipelines/Spellcheck.yml b/.azure-pipelines/Spellcheck.yml new file mode 100644 index 000000000000..5d7e59f14160 --- /dev/null +++ b/.azure-pipelines/Spellcheck.yml @@ -0,0 +1,15 @@ +jobs: +- job: "Spellcheck" + condition: "not(variables['PRIVATE'])" + variables: + NODE_OPTIONS: '--max-old-space-size=8192' + pool: + vmImage: 'Ubuntu 16.04' + continueOnError: true + steps: + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm run spellcheck' + displayName: 'Run cSpell' \ No newline at end of file diff --git a/.azure-pipelines/SwaggerToSDK.yml b/.azure-pipelines/SwaggerToSDK.yml new file mode 100644 index 000000000000..1b460d95141b --- /dev/null +++ b/.azure-pipelines/SwaggerToSDK.yml @@ -0,0 +1,28 @@ +jobs: +- job: "SDK" + timeoutInMinutes: 120 + strategy: + matrix: + java: + AZURE_SDK_REPO: azure-sdk-for-java + AZURE_SDK_PARAMS: '' + javascript: + AZURE_SDK_REPO: azure-sdk-for-js + AZURE_SDK_PARAMS: '' + node: + AZURE_SDK_REPO: azure-sdk-for-node + AZURE_SDK_PARAMS: '' + python: + AZURE_SDK_REPO: azure-sdk-for-python + AZURE_SDK_PARAMS: '' + go: + AZURE_SDK_REPO: azure-sdk-for-go + AZURE_SDK_PARAMS: '-o latest' + pool: + vmImage: 'Ubuntu 16.04' + variables: + NODE_OPTIONS: '--max-old-space-size=8192' + steps: + - script: echo $(NODE_OPTIONS) + - script: "scripts/swagger-to-sdk.sh Azure/$(AZURE_SDK_REPO) -v $(AZURE_SDK_PARAMS)" + displayName: "Swagger to SDK script" \ No newline at end of file diff --git a/.azure-pipelines/Syntax.yml b/.azure-pipelines/Syntax.yml new file mode 100644 index 000000000000..dfa882935203 --- /dev/null +++ b/.azure-pipelines/Syntax.yml @@ -0,0 +1,20 @@ +jobs: +- job: "Syntax" + pool: + vmImage: 'Ubuntu 16.04' + steps: + - script: | + echo TRAVIS: $(TRAVIS) + echo TRAVIS_BRANCH: $(TRAVIS_BRANCH) + echo TRAVIS_REPO_SLUG: $(TRAVIS_REPO_SLUG) + echo TRAVIS_PULL_REQUEST: $(TRAVIS_PULL_REQUEST) + echo TRAVIS_PULL_REQUEST_SLUG: $(TRAVIS_PULL_REQUEST_SLUG) + echo TRAVIS_PULL_REQUEST_SHA: $(TRAVIS_PULL_REQUEST_SHA) + echo PR_ONLY: $(PR_ONLY) + displayName: "Info" + - task: Npm@1 + displayName: 'npm install' + inputs: + verbose: false + - script: 'npm test -- test/syntax.js' + displayName: 'Syntax validation' \ No newline at end of file diff --git a/.gitignore b/.gitignore index 1f995a5b6470..a1c5fcb7f71a 100644 --- a/.gitignore +++ b/.gitignore @@ -65,7 +65,6 @@ Temporary Items # npm node_modules -package-lock.json #### JetBrains .idea diff --git a/azure-pipelines.yml b/azure-pipelines.yml index f5961d90a5b8..a1ee6e6fef43 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -12,159 +12,11 @@ variables: PR_ONLY: 'true' jobs: - -- job: "BranchProtectionForPrivateRepo" - pool: - vmImage: 'Ubuntu 16.04' - condition: and(variables['PRIVATE'], eq(variables['System.PullRequest.TargetBranch'], 'master')) - steps: - - script: '>&2 echo "the branch is protected"' - failOnStderr: true - -- job: "Syntax" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - script: | - echo TRAVIS: $(TRAVIS) - echo TRAVIS_BRANCH: $(TRAVIS_BRANCH) - echo TRAVIS_REPO_SLUG: $(TRAVIS_REPO_SLUG) - echo TRAVIS_PULL_REQUEST: $(TRAVIS_PULL_REQUEST) - echo TRAVIS_PULL_REQUEST_SLUG: $(TRAVIS_PULL_REQUEST_SLUG) - echo TRAVIS_PULL_REQUEST_SHA: $(TRAVIS_PULL_REQUEST_SHA) - echo PR_ONLY: $(PR_ONLY) - displayName: "Info" - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm test -- test/syntax.js' - displayName: 'Syntax validation' - -- job: "Semantic" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm run tsc && node scripts/semanticValidation.js' - displayName: 'Semantic Validation' - -- job: "ModelValidation" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm run tsc && node scripts/modelValidation.js' - displayName: 'Model Validation' - -- job: "Avocado" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: './node_modules/.bin/avocado' - displayName: 'Avocado' - -- job: "BreakingChange" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - script: 'scripts/install-dotnet.sh' - displayName: 'Install .Net' - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm run tsc && node scripts/breaking-change.js' - displayName: 'Breaking Changes' - -- job: "LintDiff" - variables: - NODE_OPTIONS: '--max-old-space-size=8192' - pool: - vmImage: 'Ubuntu 16.04' - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'scripts/install-dotnet.sh' - displayName: 'install .Net' - - script: 'npm run tsc && node scripts/momentOfTruth.js && node scripts/momentOfTruthPostProcessing.js' - displayName: 'LintDiff' - -- job: "SDK" - timeoutInMinutes: 120 - strategy: - matrix: - java: - AZURE_SDK_REPO: azure-sdk-for-java - AZURE_SDK_PARAMS: '' - javascript: - AZURE_SDK_REPO: azure-sdk-for-js - AZURE_SDK_PARAMS: '' - node: - AZURE_SDK_REPO: azure-sdk-for-node - AZURE_SDK_PARAMS: '' - python: - AZURE_SDK_REPO: azure-sdk-for-python - AZURE_SDK_PARAMS: '' - go: - AZURE_SDK_REPO: azure-sdk-for-go - AZURE_SDK_PARAMS: '-o latest' - pool: - vmImage: 'Ubuntu 16.04' - variables: - NODE_OPTIONS: '--max-old-space-size=8192' - steps: - - script: echo $(NODE_OPTIONS) - - script: "scripts/swagger-to-sdk.sh Azure/$(AZURE_SDK_REPO) -v $(AZURE_SDK_PARAMS)" - displayName: "Swagger to SDK script" - -- job: "NetworkValidation" - condition: and(startsWith(variables['System.PullRequest.TargetBranch'], 'network-'), endsWith(variables['System.PullRequest.TargetBranch'], '-release')) - continueOnError: true - pool: - vmImage: vs2017-win2016 - variables: - NRP_SWAGGER_VALIDATION_OVERRIDE_PS_BRANCH: 'true' - NRP_BUILD_TOOLS_SKIP_GENERATE_PS1: 'true' - NRP_BUILD_TOOLS_OUTPUT_PATH: '$(System.DefaultWorkingDirectory)\Out' - steps: - - powershell: | - & "C:/Program Files (x86)/Microsoft SDKs/Windows/v10.0A/bin/NETFX 4.6.1 Tools/sn.exe" -Vr *,31bf3856ad364e35 - displayName: Bypass Strong Name validation - - task: NodeTool@0 - inputs: - versionSpec: 10.x - displayName: Install Node.js - - script: npm install autorest -g - displayName: Install autorest - - script: git clone --depth 1 -- https://dev.azure.com/v-anevse/BuildScripts/_git/BuildScripts ..\BuildScripts - displayName: Clone build tools - - powershell: | - $swgrPath = (Get-Item ".\").FullName - $outputPath = $env:NRP_BUILD_TOOLS_OUTPUT_PATH - New-Item -Path $outputPath -ItemType "Directory" -Force | Out-Null - ..\BuildScripts\Test-SwaggerRelease.ps1 -Component Network -SwaggerRepoPath $swgrPath -OutputFolder $outputPath - failOnStderr: false - displayName: Test Swagger updates - - powershell: | - Copy-Item "..\BuildScripts\.azure-pipelines\.artifactignore" -Destination "$($env:NRP_BUILD_TOOLS_OUTPUT_PATH)\.artifactignore" -Force -ErrorAction "SilentlyContinue" - failOnStderr: false - condition: always() - displayName: Copy .artifactignore - - task: PublishPipelineArtifact@0 - condition: always() - inputs: - artifactName: SwaggerTestOutput - targetPath: $(NRP_BUILD_TOOLS_OUTPUT_PATH) +- template: .azure-pipelines/BranchProtectionForPrivateRepo.yml +- template: .azure-pipelines/Syntax.yml +- template: .azure-pipelines/Semantic.yml +- template: .azure-pipelines/Avocado.yml +- template: .azure-pipelines/BreakingChange.yml +- template: .azure-pipelines/LintDiff.yml +- template: .azure-pipelines/SwaggerToSDK.yml +- template: .azure-pipelines/NetworkValidation.yml diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000000..137fa8046f9c --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5781 @@ +{ + "name": "azure-rest-api-specs-tests", + "version": "0.1.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@azure/avocado": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.1.tgz", + "integrity": "sha512-GOdVNS/yr7wSQVUGfvR4/nP6+UDBrxqT/McvTsKuy1vWV8BwgKx3JZLB/9mrWYhXQZ257AQkVO9nepxRu9/PsQ==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.1", + "@ts-common/async-iterator": "^0.2.2", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.6", + "@ts-common/json": "^0.3.1", + "@ts-common/json-parser": "^0.8.0", + "@ts-common/string-map": "^0.3.0", + "commonmark": "^0.29.0", + "js-yaml": "^3.13.1", + "node-object-hash": "^1.4.2" + } + }, + "@azure/oad": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@azure/oad/-/oad-0.6.3.tgz", + "integrity": "sha512-GyyNcsVB8cHW8N5AYWuAh/6qTMcC5Do5o/ue2+dyO5v5iCqZTpOfk4CKZMKJck6qXquXUgdv/HzTOHJJ4Zer9w==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/json-parser": "^0.7.0", + "autorest": "^2.0.0", + "glob": "^7.1.3", + "js-yaml": "^3.13.1", + "json-pointer": "^0.6.0", + "json-refs": "^3.0.13", + "request": "^2.88.0", + "source-map": "^0.7.3", + "tslib": "^1.9.3", + "winston": "^2.3.0", + "yargs": "^13.2.2" + }, + "dependencies": { + "@ts-common/json-parser": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.7.2.tgz", + "integrity": "sha512-Rb0bA/maGzfjA7ZegDvfDABF+vz2norftJX80aTOLb88gLd2+SnD6gYVg3nZH9FpA5/34JXFDvMs4Fb5GuPoew==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.4", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + } + } + }, + "@azure/openapi-markdown": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.1.tgz", + "integrity": "sha512-d0pIhGAoL+q7rqLuA4HHkzIRVHe3gsRv6cvxPDFIVmLoY44DuUOZwvv6viL1WF1i7lRK/M8n4GHvlLSkx3l7Tw==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.2.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@azure/rest-api-specs-scripts": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.4.3.tgz", + "integrity": "sha512-FlyENJxKEaMxDLHr2VVtqYJ0dppqPVQqmT/DypAskFeorQKsILH/9ffXkLptmkuAdIRff0O+MI2Q5qHSPfnyzw==", + "dev": true, + "requires": { + "@azure/avocado": "^0.4.1", + "@azure/oad": "^0.6.3", + "@octokit/rest": "^16.25.0", + "@ts-common/string-map": "^0.3.0", + "fs-extra": "^7.0.1", + "glob": "^7.1.3", + "js-yaml": "^3.13.1", + "oav": "^0.18.1", + "request": "^2.88.0" + }, + "dependencies": { + "@azure/avocado": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.4.10.tgz", + "integrity": "sha512-0zPM0gE/QkQEGZkqyFW2+UgmbhvR1D0MzEucVg1fbVIXpHktVzo0O95bEm6jrg07XrCO3yj9eZmOwTDqotnp9A==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.1", + "@ts-common/async-iterator": "^0.2.2", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.6", + "@ts-common/json": "^0.3.1", + "@ts-common/json-parser": "^0.8.0", + "@ts-common/string-map": "^0.3.0", + "commonmark": "^0.29.0", + "js-yaml": "^3.13.1", + "node-object-hash": "^1.4.2" + } + } + } + }, + "@microsoft.azure/autorest-extension-base": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@microsoft.azure/autorest-extension-base/-/autorest-extension-base-1.0.13.tgz", + "integrity": "sha1-/VobUj8CzK3525vK8Jez/5mSgeY=", + "dev": true, + "requires": { + "vscode-jsonrpc": "^3.5.0" + } + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@octokit/endpoint": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.3.2.tgz", + "integrity": "sha512-gRjteEM9I6f4D8vtwU2iGUTn9RX/AJ0SVXiqBUEuYEWVGGAVjSXdT0oNmghH5lvQNWs8mwt6ZaultuG6yXivNw==", + "dev": true, + "requires": { + "deepmerge": "4.0.0", + "is-plain-object": "^3.0.0", + "universal-user-agent": "^3.0.0", + "url-template": "^2.0.8" + } + }, + "@octokit/request": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.0.2.tgz", + "integrity": "sha512-z1BQr43g4kOL4ZrIVBMHwi68Yg9VbkRUyuAgqCp1rU3vbYa69+2gIld/+gHclw15bJWQnhqqyEb7h5a5EqgZ0A==", + "dev": true, + "requires": { + "@octokit/endpoint": "^5.1.0", + "@octokit/request-error": "^1.0.1", + "deprecation": "^2.0.0", + "is-plain-object": "^3.0.0", + "node-fetch": "^2.3.0", + "once": "^1.4.0", + "universal-user-agent": "^3.0.0" + } + }, + "@octokit/request-error": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.0.4.tgz", + "integrity": "sha512-L4JaJDXn8SGT+5G0uX79rZLv0MNJmfGa4vb4vy1NnpjSnWDLJRy6m90udGwvMmavwsStgbv2QNkPzzTCMmL+ig==", + "dev": true, + "requires": { + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "@octokit/rest": { + "version": "16.28.7", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.28.7.tgz", + "integrity": "sha512-cznFSLEhh22XD3XeqJw51OLSfyL2fcFKUO+v2Ep9MTAFfFLS1cK1Zwd1yEgQJmJoDnj4/vv3+fGGZweG+xsbIA==", + "dev": true, + "requires": { + "@octokit/request": "^5.0.0", + "@octokit/request-error": "^1.0.2", + "atob-lite": "^2.0.0", + "before-after-hook": "^2.0.0", + "btoa-lite": "^1.0.0", + "deprecation": "^2.0.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lodash.uniq": "^4.5.0", + "octokit-pagination-methods": "^1.1.0", + "once": "^1.4.0", + "universal-user-agent": "^3.0.0", + "url-template": "^2.0.8" + } + }, + "@ts-common/add-position": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@ts-common/add-position/-/add-position-0.0.2.tgz", + "integrity": "sha512-ENfIN5410jyxqXbQZXmj1ifFPjnhXOuJdQjglDXhLR8vyD74PTUz277BN9Voua2DKeOjlAnyBK7ml1ciMsBqhw==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.5" + } + }, + "@ts-common/async-iterator": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@ts-common/async-iterator/-/async-iterator-0.2.3.tgz", + "integrity": "sha512-szLdrutwQxBCIECaO2RTFcUPFj+9QVk4xKAj+APgeeLoEs67tNjXFgvfU0kOfF04qTHlPNPqcutSqxMHqzG3qA==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.6", + "tslib": "^1.10.0" + } + }, + "@ts-common/commonmark-to-markdown": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/commonmark-to-markdown/-/commonmark-to-markdown-1.2.0.tgz", + "integrity": "sha512-xFWpGZN1XzWN0egRs6gcT+tgYYw57us/Xr9euoaTsi9N+UR9ZxnG8Mrt4K/KlB54dNIED/LaGxReqRM5L7tKZA==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0", + "@types/commonmark": "^0.27.3", + "commonmark": "^0.28.1", + "front-matter": "^3.0.1" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/fs/-/fs-0.2.0.tgz", + "integrity": "sha512-ul1v4ZatcHuAzrwr/hGjSbk37pnfnLYDWC1yMEynQlnV8ndAcIVNYwQPPOYtLADPKTi3y74g5Q4BF3xPurDHLA==", + "dev": true, + "requires": { + "@ts-common/async-iterator": "^0.2.0", + "@types/node": "^10.12.18", + "tslib": "^1.9.3" + } + }, + "@ts-common/iterator": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@ts-common/iterator/-/iterator-0.3.6.tgz", + "integrity": "sha512-nNdcleTj3qLlchH17HI/xqOc6sNgOqJ5DdRR0nOEVdJVZCo5bfqoQTu6+Q9ZwMhuETuR2d86MSlmaL2FVHnPjQ==", + "dev": true + }, + "@ts-common/json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@ts-common/json/-/json-0.3.1.tgz", + "integrity": "sha512-vaplNdZPdeWr4p+hLJGdn08UMTSgYQrlRtxrAS0fAWyMlmFalBm/XRhHnohgiflRaj2jxl7ZxihjNlC/LZ/1YQ==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0" + } + }, + "@ts-common/json-parser": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.8.0.tgz", + "integrity": "sha512-mlScUHhZiyUH9Am1zGv4r5ce8SM5OkBz9UpnzQrSK8PDHsgnHVHAukMUKxyvqWB9V2JemTXcbnQkjnrBH02QIQ==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/property-set": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@ts-common/property-set/-/property-set-0.1.0.tgz", + "integrity": "sha512-Mw/CPiksQI/Tvp8/bmne6ZYmOcgHuMOrflairbzdpfgMz7lrINFu8PyDQw6yTnIASeZR4yW0xljb66gCE4Jj0w==", + "dev": true + }, + "@ts-common/source-map": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@ts-common/source-map/-/source-map-0.5.0.tgz", + "integrity": "sha512-aKFWvuN5uALt+hUtkPA4gHjtloDy2qHW1FB1r758KCTI0h0lP3dNJGcfwg7NnmD0qKQiZAY/J73/NYrbuTfT3A==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0", + "@ts-common/json": "^0.3.0", + "@ts-common/property-set": "^0.1.0", + "@ts-common/string-map": "^0.3.0" + } + }, + "@ts-common/string-map": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/string-map/-/string-map-0.3.0.tgz", + "integrity": "sha512-tikHtQPV/R48VAnlolyl1FIHciror68LXyruelvYf+lRE6ysjIGB2iNyw7wN6aDcUs2wN/CD6fF8Ye7lVIWNTQ==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.0" + } + }, + "@ts-common/virtual-fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.2.0.tgz", + "integrity": "sha512-KQ1WV8sMBTC1mq126DWzywIX4YwOtjP/opdvAbuwJ+wPCR/hK2XPm15NcYphZ5nLetdl1PTaDlfB5OOcQ4JnuA==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.2.3", + "@types/node-fetch": "^2.3.0", + "async-retry": "^1.2.3", + "node-fetch": "^2.3.0" + } + }, + "@types/async-retry": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@types/async-retry/-/async-retry-1.4.1.tgz", + "integrity": "sha512-hDI5Ttk9SUmDLcD/Yl2VuWQRGYZjJ7aaJFeRlomUOz/iTKSE7yA55SwY87QwjiZgwhMlVAKoT1rl08UyQoheag==", + "dev": true, + "requires": { + "@types/retry": "*" + } + }, + "@types/commonmark": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@types/commonmark/-/commonmark-0.27.4.tgz", + "integrity": "sha512-7koSjp08QxKoS1/+3T15+kD7+vqOUvZRHvM8PutF3Xsk5aAEkdlIGRsHJ3/XsC3izoqTwBdRW/vH7rzCKkIicA==", + "dev": true + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-SGGAhXLHDx+PK4YLNcNGa6goPf9XRWQNAUUbffkwVGGXIxmDKWyGGL4inzq2sPmExu431Ekb9aEMn9BkPqEYFA==", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "@types/mocha": { + "version": "5.2.7", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz", + "integrity": "sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==", + "dev": true + }, + "@types/node": { + "version": "10.14.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.16.tgz", + "integrity": "sha512-/opXIbfn0P+VLt+N8DE4l8Mn8rbhiJgabU96ZJ0p9mxOkIks5gh6RUnpHak7Yh0SFkyjO/ODbxsQQPV2bpMmyA==", + "dev": true + }, + "@types/node-fetch": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.0.tgz", + "integrity": "sha512-TLFRywthBgL68auWj+ziWu+vnmmcHCDFC/sqCOQf1xTz4hRq8cu79z8CtHU9lncExGBsB8fXA4TiLDLt6xvMzw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "abab": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.1.tgz", + "integrity": "sha512-1zSbbCuoIjafKZ3mblY5ikvAb0ODUbqBnFuUb7f6uLeQhhGJ0vEV4ntmtxKLT2WgXCO94E07BjunsIw1jOMPZw==", + "dev": true + }, + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-globals": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.3.tgz", + "integrity": "sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ==", + "dev": true, + "requires": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", + "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true, + "optional": true + }, + "ansi-colors": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", + "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "dev": true + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "arg": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.1.tgz", + "integrity": "sha512-SlmP3fEA88MBv0PypnXZ8ZfJhwmDeIE3SP71j37AiXQBXYosPV0x6uISAaHYSlSVhmHOVkomen0tbGk6Anlebw==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "async-retry": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.2.3.tgz", + "integrity": "sha512-tfDb02Th6CE6pJUF2gjW5ZVjsgwlucVXOEQMvEX9JgSJMs9gAX+Nz3xRuJBKuUYjTSYORqvDBORdAQ3LU59g7Q==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "atob-lite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/atob-lite/-/atob-lite-2.0.0.tgz", + "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=", + "dev": true + }, + "autorest": { + "version": "2.0.4283", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4283.tgz", + "integrity": "sha512-3jU9yDR71d2thRnKdPH03DaWbla1Iqnrx2rqUUwbMrb4di36a8+nttCQaTWG7biWPJc6Ke6zSSTzFH0uhya+Nw==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "before-after-hook": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", + "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha1-M3dm2hWAEhD92VbCLpxokaudAzc=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/color/-/color-3.0.0.tgz", + "integrity": "sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w==", + "dev": true, + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", + "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", + "dev": true, + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colornames": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/colornames/-/colornames-1.1.1.tgz", + "integrity": "sha1-+IiQMGhcfE/54qVZ9Qd+t2qBb5Y=", + "dev": true + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "dev": true + }, + "colorspace": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz", + "integrity": "sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ==", + "dev": true, + "requires": { + "color": "3.0.x", + "text-hex": "1.0.x" + } + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + }, + "comment-json": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-1.1.3.tgz", + "integrity": "sha1-aYbDMw/uDEyeAMI5jNYa+l2PI54=", + "dev": true, + "requires": { + "json-parser": "^1.0.0" + } + }, + "commonmark": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.29.0.tgz", + "integrity": "sha512-Wc3kvAIm0EK85pHsM95Fev31wEN6/zQpwd2qcLDL8psjHRoUFvUeGHevIJAdToWUuFoX8WI/gmeDauqy32xgJQ==", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "configstore": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.0.tgz", + "integrity": "sha512-eE/hvMs7qw7DlcB5JPRnthmrITuHMmACUJAp89v6PT6iOqzoLS7HRWhBtuHMlhNHo2AhUSA/3Dh1bKNJHcublQ==", + "dev": true, + "requires": { + "dot-prop": "^5.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, + "cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true + }, + "cspell": { + "version": "4.0.28", + "resolved": "https://registry.npmjs.org/cspell/-/cspell-4.0.28.tgz", + "integrity": "sha512-2YH8pOUnaGCjHHKKUC2K247nAKx2/ah/JsyMYgSe0U3R1Lokl6+HwTsU2+I01o8u5GbM5sLjxsQRPzceYQkzLg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "commander": "^2.20.0", + "comment-json": "^1.1.3", + "cspell-glob": "^0.1.11", + "cspell-lib": "^4.0.25", + "fs-extra": "^8.1.0", + "gensequence": "^2.1.2", + "get-stdin": "^7.0.0", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "cspell-dict-companies": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/cspell-dict-companies/-/cspell-dict-companies-1.0.14.tgz", + "integrity": "sha512-q4Xfe/vNteOs57r+YeEYzVsoQe2YGsi3uVMv06w0CkMa9y8llDXpBv7UJniLZVyW19491jlxIORkHx4i39MBUw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-cpp": { + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/cspell-dict-cpp/-/cspell-dict-cpp-1.1.23.tgz", + "integrity": "sha512-vR24jdt3oCE51sfrTPEmzlw1JVltKNkUnS/1kjeauY5VAQjx04Q1XOBPHJHmTNRXdmcX/MvNFR8z3qbpC2pbMA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-django": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/cspell-dict-django/-/cspell-dict-django-1.0.12.tgz", + "integrity": "sha512-ChBzWNltlqIs7FSYjQV6qTdkxt4VFQJm2XGlfIoNUZ1kwrOpzVdEUuVpRhWtj9NVB6AJqJxWjm/HzVvMYEY2cg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-elixir": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-elixir/-/cspell-dict-elixir-1.0.10.tgz", + "integrity": "sha512-Z+9K1ZHGo5XnbS2AZ5DG2bpEA9wJ4BdsTa69VIqPgZ6vEfVLqeMidk70FF0Y/DY49+Qyg3ngY0WyE5Je/Romzw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-en-gb": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/cspell-dict-en-gb/-/cspell-dict-en-gb-1.1.11.tgz", + "integrity": "sha512-UnmAeMDzf/YeXuI85BIaQzpArXlt+m+I9S9uy88nvUfq6goOfUFN8Axh0idDtqsFNoaMS5TgSzvjP7DgMXArYg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-en_us": { + "version": "1.2.18", + "resolved": "https://registry.npmjs.org/cspell-dict-en_us/-/cspell-dict-en_us-1.2.18.tgz", + "integrity": "sha512-P2TRblBVd9KOfwjvI5mxzEXMGBvvTIfqcKSQ+0RbpwC2S4ImW9k++LYxy9LtfSRmdSGjHbejYYtsrgvId1KcoA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-fullstack": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/cspell-dict-fullstack/-/cspell-dict-fullstack-1.0.17.tgz", + "integrity": "sha512-XmFyvt5r9JXcIjnycFfZfc/82dmMBUSowL4Oa/Mubx0Tm66bKOTmhrDatXl96qo6J0cIoyoPXitsfj5YaDV17g==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-golang": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/cspell-dict-golang/-/cspell-dict-golang-1.1.12.tgz", + "integrity": "sha512-G3D5CIJfwPdzpgM/N5d/9hImG637GHn3FUkPzC3Kz1QN2G6JTwTAYPnsKybvLE80U9PUwrylZTZBM+cRZSWPzQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-haskell": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cspell-dict-haskell/-/cspell-dict-haskell-1.0.2.tgz", + "integrity": "sha512-d+pFdRUGZjusiXRqWW05pZqeFKsR5Nvrp/8qlowp/mwNFRBoMzrrAHnP7DZrfo/zHHpzCR3SnmT0ImnCv2MDcQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-html-symbol-entities": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-html-symbol-entities/-/cspell-dict-html-symbol-entities-1.0.11.tgz", + "integrity": "sha512-8uqZOa+8jDg/FH1LPfwfgOWT/0+3CXPWoWf4t+SjEhNVRoih2HVweQZCwVr+CsmEHgVON8Tem3OWwz+e1zJwNA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-java": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-java/-/cspell-dict-java-1.0.10.tgz", + "integrity": "sha512-GKgJ+HSii7Xp+LT0Gajy4ipcQgapwsM3fmmZS6pZBZMoodJ0BRzga6QZrBuJSHVhSBV4rFIPJwI4oBGYZCGSpQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-latex": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-latex/-/cspell-dict-latex-1.0.11.tgz", + "integrity": "sha512-z/mejOvZAHIL76wnk7i/RT1v1IkSCYlk1l8pLW8l/KA76MCdNAB5xA6zfyBCftbhEOBJA9Fx60JU2T2aba4isg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-lorem-ipsum": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-lorem-ipsum/-/cspell-dict-lorem-ipsum-1.0.10.tgz", + "integrity": "sha512-UlboQ3xH+D3l+hemLO4J5yz8EM60SH91f1dJIy2s94AeePZXtwYh1hTFM5dEsXI2CAQkfTu3ZdPWflLsInPfrA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-php": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/cspell-dict-php/-/cspell-dict-php-1.0.11.tgz", + "integrity": "sha512-0aC8PWVqEVg5II9+U9DBcUv6k9x1DpclH7l5cbvoiR8u69O/LnVlnSol1nSdzAwBhC6fWQ9mfOiMyDIHNZ2GfA==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-powershell": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cspell-dict-powershell/-/cspell-dict-powershell-1.0.2.tgz", + "integrity": "sha512-BW2Bdpet0yRQKB+7HjA75O0aJnh1VjdnMLNYb1SLvow73uCsC8GpvYLtvFyDm0Q717FYKoPzuZiSrXhyHerNAw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-python": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/cspell-dict-python/-/cspell-dict-python-1.0.14.tgz", + "integrity": "sha512-w8kevjvayndKkZqY4yt877UzGXUNTG6gB0zoeOCVxnAFFqTexVvmJ9Johc+eOdqd+dnUu6gF8XfX4ZdX5J+Rxw==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-rust": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/cspell-dict-rust/-/cspell-dict-rust-1.0.10.tgz", + "integrity": "sha512-iwWMVqOMnkTtb2Z50pGs+x9HM6ghqVotVguqgeJUVD62gqjHMHOTXAw/p7e8VFMXEPfVJeCZg3KGT3Ut6b+8Zg==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-dict-scala": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/cspell-dict-scala/-/cspell-dict-scala-1.0.9.tgz", + "integrity": "sha512-wWMjYe4OLFqeQpHYqBoAlXCwEgANu4DuJIg8Vg9Ig8arzobWX9uzmSwsicyGKtCjyno99/MIHAhksTTr7ccMzQ==", + "dev": true, + "requires": { + "configstore": "^5.0.0" + } + }, + "cspell-glob": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-0.1.11.tgz", + "integrity": "sha512-1s9539g+AB+V0gX4TPfCvhwWYso/fKlWQIX5w31BuqLjV6e8542x9vpdO/GS7aq1y1vec4ocx0B9I/d1SGFDSg==", + "dev": true, + "requires": { + "micromatch": "^4.0.2" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "cspell-io": { + "version": "4.0.17", + "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-4.0.17.tgz", + "integrity": "sha512-srJnvfTm9QdrAGPx7OIR6MIZeXJPgwWupderhy4ywDQKgds4Yj1w3f10JWzHgsfWAwExAaEs3GZ4fEMUeWhnAA==", + "dev": true, + "requires": { + "iconv-lite": "^0.4.24", + "iterable-to-stream": "^1.0.1" + } + }, + "cspell-lib": { + "version": "4.0.25", + "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-4.0.25.tgz", + "integrity": "sha512-EltUo+BBx15gCCYuDQ2V/pSPu1xIje9mdzCaEDoTJXIl1J5QVONmc91sukXLNEoymG4cdoZlnd2xg4fV/orynQ==", + "dev": true, + "requires": { + "comment-json": "^1.1.3", + "configstore": "^5.0.0", + "cspell-dict-companies": "^1.0.12", + "cspell-dict-cpp": "^1.1.21", + "cspell-dict-django": "^1.0.12", + "cspell-dict-elixir": "^1.0.10", + "cspell-dict-en-gb": "^1.1.11", + "cspell-dict-en_us": "^1.2.18", + "cspell-dict-fullstack": "^1.0.15", + "cspell-dict-golang": "^1.1.12", + "cspell-dict-haskell": "^1.0.2", + "cspell-dict-html-symbol-entities": "^1.0.11", + "cspell-dict-java": "^1.0.10", + "cspell-dict-latex": "^1.0.11", + "cspell-dict-lorem-ipsum": "^1.0.10", + "cspell-dict-php": "^1.0.11", + "cspell-dict-powershell": "^1.0.2", + "cspell-dict-python": "^1.0.14", + "cspell-dict-rust": "^1.0.10", + "cspell-dict-scala": "^1.0.9", + "cspell-io": "^4.0.17", + "cspell-trie-lib": "^4.0.15", + "cspell-util-bundle": "^4.0.5", + "fs-extra": "^8.1.0", + "gensequence": "^2.1.2", + "vscode-uri": "^2.0.3" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "cspell-trie-lib": { + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-4.0.15.tgz", + "integrity": "sha512-k3P03msJJh6Fhic9db7kva3+VodhvywvxxB5Q8Y7qF1xCu9zL2Zeoi+gA8ziL1QtUFqAqpzbDNPfiHhz6BaJsQ==", + "dev": true, + "requires": { + "gensequence": "^2.1.2", + "js-xxhash": "^1.0.1" + } + }, + "cspell-util-bundle": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/cspell-util-bundle/-/cspell-util-bundle-4.0.5.tgz", + "integrity": "sha512-luu/xIjoTRt82eJJxf77fhgjU6XJve+CfoTyfejOj7niYDRvoZkt0rTSHPgTI6MADjaZxlCLleSihEgqidt5WQ==", + "dev": true + }, + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "dev": true, + "requires": { + "cssom": "0.3.x" + } + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.2.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } + } + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepmerge": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.0.0.tgz", + "integrity": "sha512-YZ1rOP5+kHor4hMAH+HRQnBQHg+wvS1un1hAOuIcxcBy0hzcUf6Jg2a1w65kpoOUnurOfZbERwjI1TfZxNjcww==", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "diagnostics": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/diagnostics/-/diagnostics-1.1.1.tgz", + "integrity": "sha512-8wn1PmdunLJ9Tqbx+Fx/ZEuHfJf4NKSN2ZBj7SJC/OWRWha843+WsTjqMe1B5E3p28jqBlp+mJ2fPVxPyNgYKQ==", + "dev": true, + "requires": { + "colorspace": "1.1.x", + "enabled": "1.0.x", + "kuler": "1.0.x" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "^3.0.0" + } + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "dot-prop": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.1.0.tgz", + "integrity": "sha512-n1oC6NBF+KM9oVXtjmen4Yo7HyAVWV2UUl50dCYJdw2924K6dX9bf9TTTWaKtYlRn0FEtxG27KS80ayVLixxJA==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, + "drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "dev": true + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "enabled": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-1.0.2.tgz", + "integrity": "sha1-ll9lE9LC0cX0ZStkouM5ZGf8L5M=", + "dev": true, + "requires": { + "env-variable": "0.0.x" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "env-variable": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.5.tgz", + "integrity": "sha512-zoB603vQReOFvTg5xMl9I1P2PnHsHQQKTEowsKKD7nseUfJq6UWzK+4YtlWUO1nhiQUxe6XMkk+JleSZD1NZFA==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + } + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", + "dev": true + }, + "faker": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/faker/-/faker-4.1.0.tgz", + "integrity": "sha1-HkW7vsxndLPBlfrSg1EJxtdIzD8=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.6.tgz", + "integrity": "sha512-q8BZ89jjc+mz08rSxROs8VsrBBcn1SIw1kq9NjolL509tkABRk9io01RAjSaEv1Xb2uFLt8VtRiZbGp5H8iDtg==", + "dev": true + }, + "fecha": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", + "integrity": "sha512-lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", + "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", + "dev": true, + "requires": { + "is-buffer": "~2.0.3" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==", + "dev": true + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.0.tgz", + "integrity": "sha512-WXieX3G/8side6VIqx44ablyULoGruSde5PNTxoUyo5CeyAMX6nVWUd0rgist/EuX655cjhUhTo1Fo3tRYqbcA==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "format-util": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.3.tgz", + "integrity": "sha1-Ay3KShFiYqEsQ/TD7IVmQWxbLZU=", + "dev": true + }, + "formidable": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", + "integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "front-matter": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-3.0.2.tgz", + "integrity": "sha512-iBGZaWyzqgsrPGsqrXZP6N4hp5FzSKDi18nfAoYpgz3qK5sAwFv/ojmn3VS60SOgLvq6CtojNqy0y6ZNz05IzQ==", + "dev": true, + "requires": { + "js-yaml": "^3.13.1" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gensequence": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-2.1.3.tgz", + "integrity": "sha512-qa/2k1YSyh6TGVtIMtmwv1tXfq7lkhR8pMtOExfZGuwyaqplMhUxyO/Wrw9fV+37B38WE6egpjSMcwyzlNOoHA==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stdin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, + "globby": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + } + }, + "graceful-fs": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", + "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==", + "dev": true + }, + "graphlib": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", + "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", + "dev": true, + "requires": { + "lodash": "^4.17.5" + } + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "handlebars": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", + "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", + "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.1" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, + "is-plain-object": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz", + "integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==", + "dev": true, + "requires": { + "isobject": "^4.0.0" + } + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", + "dev": true, + "requires": { + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "iterable-to-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/iterable-to-stream/-/iterable-to-stream-1.0.1.tgz", + "integrity": "sha512-O62gD5ADMUGtJoOoM9U6LQ7i4byPXUNoHJ6mqsmkQJcom331ZJGDApWgDESWyBMEHEJRjtHozgIiTzYo9RU4UA==", + "dev": true + }, + "js-base64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "dev": true + }, + "js-xxhash": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/js-xxhash/-/js-xxhash-1.0.4.tgz", + "integrity": "sha512-S/6Oo7ruxx5k8m4qlMnbpwQdJjRsvvfcIhIk1dA9c5y5GNhYHKYKu9krEK3QgBax6CxJuf4gRL2opgLkdzWIKg==", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + } + }, + "json-parser": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/json-parser/-/json-parser-1.1.5.tgz", + "integrity": "sha1-5i7FJh0aal/CDoEqMgdAxtkAVnc=", + "dev": true, + "requires": { + "esprima": "^2.7.0" + }, + "dependencies": { + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + } + } + }, + "json-pointer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.0.tgz", + "integrity": "sha1-jlAFUKaqxUZKRzN32leqbMIoKNc=", + "dev": true, + "requires": { + "foreach": "^2.0.4" + } + }, + "json-refs": { + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.13.tgz", + "integrity": "sha512-/FJ+BJ6BASjmNsBJHE8qMVj46HTS2Pfq5gI5BQRhyUsdrw9HaHRWSOsOh87deTOyWMtGas5Qr8H6ikrcWHdZbw==", + "dev": true, + "requires": { + "commander": "~2.19.0", + "graphlib": "^2.1.7", + "js-yaml": "^3.13.0", + "lodash": "^4.17.11", + "native-promise-only": "^0.8.1", + "path-loader": "^1.0.10", + "slash": "^2.0.0", + "uri-js": "^4.2.2" + } + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-faker": { + "version": "0.5.0-rc17", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc17.tgz", + "integrity": "sha512-ZQSLPpnsGiMBuPOHi09cAzhsiIeOcs5im2GAQ2P6XKyWOuetO8eYdYCP/kW7VVU891Ucan0/dl8GYbRA6pf9gw==", + "dev": true, + "requires": { + "json-schema-ref-parser": "^6.0.2", + "jsonpath": "^1.0.1", + "randexp": "^0.5.3" + } + }, + "json-schema-ref-parser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", + "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "js-yaml": "^3.12.1", + "ono": "^4.0.11" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonpath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.0.2.tgz", + "integrity": "sha512-rmzlgFZiQPc6q4HDyK8s9Qb4oxBnI5sF61y/Co5PV0lc3q2bIuRsNdueVbhoSHdKM4fxeimphOAtfz47yjCfeA==", + "dev": true, + "requires": { + "esprima": "1.2.2", + "static-eval": "2.0.2", + "underscore": "1.7.0" + }, + "dependencies": { + "esprima": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", + "integrity": "sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs=", + "dev": true + } + } + }, + "jsonschema": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.2.4.tgz", + "integrity": "sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw==", + "dev": true + }, + "jsonschema-draft4": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jsonschema-draft4/-/jsonschema-draft4-1.0.0.tgz", + "integrity": "sha1-8K8gBQVPDwrefqIRhhS2ncUS2GU=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "kuler": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-1.0.1.tgz", + "integrity": "sha512-J9nVUucG1p/skKul6DU3PUZrhs0LPulNaeUOox0IyXDi8S4CztTHs1gQphhuZmzXG7VOQSf6NJfKuzteQLv9gQ==", + "dev": true, + "requires": { + "colornames": "^1.1.1" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "linq": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.0.tgz", + "integrity": "sha512-rdmaLOf2tSCzZ75scdjjN/LVHGZzRu48ql9LdxppQec/pKpPtf8jlMDlPBX3rQnLMcGPtAx8Lel6YbF7jND70g==", + "dev": true + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "logform": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.1.2.tgz", + "integrity": "sha512-+lZh4OpERDBLqjiwDLpAWNQu6KMjnlXH2ByZwCuSqVPJletw0kTWJf5CgSNAUKn1KUkv3m2cUz/LK8zyEy7wzQ==", + "dev": true, + "requires": { + "colors": "^1.2.1", + "fast-safe-stringify": "^2.0.4", + "fecha": "^2.3.3", + "ms": "^2.1.1", + "triple-beam": "^1.3.0" + }, + "dependencies": { + "colors": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", + "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", + "dev": true + } + } + }, + "macos-release": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.3.0.tgz", + "integrity": "sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA==", + "dev": true + }, + "make-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz", + "integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "md5-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-4.0.0.tgz", + "integrity": "sha512-UC0qFwyAjn4YdPpKaDNw6gNxRf7Mcx7jC1UGCY4boCzgvU2Aoc1mOGzTtrjjLKhM5ivsnhoKpQVxKPp+1j1qwg==", + "dev": true + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "merge2": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.4.tgz", + "integrity": "sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocha": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.0.tgz", + "integrity": "sha512-qwfFgY+7EKAAUAdv7VYMZQknI7YJSGesxHyhn6qD52DV8UcSZs5XwCifcZGMVIE4a5fbmhvbotxC0DLQ0oKohQ==", + "dev": true, + "requires": { + "ansi-colors": "3.2.3", + "browser-stdout": "1.3.1", + "debug": "3.2.6", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "find-up": "3.0.0", + "glob": "7.1.3", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "3.13.1", + "log-symbols": "2.2.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "ms": "2.1.1", + "node-environment-flags": "1.0.5", + "object.assign": "4.1.0", + "strip-json-comments": "2.0.1", + "supports-color": "6.0.0", + "which": "1.3.1", + "wide-align": "1.1.3", + "yargs": "13.2.2", + "yargs-parser": "13.0.0", + "yargs-unparser": "1.5.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + } + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "supports-color": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", + "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.2.tgz", + "integrity": "sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.0.0" + } + }, + "yargs-parser": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.0.0.tgz", + "integrity": "sha512-w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "ms-rest": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", + "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "dev": true, + "requires": { + "duplexer": "^0.1.1", + "is-buffer": "^1.1.6", + "is-stream": "^1.1.0", + "moment": "^2.21.0", + "request": "^2.88.0", + "through": "^2.3.8", + "tunnel": "0.0.5", + "uuid": "^3.2.1" + } + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "native-promise-only": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", + "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-environment-flags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", + "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", + "dev": true, + "requires": { + "object.getownpropertydescriptors": "^2.0.3", + "semver": "^5.7.0" + } + }, + "node-fetch": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", + "dev": true + }, + "node-object-hash": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-1.4.2.tgz", + "integrity": "sha512-UdS4swXs85fCGWWf6t6DMGgpN/vnlKeSGEQ7hJcrs7PBFoxoKLmibc3QRb7fwiYsjdL7PX8iI/TMSlZ90dgHhQ==", + "dev": true + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "nwsapi": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz", + "integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "oav": { + "version": "0.18.6", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.18.6.tgz", + "integrity": "sha512-qDMtwnEMZOCdqonzxR7ICbYcSsLkzXpcrZQHsFN9EgGXKUJ9cwPwV2zEba1+fk6WsW/id79cZWfFT0y3XBxiuA==", + "dev": true, + "requires": { + "@azure/openapi-markdown": "^0.9.0", + "@microsoft.azure/autorest-extension-base": "1.0.13", + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/json": "^0.3.0", + "@ts-common/json-parser": "^0.7.0", + "@ts-common/property-set": "^0.1.0", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.2.0", + "commonmark": "^0.29.0", + "glob": "^5.0.15", + "globby": "^9.2.0", + "js-yaml": "^3.13.1", + "json-pointer": "^0.6.0", + "json-refs": "^3.0.13", + "jsonpath": "^1.0.1", + "linq": "^3.2.0", + "lodash": "^4.17.11", + "md5-file": "^4.0.0", + "moment": "^2.24.0", + "ms-rest": "^2.5.0", + "swagger-parser": "^6.0.5", + "uuid": "^3.3.2", + "vscode-jsonrpc": "^3.6.2", + "winston": "^3.2.1", + "yargs": "^6.6.0", + "yasway": "^1.8.3", + "yuml2svg": "^4.2.1", + "z-schema": "^4.1.0" + }, + "dependencies": { + "@ts-common/json-parser": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.7.2.tgz", + "integrity": "sha512-Rb0bA/maGzfjA7ZegDvfDABF+vz2norftJX80aTOLb88gLd2+SnD6gYVg3nZH9FpA5/34JXFDvMs4Fb5GuPoew==", + "dev": true, + "requires": { + "@ts-common/iterator": "^0.3.4", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "winston": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.2.1.tgz", + "integrity": "sha512-zU6vgnS9dAWCEKg/QYigd6cgMVVNwyTzKs81XZtTFuRwJOcDdBg7AU0mXVyNbs7O5RH2zdv+BdNZUlx7mXPuOw==", + "dev": true, + "requires": { + "async": "^2.6.1", + "diagnostics": "^1.1.1", + "is-stream": "^1.1.0", + "logform": "^2.1.1", + "one-time": "0.0.4", + "readable-stream": "^3.1.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.3.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^4.2.0" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "^3.0.0" + } + } + } + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "octokit-pagination-methods": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz", + "integrity": "sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "one-time": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-0.0.4.tgz", + "integrity": "sha1-+M33eISCb+Tf+T46nMN7HkSAdC4=", + "dev": true + }, + "ono": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", + "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", + "dev": true, + "requires": { + "format-util": "^1.0.3" + } + }, + "openapi-schema-validation": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/openapi-schema-validation/-/openapi-schema-validation-0.4.2.tgz", + "integrity": "sha512-K8LqLpkUf2S04p2Nphq9L+3bGFh/kJypxIG2NVGKX0ffzT4NQI9HirhiY6Iurfej9lCu7y4Ndm4tv+lm86Ck7w==", + "dev": true, + "requires": { + "jsonschema": "1.2.4", + "jsonschema-draft4": "^1.0.0", + "swagger-schema-official": "2.0.0-bab6bed" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-name": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz", + "integrity": "sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==", + "dev": true, + "requires": { + "macos-release": "^2.2.0", + "windows-release": "^3.1.0" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-loader": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/path-loader/-/path-loader-1.0.10.tgz", + "integrity": "sha512-CMP0v6S6z8PHeJ6NFVyVJm6WyJjIwFvyz2b0n2/4bKdS/0uZa/9sKUlYZzubrn3zuDRU0zIuEDX9DZYQ2ZI8TA==", + "dev": true, + "requires": { + "native-promise-only": "^0.8.1", + "superagent": "^3.8.3" + } + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", + "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "dev": true, + "requires": { + "isarray": "0.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "psl": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", + "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.8.0.tgz", + "integrity": "sha512-tPSkj8y92PfZVbinY1n84i1Qdx75lZjMQYx9WZhnkofyxzw2r7Ho39G3/aEvSUdebxpnnM4LZJCtvE/Aq3+s9w==", + "dev": true + }, + "randexp": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", + "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", + "dev": true, + "requires": { + "drange": "^1.0.2", + "ret": "^0.2.0" + }, + "dependencies": { + "ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "dev": true + } + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "dependencies": { + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + } + } + }, + "request-promise-core": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", + "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "request-promise-native": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", + "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", + "dev": true, + "requires": { + "request-promise-core": "1.1.2", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "resolve": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", + "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dev": true, + "requires": { + "is-arrayish": "^0.3.1" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "static-eval": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz", + "integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==", + "dev": true, + "requires": { + "escodegen": "^1.8.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "string.prototype.repeat": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", + "integrity": "sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8=", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "superagent": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", + "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", + "dev": true, + "requires": { + "component-emitter": "^1.2.0", + "cookiejar": "^2.1.0", + "debug": "^3.1.0", + "extend": "^3.0.0", + "form-data": "^2.3.1", + "formidable": "^1.2.0", + "methods": "^1.1.1", + "mime": "^1.4.1", + "qs": "^6.5.1", + "readable-stream": "^2.3.5" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + }, + "swagger-methods": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-1.0.8.tgz", + "integrity": "sha512-G6baCwuHA+C5jf4FNOrosE4XlmGsdjbOjdBK4yuiDDj/ro9uR4Srj3OR84oQMT8F3qKp00tYNv0YN730oTHPZA==", + "dev": true + }, + "swagger-parser": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/swagger-parser/-/swagger-parser-6.0.5.tgz", + "integrity": "sha512-UL47eu4+GRm5y+N7J+W6QQiqAJn2lojyqgMwS0EZgA55dXd5xmpQCsjUmH/Rf0eKDiG1kULc9VS515PxAyTDVw==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "json-schema-ref-parser": "^6.0.3", + "ono": "^4.0.11", + "openapi-schema-validation": "^0.4.2", + "swagger-methods": "^1.0.8", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^3.24.2" + }, + "dependencies": { + "z-schema": { + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.25.1.tgz", + "integrity": "sha512-7tDlwhrBG+oYFdXNOjILSurpfQyuVgkRe3hB2q8TEssamDHB7BbLWYkYO98nTn0FibfdFroFKDjndbgufAgS/Q==", + "dev": true, + "requires": { + "commander": "^2.7.1", + "core-js": "^2.5.7", + "lodash.get": "^4.0.0", + "lodash.isequal": "^4.0.0", + "validator": "^10.0.0" + } + } + } + }, + "swagger-schema-official": { + "version": "2.0.0-bab6bed", + "resolved": "https://registry.npmjs.org/swagger-schema-official/-/swagger-schema-official-2.0.0-bab6bed.tgz", + "integrity": "sha1-cAcEaNbSl3ylI3suUZyn0Gouo/0=", + "dev": true + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "triple-beam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==", + "dev": true + }, + "ts-node": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz", + "integrity": "sha512-dyNS/RqyVTDcmNM4NIBAeDMpsAdaQ+ojdf0GOLqE6nwJOgzEkdRNzJywhDfwnuvB10oa6NLVG1rUJQCpRN7qoQ==", + "dev": true, + "requires": { + "arg": "^4.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.6", + "yn": "^3.0.0" + }, + "dependencies": { + "diff": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz", + "integrity": "sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==", + "dev": true + } + } + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "dev": true + }, + "tunnel": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.5.tgz", + "integrity": "sha512-gj5sdqherx4VZKMcBA4vewER7zdK25Td+z1npBqpbDys4eJrLx+SlYjJvq1bDXs2irkuJM5pf8ktaEQVipkrbA==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.3.tgz", + "integrity": "sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g==", + "dev": true + }, + "uglify-js": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", + "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true, + "optional": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "underscore": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", + "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "universal-user-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-3.0.0.tgz", + "integrity": "sha512-T3siHThqoj5X0benA5H0qcDnrKGXzU8TKoX15x/tQHw1hQBvIEBHjxQ2klizYsqBOO/Q+WuxoQUihadeeqDnoA==", + "dev": true, + "requires": { + "os-name": "^3.0.0" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url-template": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", + "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validator": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-10.11.0.tgz", + "integrity": "sha512-X/p3UZerAIsbBfN/IwahhYaBbY68EN/UQBWHtsbXGT5bfrH/p4NQzUCG1kF/rtKaNpnJ7jAu6NGTdSNtyNIXMw==", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "viz.js": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/viz.js/-/viz.js-2.1.2.tgz", + "integrity": "sha512-UO6CPAuEMJ8oNR0gLLNl+wUiIzQUsyUOp8SyyDKTqVRBtq7kk1VnFmIZW8QufjxGrGEuI+LVR7p/C7uEKy0LQw==", + "dev": true + }, + "vscode-jsonrpc": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.2.tgz", + "integrity": "sha512-T24Jb5V48e4VgYliUXMnZ379ItbrXgOimweKaJshD84z+8q7ZOZjJan0MeDe+Ugb+uqERDVV8SBmemaGMSMugA==", + "dev": true + }, + "vscode-uri": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.0.3.tgz", + "integrity": "sha512-4D3DI3F4uRy09WNtDGD93H9q034OHImxiIcSq664Hq1Y1AScehlP3qqZyTkX/RWxeu0MRMHGkrxYqm2qlDF/aw==", + "dev": true + }, + "w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "windows-release": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", + "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "dev": true, + "requires": { + "execa": "^1.0.0" + } + }, + "winston": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.4.tgz", + "integrity": "sha512-NBo2Pepn4hK4V01UfcWcDlmiVTs7VTB1h7bgnB0rgP146bYhMxX0ypCz3lBOfNxCO4Zuek7yeT+y/zM1OfMw4Q==", + "dev": true, + "requires": { + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "stack-trace": "0.0.x" + } + }, + "winston-transport": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.3.0.tgz", + "integrity": "sha512-B2wPuwUi3vhzn/51Uukcao4dIduEiPOcOt9HJ3QeaXgkJ5Z7UwpBzxS4ZGNHtrxrUvTwemsQiSys0ihOf8Mp1A==", + "dev": true, + "requires": { + "readable-stream": "^2.3.6", + "triple-beam": "^1.2.0" + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write-file-atomic": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.0.tgz", + "integrity": "sha512-EIgkf60l2oWsffja2Sf2AL384dx328c0B+cIYPTQq5q2rOYuDV00/iPFBOUiDKKwKMOhkymH8AidPaRvzfxY+Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "yargs-unparser": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.5.0.tgz", + "integrity": "sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==", + "dev": true, + "requires": { + "flat": "^4.1.0", + "lodash": "^4.17.11", + "yargs": "^12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "yasway": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.3.tgz", + "integrity": "sha512-4cBs1eK6HiEe8AvwRNztRdWQnvkuermxRfFVRekk2y/fpna99AQ5b9ByDY/hwWkW80bGipAXoDMI3Ifqol2+tg==", + "dev": true, + "requires": { + "@ts-common/json": "^0.3.0", + "@ts-common/string-map": "^0.3.0", + "debug": "^4.1.1", + "faker": "^4.1.0", + "istanbul": "^0.4.5", + "js-base64": "^2.5.1", + "js-yaml": "^3.13.1", + "json-refs": "^3.0.13", + "json-schema-faker": "^0.5.0-rc16", + "lodash": "^4.17.11", + "native-promise-only": "^0.8.1", + "path-to-regexp": "^1.7.0", + "swagger-methods": "^1.0.8", + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^4.1.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true + }, + "yuml2svg": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/yuml2svg/-/yuml2svg-4.2.2.tgz", + "integrity": "sha512-u1hdk7QaxNhMXaqawFJxwGQE2nu93H0v4F+2Mzp+X0tEvc1sg1QMFE+5TcniMr7PaRVfIniYYWWVgojWzUuRDg==", + "dev": true, + "requires": { + "color": "^3.0.0", + "jsdom": "^11.6.2", + "viz.js": "^2.0.0" + } + }, + "z-schema": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.1.1.tgz", + "integrity": "sha512-0aKvR9FgrghUXXndYNDmAEazl8jykuHSkqkmPw2ZSuTWuLcEscn1zUTbR3LEfyxHl5EEHpqqOpF+Sd7wZvuDxw==", + "dev": true, + "requires": { + "commander": "^2.7.1", + "core-js": "^3.2.1", + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^11.0.0" + }, + "dependencies": { + "core-js": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz", + "integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==", + "dev": true + }, + "validator": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", + "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", + "dev": true + } + } + } + } +} diff --git a/package.json b/package.json index b4b83ecff038..f8038ca00de7 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "url": "http://github.com/azure/azure-rest-api-specs/issues" }, "scripts": { + "postinstall": "scripts/switch-to-preproduction.sh", "test": "tsc && mocha -t 500000 --reporter min", "spellcheck": "cspell \"specification/**/*.json\"", "tsc": "tsc", diff --git a/preproduction-azure-pipelines.yml b/preproduction-azure-pipelines.yml index 9b8b9f2b3402..6f6ae83a177a 100644 --- a/preproduction-azure-pipelines.yml +++ b/preproduction-azure-pipelines.yml @@ -10,54 +10,9 @@ variables: TRAVIS_PULL_REQUEST_SLUG: $(Build.Repository.Name) TRAVIS_PULL_REQUEST_SHA: $(Build.SourceVersion) PR_ONLY: 'true' + PREPRODUCTION_PIPELINE: 'true' jobs: - -- job: "BranchProtection" - pool: - vmImage: 'Ubuntu 16.04' - condition: and(variables['PRIVATE'], eq(variables['System.PullRequest.TargetBranch'], 'master')) - steps: - - script: '>&2 echo "the branch is protected"' - failOnStderr: true - -- job: "Spellcheck" - condition: "not(variables['PRIVATE'])" - variables: - NODE_OPTIONS: '--max-old-space-size=8192' - pool: - vmImage: 'Ubuntu 16.04' - continueOnError: true - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm run spellcheck' - displayName: 'Run cSpell' - -- job: "Avocado" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm install -D @azure/avocado@0.6.0' - - script: './node_modules/.bin/avocado' - displayName: 'Avocado' - -- job: "BreakingChange" - pool: - vmImage: 'Ubuntu 16.04' - steps: - - script: 'scripts/install-dotnet.sh' - displayName: 'Install .Net' - - task: Npm@1 - displayName: 'npm install' - inputs: - verbose: false - - script: 'npm install @azure/rest-api-specs-scripts@0.5.0' - - script: 'npm run tsc && node scripts/breaking-change.js' - displayName: 'Breaking Changes' +- template: .azure-pipelines/BranchProtectionForPrivateRepo.yml +- template: .azure-pipelines/Spellcheck.yml +- template: .azure-pipelines/BreakingChange.yml diff --git a/scripts/switch-to-preproduction.sh b/scripts/switch-to-preproduction.sh new file mode 100755 index 000000000000..fa7bc3d26ab4 --- /dev/null +++ b/scripts/switch-to-preproduction.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +[ -z "$PREPRODUCTION_PIPELINE" ] || { + echo "Switch to preproduction package.json" + cp -f .azure-pipelines-preproduction/package.json ./package.json + cp -f .azure-pipelines-preproduction/package-lock.json ./package-lock.json + PREPRODUCTION_PIPELINE= npm ci +} From 16e9a4fddae3c996b583e45204308b6690ae377e Mon Sep 17 00:00:00 2001 From: beoberha <51964155+beoberha@users.noreply.github.com> Date: Fri, 30 Aug 2019 16:22:34 -0700 Subject: [PATCH 062/123] Add PrivateEndpointConnection Swagger (#6727) * Add PrivateEndpointConnection Swagger * Adding examples * Fix to pass validation * PrivateLinkResources * Accidentally put PrivateLinkResourceGet.json in wrong place * Add PEC files to readme * add new swagger files to package-composite-v3 * update PrivateLinkResource swagger file * Added incorrect PrivateLinkResource swagger file * fix lintdiff validation errors * remove PrivateLinkResources from this PR * forgot to update example * Update PEC swagger for BO * address Anthony's comments --- .../PrivateEndpointConnections.json | 426 ++++++++++++++++++ .../PrivateEndpointConnectionDelete.json | 14 + .../PrivateEndpointConnectionGet.json | 29 ++ .../PrivateEndpointConnectionList.json | 49 ++ .../PrivateEndpointConnectionUpdate.json | 39 ++ specification/sql/resource-manager/readme.md | 4 + 6 files changed, 561 insertions(+) create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json new file mode 100644 index 000000000000..ed7b85169c25 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "PrivateEndpointConnections_ListByServer", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PrivateEndpointConnectionDoesNotExist - Private Endpoint Connection does not exist\n\n * 400 PrivateEndpointConnectionStatusNotPending - Private Endpoint Connection Status is not Pending\n\n * 400 NullRemotePrivateLinkServiceConnectionState - Remote Private Link Service Connection State is Null\n\n * 400 NullPrivateEndpointConnectionProperties - Private Endpoint Connection Properties is Null\n\n * 400 NullRemotePrivateLinkServiceConnectionStateStatus - Remote Private Link Service Connection State Status is Null\n\n * 400 IncorrectPrivateLinkServiceConnectionStateStatus - Private Link Service Connection State Status must be \"Approved\" or \"Rejected\"\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..364fc9c3f603 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..874f47302b45 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired" : "None" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..b89bc5aa28c5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,49 @@ + +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..1a027c8c0657 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ + +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Sql/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } + } diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 4e03a1478bce..607fc190f39d 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -123,6 +123,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file @@ -217,6 +218,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file @@ -305,6 +307,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json +- Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json # Needed when there is more than one input file @@ -475,6 +478,7 @@ input-file: - ./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json + - ./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json # Needed when there is more than one input file override-info: From 73287ed1696a9649a484cf324c00f4e2b50f8233 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 30 Aug 2019 23:23:38 +0000 Subject: [PATCH 063/123] regenerated all-api-versions --- specification/sql/resource-manager/readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 607fc190f39d..a94bde5900e2 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -813,6 +813,7 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json + - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/capabilities.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databases.json @@ -836,6 +837,7 @@ input-file: - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json + - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json From 63bd179c8639311dcfc8e493e09ef1165af99314 Mon Sep 17 00:00:00 2001 From: Heath Stewart Date: Fri, 30 Aug 2019 23:47:46 -0700 Subject: [PATCH 064/123] [Hub Generated] Review request for Microsoft.KeyVault to add version preview/7.0 (#7083) * Clarify KeyVault time as seconds since Unix epoch * Remove unnecessary swagger-to-sdk for keyvault --- .../stable/2015-06-01/keyvault.json | 12 ++++++------ specification/keyvault/data-plane/readme.md | 3 --- .../preview/2018-02-14-preview/secrets.json | 8 ++++---- .../stable/2016-10-01/secrets.json | 8 ++++---- .../stable/2018-02-14/secrets.json | 8 ++++---- 5 files changed, 18 insertions(+), 21 deletions(-) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/2015-06-01/keyvault.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/2015-06-01/keyvault.json index 1709b33ae4f1..107f08879fce 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/2015-06-01/keyvault.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/2015-06-01/keyvault.json @@ -1813,25 +1813,25 @@ "x-ms-client-name": "NotBefore", "type": "integer", "format": "unixtime", - "description": "Not before date in UTC" + "description": "Not before date in seconds since 1970-01-01T00:00:00Z" }, "exp": { "x-ms-client-name": "Expires", "type": "integer", "format": "unixtime", - "description": "Expiry date in UTC" + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z" }, "created": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Creation time in UTC" + "description": "Creation time in seconds since 1970-01-01T00:00:00Z" }, "updated": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Last updated time in UTC" + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z" } }, "description": "The object attributes managed by the KeyVault service" @@ -2443,13 +2443,13 @@ "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Creation time in UTC" + "description": "Creation time in seconds since 1970-01-01T00:00:00Z" }, "updated": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Last updated time in UTC" + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z" } }, "description": "The attributes of an issuer managed by the KeyVault service" diff --git a/specification/keyvault/data-plane/readme.md b/specification/keyvault/data-plane/readme.md index 7b4fbd27732a..9f91edcd1746 100644 --- a/specification/keyvault/data-plane/readme.md +++ b/specification/keyvault/data-plane/readme.md @@ -69,9 +69,6 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-go - - repo: azure-sdk-for-node - - repo: azure-sdk-for-js - - repo: azure-sdk-for-python ``` diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/secrets.json index 18ca8f1891ce..b5f53bf18696 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/secrets.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/secrets.json @@ -283,25 +283,25 @@ "x-ms-client-name": "NotBefore", "type": "integer", "format": "unixtime", - "description": "Not before date in UTC." + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." }, "exp": { "x-ms-client-name": "Expires", "type": "integer", "format": "unixtime", - "description": "Expiry date in UTC." + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." }, "created": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Creation time in UTC." + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." }, "updated": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Last updated time in UTC." + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." } }, "description": "The object attributes managed by the KeyVault service." diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/secrets.json index ad0c410ee40a..bf8a2bed5080 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/secrets.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/secrets.json @@ -283,25 +283,25 @@ "x-ms-client-name": "NotBefore", "type": "integer", "format": "unixtime", - "description": "Not before date in UTC." + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." }, "exp": { "x-ms-client-name": "Expires", "type": "integer", "format": "unixtime", - "description": "Expiry date in UTC." + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." }, "created": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Creation time in UTC." + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." }, "updated": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Last updated time in UTC." + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." } }, "description": "The object attributes managed by the KeyVault service." diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/secrets.json index 44f959544bc1..d0ff73ae8dee 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/secrets.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/secrets.json @@ -283,25 +283,25 @@ "x-ms-client-name": "NotBefore", "type": "integer", "format": "unixtime", - "description": "Not before date in UTC." + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." }, "exp": { "x-ms-client-name": "Expires", "type": "integer", "format": "unixtime", - "description": "Expiry date in UTC." + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." }, "created": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Creation time in UTC." + "description": "Creation time in seconds since 1970-01-01T00:00:00Z." }, "updated": { "type": "integer", "format": "unixtime", "readOnly": true, - "description": "Last updated time in UTC." + "description": "Last updated time in seconds since 1970-01-01T00:00:00Z." } }, "description": "The object attributes managed by the KeyVault service." From 794f89e27c5edbba56cb61d2881cc9c28651fe4c Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sat, 31 Aug 2019 02:58:47 -0400 Subject: [PATCH 065/123] chore: jsonfmt maintenance (#7085) --- .../2018-06-01-preview/Maintenance.json | 3146 ++++++++--------- .../examples/ApplyUpdates_CreateOrUpdate.json | 10 +- .../ApplyUpdates_CreateOrUpdateParent.json | 14 +- .../examples/ApplyUpdates_Get.json | 12 +- .../examples/ApplyUpdates_GetParent.json | 16 +- ...nfigurationAssignments_CreateOrUpdate.json | 20 +- ...ationAssignments_CreateOrUpdateParent.json | 24 +- .../ConfigurationAssignments_Delete.json | 12 +- ...ConfigurationAssignments_DeleteParent.json | 16 +- .../ConfigurationAssignments_List.json | 12 +- .../ConfigurationAssignments_ListParent.json | 16 +- ...figurations_CreateOrUpdateForResource.json | 46 +- ...nanceConfigurations_DeleteForResource.json | 32 +- ...ntenanceConfigurations_GetForResource.json | 34 +- .../MaintenanceConfigurations_List.json | 13 +- ...nanceConfigurations_UpdateForResource.json | 46 +- .../examples/Operations_List.json | 21 +- .../examples/Updates_List.json | 28 +- .../examples/Updates_ListParent.json | 32 +- 19 files changed, 1776 insertions(+), 1774 deletions(-) diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json index de7f0ec5be77..074e2f7a0d07 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json @@ -1,1632 +1,1632 @@ { - "swagger": "2.0", - "info": { - "version": "2018-06-01-preview", - "title": "MaintenanceManagementClient", - "description": "Azure Maintenance Management Client" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { - "get": { - "tags": [ - "ApplyUpdates" - ], - "summary": "Track Updates to resource with parent", - "description": "Track maintenance updates to resource with parent", - "operationId": "ApplyUpdates_GetParent", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "applyUpdateName", - "in": "path", - "description": "applyUpdate Id", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ApplyUpdate" - } - } - }, - "x-ms-examples": { - "ApplyUpdates_GetParent": { - "$ref": "./examples/ApplyUpdates_GetParent.json" - } - } + "swagger": "2.0", + "info": { + "version": "2018-06-01-preview", + "title": "MaintenanceManagementClient", + "description": "Azure Maintenance Management Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource with parent", + "description": "Track maintenance updates to resource with parent", + "operationId": "ApplyUpdates_GetParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { - "get": { - "tags": [ - "ApplyUpdates" - ], - "summary": "Track Updates to resource", - "description": "Track maintenance updates to resource", - "operationId": "ApplyUpdates_Get", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "applyUpdateName", - "in": "path", - "description": "applyUpdate Id", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ApplyUpdate" - } - } - }, - "x-ms-examples": { - "ApplyUpdates_Get": { - "$ref": "./examples/ApplyUpdates_Get.json" - } - } + "x-ms-examples": { + "ApplyUpdates_GetParent": { + "$ref": "./examples/ApplyUpdates_GetParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource", + "description": "Track maintenance updates to resource", + "operationId": "ApplyUpdates_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { - "put": { - "tags": [ - "ApplyUpdates" - ], - "summary": "Apply Updates to resource with parent", - "description": "Apply maintenance updates to resource with parent", - "operationId": "ApplyUpdates_CreateOrUpdateParent", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ApplyUpdate" - } - } - }, - "x-ms-examples": { - "ApplyUpdates_CreateOrUpdateParent": { - "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" - } - } + "x-ms-examples": { + "ApplyUpdates_Get": { + "$ref": "./examples/ApplyUpdates_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource with parent", + "description": "Apply maintenance updates to resource with parent", + "operationId": "ApplyUpdates_CreateOrUpdateParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { - "put": { - "tags": [ - "ApplyUpdates" - ], - "summary": "Apply Updates to resource", - "description": "Apply maintenance updates to resource", - "operationId": "ApplyUpdates_CreateOrUpdate", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ApplyUpdate" - } - } - }, - "x-ms-examples": { - "ApplyUpdates_CreateOrUpdate": { - "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" - } - } + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdateParent": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource", + "description": "Apply maintenance updates to resource", + "operationId": "ApplyUpdates_CreateOrUpdate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { - "put": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "Create configuration assignment", - "description": "Register configuration for resource.", - "operationId": "ConfigurationAssignments_CreateOrUpdateParent", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignmentName", - "in": "path", - "description": "Configuration assignment name", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignment", - "in": "body", - "description": "The configurationAssignment", - "required": true, - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - } - }, - "x-ms-examples": { - "ConfigurationAssignments_CreateOrUpdateParent": { - "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" - } - } - }, - "delete": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "Unregister configuration for resource", - "description": "Unregister configuration for resource.", - "operationId": "ConfigurationAssignments_DeleteParent", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignmentName", - "in": "path", - "description": "Unique configuration assignment name", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - } - }, - "x-ms-examples": { - "ConfigurationAssignments_DeleteParent": { - "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" - } - } + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdate": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdateParent", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { - "put": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "Create configuration assignment", - "description": "Register configuration for resource.", - "operationId": "ConfigurationAssignments_CreateOrUpdate", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignmentName", - "in": "path", - "description": "Configuration assignment name", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignment", - "in": "body", - "description": "The configurationAssignment", - "required": true, - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - } - }, - "x-ms-examples": { - "ConfigurationAssignments_CreateOrUpdate": { - "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" - } - } - }, - "delete": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "Unregister configuration for resource", - "description": "Unregister configuration for resource.", - "operationId": "ConfigurationAssignments_Delete", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "name": "configurationAssignmentName", - "in": "path", - "description": "Unique configuration assignment name", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ConfigurationAssignment" - } - } - }, - "x-ms-examples": { - "ConfigurationAssignments_Delete": { - "$ref": "./examples/ConfigurationAssignments_Delete.json" - } - } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { - "get": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "List configurationAssignments for resource", - "description": "List configurationAssignments for resource.", - "operationId": "ConfigurationAssignments_ListParent", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListConfigurationAssignmentsResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "ConfigurationAssignments_ListParent": { - "$ref": "./examples/ConfigurationAssignments_ListParent.json" - } - } + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdateParent": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_DeleteParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { - "get": { - "tags": [ - "ConfigurationAssignments" - ], - "summary": "List configurationAssignments for resource", - "description": "List configurationAssignments for resource.", - "operationId": "ConfigurationAssignments_List", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListConfigurationAssignmentsResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "ConfigurationAssignments_List": { - "$ref": "./examples/ConfigurationAssignments_List.json" - } - } + "x-ms-examples": { + "ConfigurationAssignments_DeleteParent": { + "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { - "get": { - "tags": [ - "MaintenanceConfigurations" - ], - "summary": "Get Configuration record", - "operationId": "MaintenanceConfigurations_Get", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource Group Name", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource Identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-examples": { - "MaintenanceConfigurations_GetForResource": { - "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" - } - } - }, - "put": { - "tags": [ - "MaintenanceConfigurations" - ], - "summary": "Create or Update configuration record", - "operationId": "MaintenanceConfigurations_CreateOrUpdate", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource Group Name", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource Identifier", - "required": true, - "type": "string" - }, - { - "name": "configuration", - "in": "body", - "description": "The configuration", - "required": true, - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-examples": { - "MaintenanceConfigurations_CreateOrUpdateForResource": { - "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" - } - } - }, - "delete": { - "tags": [ - "MaintenanceConfigurations" - ], - "summary": "Delete Configuration record", - "operationId": "MaintenanceConfigurations_Delete", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource Group Name", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource Identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-examples": { - "MaintenanceConfigurations_DeleteForResource": { - "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" - } - } - }, - "patch": { - "tags": [ - "MaintenanceConfigurations" - ], - "summary": "Patch configuration record", - "operationId": "MaintenanceConfigurations_Update", - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource Group Name", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource Identifier", - "required": true, - "type": "string" - }, - { - "name": "configuration", - "in": "body", - "description": "The configuration", - "required": true, - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-examples": { - "MaintenanceConfigurations_UpdateForResource": { - "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" - } - } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } + } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { - "get": { - "tags": [ - "MaintenanceConfigurations" - ], - "summary": "Get Configuration records within a subscription", - "operationId": "MaintenanceConfigurations_List", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListMaintenanceConfigurationsResult" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "MaintenanceConfigurations_List": { - "$ref": "./examples/MaintenanceConfigurations_List.json" - } - } + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdate": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" } + } }, - "/providers/Microsoft.Maintenance/operations": { - "get": { - "tags": [ - "Operations" - ], - "summary": "List available operations", - "description": "List the available operations supported by the Microsoft.Maintenance resource provider", - "operationId": "Operations_List", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/OperationsListResult" - } - }, - "default": { - "description": "BadRequest", - "schema": { - "$ref": "#/definitions/MaintenanceError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "Operations_List": { - "$ref": "./examples/Operations_List.json" - } - } + "x-ms-examples": { + "ConfigurationAssignments_Delete": { + "$ref": "./examples/ConfigurationAssignments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" } + } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { - "get": { - "tags": [ - "Updates" - ], - "summary": "Get Updates to resource", - "description": "Get updates to resources.", - "operationId": "Updates_ListParent", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceParentType", - "in": "path", - "description": "Resource parent type", - "required": true, - "type": "string" - }, - { - "name": "resourceParentName", - "in": "path", - "description": "Resource parent identifier", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListUpdatesResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "Updates_ListParent": { - "$ref": "./examples/Updates_ListParent.json" - } - } - } + "x-ms-pageable": { + "nextLinkName": null }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { - "get": { - "tags": [ - "Updates" - ], - "summary": "Get Updates to resource", - "description": "Get updates to resources.", - "operationId": "Updates_List", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "resourceGroupName", - "in": "path", - "description": "Resource group name", - "required": true, - "type": "string" - }, - { - "name": "providerName", - "in": "path", - "description": "Resource provider name", - "required": true, - "type": "string" - }, - { - "name": "resourceType", - "in": "path", - "description": "Resource type", - "required": true, - "type": "string" - }, - { - "name": "resourceName", - "in": "path", - "description": "Resource identifier", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListUpdatesResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "Updates_List": { - "$ref": "./examples/Updates_List.json" - } - } - } + "x-ms-examples": { + "ConfigurationAssignments_ListParent": { + "$ref": "./examples/ConfigurationAssignments_ListParent.json" + } } + } }, - "definitions": { - "ApplyUpdateProperties": { - "description": "Properties for apply update", - "type": "object", - "properties": { - "status": { - "description": "The status", - "enum": [ - "Pending", - "InProgress", - "Completed", - "RetryNow", - "RetryLater" - ], - "type": "string", - "x-ms-enum": { - "name": "UpdateStatus", - "modelAsString": true - } - }, - "resourceId": { - "description": "The resourceId", - "type": "string" - }, - "lastUpdateTime": { - "format": "date-time", - "description": "Last Update time", - "type": "string" - } + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" } + } }, - "Resource": { - "description": "Definition of a Resource", - "type": "object", - "properties": { - "id": { - "description": "Fully qualified identifier of the resource", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource", - "type": "string", - "readOnly": true - } - }, - "x-ms-azure-resource": true + "x-ms-pageable": { + "nextLinkName": null }, - "ApplyUpdate": { - "description": "Apply Update request", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ApplyUpdateProperties", - "description": "Properties of the apply update", - "x-ms-client-flatten": true - } + "x-ms-examples": { + "ConfigurationAssignments_List": { + "$ref": "./examples/ConfigurationAssignments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration record", + "operationId": "MaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "ConfigurationAssignmentProperties": { - "description": "Properties for configuration assignment", - "type": "object", - "properties": { - "maintenanceConfigurationId": { - "description": "The maintenance configuration Id", - "type": "string" - }, - "resourceId": { - "description": "The unique resourceId", - "type": "string" - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } }, - "ConfigurationAssignment": { - "description": "Configuration Assignment", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "location": { - "description": "Location of the resource", - "type": "string" - }, - "properties": { - "$ref": "#/definitions/ConfigurationAssignmentProperties", - "description": "Properties of the configuration assignment", - "x-ms-client-flatten": true - } + "x-ms-examples": { + "MaintenanceConfigurations_GetForResource": { + "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Create or Update configuration record", + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "ListConfigurationAssignmentsResult": { - "description": "Response for ConfigurationAssignments list", - "type": "object", - "properties": { - "value": { - "description": "The list of configuration Assignments", - "type": "array", - "items": { - "$ref": "#/definitions/ConfigurationAssignment" - } - } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "MaintenanceConfigurationProperties": { - "description": "Properties for maintenance configuration", - "type": "object", - "properties": { - "namespace": { - "description": "Gets or sets namespace of the resource", - "type": "string" - }, - "extensionProperties": { - "description": "Gets or sets extensionProperties of the maintenanceConfiguration", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "maintenanceScope": { - "description": "Gets or sets maintenanceScope of the configuration", - "enum": [ - "All", - "Host", - "Resource", - "InResource" - ], - "type": "string", - "x-ms-enum": { - "name": "MaintenanceScope", - "modelAsString": true - } - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } }, - "MaintenanceConfiguration": { - "description": "Maintenance configuration record type", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "location": { - "description": "Gets or sets location of the resource", - "type": "string" - }, - "tags": { - "description": "Gets or sets tags of the resource", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "properties": { - "$ref": "#/definitions/MaintenanceConfigurationProperties", - "description": "Gets or sets properties of the resource", - "x-ms-client-flatten": true - } + "x-ms-examples": { + "MaintenanceConfigurations_CreateOrUpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Delete Configuration record", + "operationId": "MaintenanceConfigurations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "MaintenanceError": { - "description": "An error response received from the Azure Maintenance service.", - "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/ErrorDetails", - "description": "Details of the error" - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } }, - "ErrorDetails": { - "description": "An error response details received from the Azure Maintenance service.", - "type": "object", - "properties": { - "code": { - "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", - "type": "string" - }, - "message": { - "description": "Human-readable representation of the error.", - "type": "string" - } + "x-ms-examples": { + "MaintenanceConfigurations_DeleteForResource": { + "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" + } + } + }, + "patch": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Patch configuration record", + "operationId": "MaintenanceConfigurations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "ListMaintenanceConfigurationsResult": { - "description": "Response for MaintenanceConfigurations list", - "type": "object", - "properties": { - "value": { - "description": "The list of maintenance Configurations", - "type": "array", - "items": { - "$ref": "#/definitions/MaintenanceConfiguration" - } - } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" } - }, - "OperationsListResult": { - "description": "Result of the List Operations operation", - "type": "object", - "properties": { - "value": { - "description": "A collection of operations", - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - } - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } }, - "Operation": { - "description": "Represents an operation returned by the GetOperations request", - "type": "object", - "properties": { - "name": { - "description": "Name of the operation", - "type": "string" - }, - "display": { - "$ref": "#/definitions/OperationInfo", - "description": "Display name of the operation" - }, - "origin": { - "description": "Origin of the operation", - "type": "string" - }, - "properties": { - "description": "Properties of the operation", - "type": "object", - "x-ms-client-flatten": true - } + "x-ms-examples": { + "MaintenanceConfigurations_UpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "MaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" } - }, - "OperationInfo": { - "description": "Information about an operation", - "type": "object", - "properties": { - "provider": { - "description": "Name of the provider", - "type": "string" - }, - "resource": { - "description": "Name of the resource type", - "type": "string" - }, - "operation": { - "description": "Name of the operation", - "type": "string" - }, - "description": { - "description": "Description of the operation", - "type": "string" - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } }, - "ListUpdatesResult": { - "description": "Response for Updates list", - "type": "object", - "properties": { - "value": { - "description": "The pending updates", - "type": "array", - "items": { - "$ref": "#/definitions/Update" - } - } - } + "x-ms-pageable": { + "nextLinkName": null }, - "Update": { - "description": "Maintenance update on a resource", - "type": "object", - "properties": { - "maintenanceScope": { - "description": "The impact area", - "enum": [ - "All", - "Host", - "Resource", - "InResource" - ], - "type": "string", - "x-ms-enum": { - "name": "MaintenanceScope", - "modelAsString": true - } - }, - "impactType": { - "description": "The impact type", - "enum": [ - "None", - "Freeze", - "Restart", - "Redeploy" - ], - "type": "string", - "x-ms-enum": { - "name": "ImpactType", - "modelAsString": true - } - }, - "status": { - "description": "The status", - "enum": [ - "Pending", - "InProgress", - "Completed", - "RetryNow", - "RetryLater" - ], - "type": "string", - "x-ms-enum": { - "name": "UpdateStatus", - "modelAsString": true - } - }, - "impactDurationInSec": { - "format": "int32", - "description": "Duration of impact in seconds", - "type": "integer" - }, - "notBefore": { - "format": "date-time", - "description": "Time when Azure will start force updates if not self-updated by customer before this time", - "type": "string" - }, - "properties": { - "$ref": "#/definitions/UpdateProperties", - "description": "Properties of the apply update", - "x-ms-client-flatten": true - } + "x-ms-examples": { + "MaintenanceConfigurations_List": { + "$ref": "./examples/MaintenanceConfigurations_List.json" + } + } + } + }, + "/providers/Microsoft.Maintenance/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations", + "description": "List the available operations supported by the Microsoft.Maintenance resource provider", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" } - }, - "UpdateProperties": { - "description": "Properties for update", - "type": "object", - "properties": { - "resourceId": { - "description": "The resourceId", - "type": "string" - } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } } + } }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", "in": "path", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "description": "Resource group name", "required": true, "type": "string" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "Version of the API to be used with the client request.", + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", "required": true, "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_ListParent": { + "$ref": "./examples/Updates_ListParent.json" + } } + } }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "description": "Azure Active Directory OAuth2 Flow", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_List": { + "$ref": "./examples/Updates_List.json" + } + } + } + } + }, + "definitions": { + "ApplyUpdateProperties": { + "description": "Properties for apply update", + "type": "object", + "properties": { + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resourceId", + "type": "string" + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last Update time", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ApplyUpdate": { + "description": "Apply Update request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplyUpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "ConfigurationAssignmentProperties": { + "description": "Properties for configuration assignment", + "type": "object", + "properties": { + "maintenanceConfigurationId": { + "description": "The maintenance configuration Id", + "type": "string" + }, + "resourceId": { + "description": "The unique resourceId", + "type": "string" + } + } + }, + "ConfigurationAssignment": { + "description": "Configuration Assignment", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ConfigurationAssignmentProperties", + "description": "Properties of the configuration assignment", + "x-ms-client-flatten": true + } + } + }, + "ListConfigurationAssignmentsResult": { + "description": "Response for ConfigurationAssignments list", + "type": "object", + "properties": { + "value": { + "description": "The list of configuration Assignments", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + } + }, + "MaintenanceConfigurationProperties": { + "description": "Properties for maintenance configuration", + "type": "object", + "properties": { + "namespace": { + "description": "Gets or sets namespace of the resource", + "type": "string" + }, + "extensionProperties": { + "description": "Gets or sets extensionProperties of the maintenanceConfiguration", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "maintenanceScope": { + "description": "Gets or sets maintenanceScope of the configuration", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + } + } + }, + "MaintenanceConfiguration": { + "description": "Maintenance configuration record type", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" } + ], + "properties": { + "location": { + "description": "Gets or sets location of the resource", + "type": "string" + }, + "tags": { + "description": "Gets or sets tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "description": "Gets or sets properties of the resource", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceError": { + "description": "An error response received from the Azure Maintenance service.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails", + "description": "Details of the error" + } + } + }, + "ErrorDetails": { + "description": "An error response details received from the Azure Maintenance service.", + "type": "object", + "properties": { + "code": { + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + } + } + }, + "ListMaintenanceConfigurationsResult": { + "description": "Response for MaintenanceConfigurations list", + "type": "object", + "properties": { + "value": { + "description": "The list of maintenance Configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + }, + "ListUpdatesResult": { + "description": "Response for Updates list", + "type": "object", + "properties": { + "value": { + "description": "The pending updates", + "type": "array", + "items": { + "$ref": "#/definitions/Update" + } + } + } + }, + "Update": { + "description": "Maintenance update on a resource", + "type": "object", + "properties": { + "maintenanceScope": { + "description": "The impact area", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + }, + "impactType": { + "description": "The impact type", + "enum": [ + "None", + "Freeze", + "Restart", + "Redeploy" + ], + "type": "string", + "x-ms-enum": { + "name": "ImpactType", + "modelAsString": true + } + }, + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "impactDurationInSec": { + "format": "int32", + "description": "Duration of impact in seconds", + "type": "integer" + }, + "notBefore": { + "format": "date-time", + "description": "Time when Azure will start force updates if not self-updated by customer before this time", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/UpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "UpdateProperties": { + "description": "Properties for update", + "type": "object", + "properties": { + "resourceId": { + "description": "The resourceId", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Version of the API to be used with the client request.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } } -} \ No newline at end of file + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json index b4264e12af39..b01f3b7745f8 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdate.json @@ -2,9 +2,9 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", "api-version": "2018-06-01-preview" }, "responses": { @@ -16,8 +16,8 @@ "properties": { "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", "status": "Pending" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json index 5ca31ab48bae..9e6017e81d9b 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_CreateOrUpdateParent.json @@ -2,11 +2,11 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "smdvm1", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", "api-version": "2018-06-01-preview" }, "responses": { @@ -18,8 +18,8 @@ "properties": { "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", "status": "Pending" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json index 127fbb817d04..b38e704cb692 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_Get.json @@ -2,10 +2,10 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", - "applyUpdateName" : "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", "api-version": "2018-06-01-preview" }, "responses": { @@ -17,8 +17,8 @@ "properties": { "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", "status": "Completed" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json index 21db01cf51d0..dafb11767427 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ApplyUpdates_GetParent.json @@ -2,12 +2,12 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "smdvm1", - "applyUpdateName" : "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", "api-version": "2018-06-01-preview" }, "responses": { @@ -19,8 +19,8 @@ "properties": { "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", "status": "Completed" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json index b84a6ae84081..22f0dd2f177c 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdate.json @@ -2,16 +2,16 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", - "configurationAssignmentName" : "workervmConfiguration", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", "api-version": "2018-06-01-preview", "configurationAssignment": { - "properties": { - "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" - } - } + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" + } + } }, "responses": { "200": { @@ -22,8 +22,8 @@ "properties": { "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json index 3b8be738006e..a7b989afc6cf 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_CreateOrUpdateParent.json @@ -2,18 +2,18 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "smdvm1", - "configurationAssignmentName" : "workervmPolicy", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmPolicy", "api-version": "2018-06-01-preview", "configurationAssignment": { - "properties": { - "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" - } - } + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" + } + } }, "responses": { "200": { @@ -24,8 +24,8 @@ "properties": { "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" - } + } } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json index 8b95b257ae05..984c2e4b7a2b 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_Delete.json @@ -2,10 +2,10 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", - "configurationAssignmentName" : "workervmConfiguration", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", "api-version": "2018-06-01-preview" }, "responses": { @@ -14,7 +14,7 @@ "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", "name": "workervmConfiguration", "type": "Microsoft.Maintenance/configurationAssignments" - } + } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json index fc7ac3fe53e3..f203debbdfd4 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_DeleteParent.json @@ -2,12 +2,12 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "smdvm1", - "configurationAssignmentName" : "workervmConfiguration", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmConfiguration", "api-version": "2018-06-01-preview" }, "responses": { @@ -16,7 +16,7 @@ "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", "name": "workervmConfiguration", "type": "Microsoft.Maintenance/configurationAssignments" - } + } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json index 75b0ba1dc730..37a91f196fb8 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_List.json @@ -2,15 +2,15 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", "api-version": "2018-06-01-preview" }, "responses": { "200": { "body": { - "value":[ + "value": [ { "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", "name": "workervmConfiguration", @@ -18,10 +18,10 @@ "properties": { "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" - } + } } ] } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json index 759ead17c1fc..01e6a167ef60 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/ConfigurationAssignments_ListParent.json @@ -2,17 +2,17 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "smdvm1", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", "api-version": "2018-06-01-preview" }, "responses": { "200": { "body": { - "value":[ + "value": [ { "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", "name": "workervmPolicy", @@ -20,10 +20,10 @@ "properties": { "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" - } + } } ] } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json index 618936d8c95b..74594ae41754 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -1,27 +1,27 @@ { - "parameters": { - "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", - "resourceGroupName": "examplerg", - "resourceName" : "configuration1", - "api-version": "2018-06-01-preview", - "configuration": { - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", - "name": "configuration1", - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance", - "maintenanceScope": "All" - } - } + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2018-06-01-preview", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" } + } } + } } diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json index e664e47c271c..ec757ada9783 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_DeleteForResource.json @@ -1,20 +1,20 @@ { - "parameters": { - "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", - "resourceGroupName": "examplerg", - "resourceName" : "example1", - "api-version": "2018-06-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", - "name": "configuration1", - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance" - } - } + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "example1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" } + } } + } } diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json index 5c46c6ccb4ba..e6188342e08d 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_GetForResource.json @@ -1,21 +1,21 @@ { - "parameters": { - "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", - "resourceGroupName": "examplerg", - "resourceName" : "configuration1", - "api-version": "2018-06-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", - "name": "configuration1", - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance", - "maintenanceScope": "All" - } - } + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" } + } } + } } diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json index 7c3dee16b6e5..644484c437f9 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_List.json @@ -1,20 +1,19 @@ { - "parameters": { - "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", - "api-version": "2018-06-01-preview" - }, + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2018-06-01-preview" + }, "responses": { "200": { "body": { - "value": - [ + "value": [ { "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", "name": "configuration1", "location": "westus2", "properties": { "namespace": "Microsoft.Maintenance", - "maintenanceScope": "All" + "maintenanceScope": "All" } } ] diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json index 618936d8c95b..74594ae41754 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json @@ -1,27 +1,27 @@ { - "parameters": { - "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", - "resourceGroupName": "examplerg", - "resourceName" : "configuration1", - "api-version": "2018-06-01-preview", - "configuration": { - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", - "name": "configuration1", - "location": "westus2", - "properties": { - "namespace": "Microsoft.Maintenance", - "maintenanceScope": "All" - } - } + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2018-06-01-preview", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" } + } } + } } diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json index af8acc7ab70a..53a167c7075c 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Operations_List.json @@ -1,13 +1,12 @@ { - "parameters": { - "api-version": "2018-06-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - ] - } - } + "parameters": { + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [] + } } -} \ No newline at end of file + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json index c99bd147e1c2..015897bb7ede 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_List.json @@ -2,25 +2,27 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceType" : "virtualMachineScaleSets", - "resourceName" : "smdtest1", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", "api-version": "2018-06-01-preview" }, "responses": { "200": { "body": { - "value": [{ - "maintenanceScope": "Resource", - "status" : "Pending", - "impactType": "Reboot", - "impactDurationInSec": 1440, - "notBefore": "2018-10-09T06:17:44.235Z", - "properties":{ - "resourceId":"/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } } - }] + ] } } } -} \ No newline at end of file +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json index 166c838215d3..9832ccdcdb04 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2018-06-01-preview/examples/Updates_ListParent.json @@ -2,27 +2,29 @@ "parameters": { "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", "resourceGroupName": "examplerg", - "providerName" : "Microsoft.Compute", - "resourceParentType" : "virtualMachineScaleSets", - "resourceParentName" : "smdtest1", - "resourceType" : "virtualMachines", - "resourceName" : "1", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "1", "api-version": "2018-06-01-preview" }, "responses": { "200": { "body": { - "value": [{ - "maintenanceScope": "Resource", - "status" : "Pending", - "impactType": "Reboot", - "impactDurationInSec": 1440, - "notBefore": "2018-10-09T06:17:44.235Z", - "properties":{ - "resourceId":"/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + } } - }] + ] } } } -} \ No newline at end of file +} From 64f5a1d5bb084ba752612ae8f26fbdd40ca2e508 Mon Sep 17 00:00:00 2001 From: Ivan Liu <54023690+liubing-microsoft@users.noreply.github.com> Date: Sun, 1 Sep 2019 12:27:14 +0800 Subject: [PATCH 066/123] support Express Custom Setup (#6969) * support Express Custom Setup * address the comments * add type as the required properties * address comments --- custom-words.txt | 1 + .../entityTypes/IntegrationRuntime.json | 137 ++++++++++++++++++ 2 files changed, 138 insertions(+) diff --git a/custom-words.txt b/custom-words.txt index bc7f8736884e..c88f20cd0e5b 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -259,6 +259,7 @@ Cloudamize cloudapp cloudsimple clustermonitoring +Cmdkey cmdlet CMMI CNAME diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json index 76d990e2fb31..2a715c43cba2 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json @@ -165,6 +165,13 @@ "name": "IntegrationRuntimeEdition", "modelAsString": true } + }, + "expressCustomSetupProperties": { + "description": "Custom setup without script properties for a SSIS integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomSetupBase" + } } }, "additionalProperties": { @@ -240,6 +247,136 @@ } } }, + "CustomSetupBase": { + "description": "The base definition of the custom setup.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of custom setup.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "CmdkeySetup": { + "description": "The custom setup of running cmdkey commands.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Cmdkey command custom setup type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CmdkeySetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CmdkeySetupTypeProperties": { + "description": "Cmdkey command custom setup type properties.", + "type": "object", + "properties": { + "targetName": { + "description": "The server name of data source access.", + "type": "object" + }, + "userName": { + "description": "The user name of data source access.", + "type": "object" + }, + "password": { + "description": "The password of data source access.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "targetName", + "userName", + "password" + ] + }, + "EnvironmentVariableSetup": { + "description": "The custom setup of setting environment variable.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Add environment variable type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentVariableSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EnvironmentVariableSetupTypeProperties": { + "description": "Environment variable custom setup type properties.", + "type": "object", + "properties": { + "variableName": { + "description": "The name of the environment variable.", + "type": "string" + }, + "variableValue": { + "description": "The value of the environment variable.", + "type": "string" + } + }, + "required": [ + "variableName", + "variableValue" + ] + }, + "ComponentSetup": { + "description": "The custom setup of installing 3rd party components.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Install 3rd party component type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicensedComponentSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LicensedComponentSetupTypeProperties": { + "description": "Installation of licensed component setup type properties.", + "type": "object", + "properties": { + "componentName": { + "description": "The name of the 3rd party component.", + "type": "string" + }, + "licenseKey": { + "description": "The license key to activate the component.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "componentName", + "licenseKey" + ] + }, "EntityReference": { "description": "The entity reference.", "type": "object", From 00e0d167f4332e49840363aa416c1cf90cd70575 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 1 Sep 2019 21:52:17 -0400 Subject: [PATCH 067/123] chore: jsonfmt sql (#7095) --- .../PrivateEndpointConnections.json | 2 +- .../PrivateEndpointConnectionDelete.json | 26 +++++++++---------- .../PrivateEndpointConnectionGet.json | 14 +++++----- .../PrivateEndpointConnectionList.json | 9 +++---- .../PrivateEndpointConnectionUpdate.json | 5 ++-- 5 files changed, 27 insertions(+), 29 deletions(-) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json index ed7b85169c25..e3144a2a0990 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -423,4 +423,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json index 364fc9c3f603..d0c926f10451 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionDelete.json @@ -1,14 +1,14 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default", - "serverName": "test-svr", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2018-06-01-preview" - }, - "responses": { - "200": {}, - "202": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json index 874f47302b45..8454983d38ac 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionGet.json @@ -1,10 +1,10 @@ { "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default", - "serverName": "test-svr", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2018-06-01-preview" + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01-preview" }, "responses": { "200": { @@ -20,10 +20,10 @@ "privateLinkServiceConnectionState": { "status": "Approved", "description": "Auto-approved", - "actionsRequired" : "None" + "actionsRequired": "None" } } } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json index b89bc5aa28c5..128ed85894bb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionList.json @@ -1,10 +1,9 @@ - { "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default", - "serverName": "test-svr", - "api-version": "2018-06-01-preview" + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01-preview" }, "responses": { "200": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json index 1a027c8c0657..ccf9439e60a3 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/PrivateEndpointConnectionUpdate.json @@ -1,4 +1,3 @@ - { "parameters": { "subscriptionId": "00000000-1111-2222-3333-444444444444", @@ -10,7 +9,7 @@ "properties": { "privateLinkServiceConnectionState": { "status": "Approved", - "description": "Approved by johndoe@contoso.com" + "description": "Approved by johndoe@contoso.com" } } } @@ -35,5 +34,5 @@ } }, "202": {} - } } +} From c94aebe9a9b176a9881f06d7972683d8a866b986 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 1 Sep 2019 21:52:45 -0400 Subject: [PATCH 068/123] chore: jsonfmt storagecache (#7086) --- .../examples/Caches_Create.json | 6 +- .../examples/Caches_Get.json | 2 +- .../examples/Caches_List.json | 8 +- .../examples/Caches_ListByResourceGroup.json | 4 +- .../examples/Caches_Update.json | 2 +- .../examples/Operations_List.json | 4 +- .../examples/Skus_List.json | 2 +- .../examples/StorageTargets_Create.json | 17 +- .../examples/StorageTargets_Get.json | 3 +- .../examples/StorageTargets_ListByCache.json | 25 ++- .../examples/StorageTargets_Update.json | 12 +- .../examples/UsageModels_List.json | 2 +- .../2019-08-01-preview/storagecache.json | 168 +++++++++--------- 13 files changed, 124 insertions(+), 131 deletions(-) diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json index 5cbf6ffdd7ed..611e7e856652 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Create.json @@ -12,7 +12,7 @@ "properties": { "cacheSizeGB": 3072, "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1" - }, + }, "sku": { "name": "Standard_2G" } @@ -37,7 +37,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { @@ -71,7 +71,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json index a1b6d4057889..0c2a4dd42ec7 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Get.json @@ -24,7 +24,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json index 5b4a814631d9..95bb8d67677f 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_List.json @@ -6,7 +6,7 @@ "responses": { "200": { "body": { - "value": [ + "value": [ { "tags": { "Dept": "Initech" @@ -24,7 +24,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { @@ -38,7 +38,7 @@ "sku": { "name": "Standard_2G" } - }, + }, { "tags": { "Dept": "Intertrode" @@ -56,7 +56,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Configuring", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", "upgradeStatus": { diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json index 30e4ddad4c3f..3f89228bbfa5 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_ListByResourceGroup.json @@ -25,7 +25,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { @@ -57,7 +57,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub2", "upgradeStatus": { diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json index 26b0e37ea22e..29c79ed84804 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Caches_Update.json @@ -37,7 +37,7 @@ "mountAddresses": [ "192.168.1.1", "192.168.1.2" - ], + ], "provisioningState": "Booting", "subnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.Network/virtualNetworks/scvnet/subnets/sub1", "upgradeStatus": { diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json index da20fac79e33..331e4b63810b 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Operations_List.json @@ -15,7 +15,7 @@ { "name": "Microsoft.StorageCache/caches/write", "display": { - "operation": "Create or Update Cache", + "operation": "Create or Update Cache", "provider": "Azure Storage Cache", "resource": "Caches" } @@ -31,5 +31,5 @@ ] } } - } + } } diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json index 90c76524f305..641b969feb2a 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/Skus_List.json @@ -83,4 +83,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json index 53cc02c7ad13..792e881470e2 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Create.json @@ -17,14 +17,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], "targetType": "nfs3", - "nfs3": { + "nfs3": { "target": "10.0.44.44", "usageModel": "READ_HEAVY_INFREQ" - } + } } } }, @@ -45,14 +44,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], - "targetType": "nfs3", + "targetType": "nfs3", "nfs3": { "target": "10.0.44.44", "usageModel": "READ_HEAVY_INFREQ" - } + } } } }, @@ -72,16 +70,15 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], - "targetType": "nfs3", + "targetType": "nfs3", "nfs3": { "target": "10.0.44.44", "usageModel": "READ_HEAVY_INFREQ" - } + } } } - } + } } } diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json index 11e7f4c3f77a..6cf402e7cd21 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Get.json @@ -23,14 +23,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], "targetType": "nfs3", "nfs3": { "target": "10.0.44.44", "usageModel": "READ_HEAVY_FREQ" - } + } } } } diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json index 67c6004a37ff..9b55bdb8f8a8 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_ListByCache.json @@ -1,4 +1,4 @@ - { +{ "parameters": { "resourceGroupName": "scgroup", "subscriptionId": "00000000-0000-0000-0000-000000000000", @@ -8,7 +8,7 @@ "responses": { "200": { "body": { - "value": [ + "value": [ { "name": "st1", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scgroup/providers/Microsoft.StorageCache/caches/sc1/storagetargets/st1", @@ -24,14 +24,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], "targetType": "nfs3", "nfs3": { - "target": "10.0.44.44", - "usageModel": "READ_HEAVY_FREQ" - } + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } } }, { @@ -47,8 +46,8 @@ ], "targetType": "clfs", "clfs": { - "target": "https://atj5c2fc9b8c00.blob.core.windows.net/atj5c2fc9b8c01" - } + "target": "https://atj5c2fc9b8c00.blob.core.windows.net/atj5c2fc9b8c01" + } } }, { @@ -65,11 +64,11 @@ ], "targetType": "unknown", "unknown": { - "unknownMap": { - "foo": "bar", - "foo2": "test" - } - } + "unknownMap": { + "foo": "bar", + "foo2": "test" + } + } } } ] diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json index 055de646fa3f..a3daf272eb1d 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/StorageTargets_Update.json @@ -17,14 +17,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], "targetType": "nfs3", - "nfs3": { + "nfs3": { "target": "10.0.44.44", "usageModel": "READ_HEAVY_FREQ" - } + } } } }, @@ -45,14 +44,13 @@ "namespacePath": "/path2/on/cache", "targetPath": "/path2/on/exp2", "nfsExport": "exp2" - } ], "targetType": "nfs3", "nfs3": { - "target": "10.0.44.44", - "usageModel": "READ_HEAVY_FREQ" - } + "target": "10.0.44.44", + "usageModel": "READ_HEAVY_FREQ" + } } } } diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json index 87a24bde38cf..2114bea555a3 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/examples/UsageModels_List.json @@ -32,4 +32,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json index f214b3cd01a3..22fa8da92cd9 100644 --- a/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json +++ b/specification/storagecache/resource-manager/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json @@ -33,7 +33,7 @@ "user_impersonation": "impersonate your user account" } } - }, + }, "paths": { "/providers/Microsoft.StorageCache/operations": { "get": { @@ -41,7 +41,7 @@ "application/json" ], "parameters": [ - { + { "$ref": "#/parameters/ApiVersionParameter" } ], @@ -67,7 +67,7 @@ "StorageTargets_List": { "$ref": "./examples/Operations_List.json" } - }, + }, "operationId": "Operations_List", "x-ms-pageable": { "nextLinkName": "nextLink" @@ -80,12 +80,12 @@ "application/json" ], "parameters": [ - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - } + } ], "responses": { "200": { @@ -122,12 +122,12 @@ "application/json" ], "parameters": [ - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - } + } ], "responses": { "200": { @@ -150,7 +150,7 @@ "UsageModels_List": { "$ref": "./examples/UsageModels_List.json" } - }, + }, "tags": [ "UsageModels" ], @@ -164,12 +164,12 @@ "application/json" ], "parameters": [ - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - } + } ], "responses": { "200": { @@ -199,7 +199,7 @@ "description": "Returns all Caches the user has access to under a subscription.", "operationId": "Caches_List" } - }, + }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches": { "get": { "produces": [ @@ -261,7 +261,7 @@ "name": "resourceGroupName", "required": true, "type": "string" - }, + }, { "description": "Name of cache.", "in": "path", @@ -270,12 +270,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - } + } ], "responses": { "200": { @@ -329,12 +329,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - } + } ], "responses": { "200": { @@ -376,12 +376,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -446,12 +446,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -487,13 +487,13 @@ "Caches_Update": { "$ref": "./examples/Caches_Update.json" } - }, + }, "tags": [ "Caches" ], "description": "Update a Cache instance.", "operationId": "Caches_Update" - } + } }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/flush": { "post": { @@ -508,12 +508,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -565,12 +565,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -601,7 +601,7 @@ "$ref": "./examples/Caches_Start.json" } }, - "x-ms-long-running-operation": true, + "x-ms-long-running-operation": true, "tags": [ "Caches" ], @@ -622,12 +622,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -658,7 +658,7 @@ "$ref": "./examples/Caches_Stop.json" } }, - "x-ms-long-running-operation": true, + "x-ms-long-running-operation": true, "tags": [ "Caches" ], @@ -679,12 +679,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -712,10 +712,10 @@ "StorageTargets_List": { "$ref": "./examples/StorageTargets_ListByCache.json" } - }, + }, "x-ms-pageable": { "nextLinkName": "nextLink" - }, + }, "tags": [ "StorageTargets" ], @@ -736,12 +736,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -784,7 +784,7 @@ "$ref": "./examples/StorageTargets_Delete.json" } }, - "x-ms-long-running-operation": true, + "x-ms-long-running-operation": true, "tags": [ "StorageTargets" ], @@ -803,12 +803,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -844,7 +844,7 @@ "StorageTargets_Get": { "$ref": "./examples/StorageTargets_Get.json" } - }, + }, "tags": [ "StorageTargets" ], @@ -866,12 +866,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -944,12 +944,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -993,13 +993,13 @@ "StorageTargets_Update": { "$ref": "./examples/StorageTargets_Update.json" } - }, + }, "tags": [ "StorageTargets" ], "description": "Update a storage target. This operation is allowed at any time, but if the cache is down or unhealthy, the actual creation/modification of the storage target may be delayed until the cache is healthy again.", "operationId": "StorageTargets_Update" - } + } }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.StorageCache/caches/{cacheName}/upgrade": { "post": { @@ -1014,12 +1014,12 @@ "required": true, "type": "string" }, - { + { "$ref": "#/parameters/ApiVersionParameter" }, - { + { "$ref": "#/parameters/SubscriptionIdParameter" - }, + }, { "description": "Name of cache.", "in": "path", @@ -1049,8 +1049,8 @@ "Caches_UpgradeFirmware": { "$ref": "./examples/Caches_UpgradeFirmware.json" } - }, - "x-ms-long-running-operation": true, + }, + "x-ms-long-running-operation": true, "tags": [ "Caches" ], @@ -1188,7 +1188,7 @@ }, "provisioningState": { "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", - "enum":[ + "enum": [ "Succeeded", "Failed", "Cancelled", @@ -1224,7 +1224,7 @@ "type": "object" } }, - "x-ms-azure-resource": true, + "x-ms-azure-resource": true, "type": "object" }, "CachesListResult": { @@ -1278,7 +1278,7 @@ "currentFirmwareVersion": { "description": "Version string of the firmware currently installed on this cache.", "type": "string", - "readOnly": true + "readOnly": true }, "firmwareUpdateStatus": { "description": "True if there is a firmware update ready to install on this cache. The firmware will automatically be installed after firmwareUpdateDeadline if not triggered earlier via the upgrade operation.", @@ -1290,7 +1290,7 @@ "name": "FirmwareStatusType", "modelAsString": true }, - "readOnly": true, + "readOnly": true, "type": "string" }, "firmwareUpdateDeadline": { @@ -1308,7 +1308,7 @@ "pendingFirmwareVersion": { "description": "When firmwareUpdateAvailable is true, this field holds the version string for the update.", "type": "string", - "readOnly": true + "readOnly": true } }, "type": "object" @@ -1344,7 +1344,7 @@ "$ref": "#/definitions/URLString" } }, - "x-ms-discriminator-value": "clfs", + "x-ms-discriminator-value": "clfs", "type": "object" }, "UnknownTarget": { @@ -1355,9 +1355,9 @@ "$ref": "#/definitions/UnknownProperties" } }, - "x-ms-discriminator-value": "unknown", + "x-ms-discriminator-value": "unknown", "type": "object" - }, + }, "ResourceName": { "description": "Schema for the name of resources served by this provider. Note that objects will contain an odata @id annotation as appropriate, this will contain the complete URL of the object. These names are case-preserving, but not case sensitive.", "pattern": "^[-0-9a-zA-Z_]{1,31}$", @@ -1491,7 +1491,7 @@ "discriminator": "targetType", "properties": { "name": { - "description":"A fully qualified URL.", + "description": "A fully qualified URL.", "readOnly": true, "$ref": "#/definitions/ResourceName" }, @@ -1504,7 +1504,7 @@ "description": "Type for the storage target; Microsoft.StorageCache/Cache/StorageTarget", "readOnly": true, "type": "string" - }, + }, "properties": { "x-ms-client-flatten": true, "description": "Properties of the storage target.", @@ -1532,7 +1532,7 @@ }, "provisioningState": { "description": "ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property", - "enum":[ + "enum": [ "Succeeded", "Failed", "Cancelled", @@ -1551,13 +1551,13 @@ "$ref": "#/definitions/Nfs3Target" }, "clfs": { - "description": "Properties when clfs target.", + "description": "Properties when clfs target.", "$ref": "#/definitions/ClfsTarget" }, "unknown": { "description": "Properties when unknown target.", "$ref": "#/definitions/UnknownTarget" - } + } } } }, @@ -1568,12 +1568,12 @@ "type": "object", "properties": { "namespacePath": { - "description": "Namespace path on a cache for a storage target.", - "type": "string" + "description": "Namespace path on a cache for a storage target.", + "type": "string" }, "targetPath": { - "description": "Path in storage target to which namespacePath points.", - "type": "string" + "description": "Path in storage target to which namespacePath points.", + "type": "string" }, "nfsExport": { "description": "NFS export where targetPath exists.", @@ -1659,5 +1659,5 @@ "type": "string", "description": "Client Api Version." } - } + } } From f314b161a03f6857ab61a32d288da101fe705db9 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 1 Sep 2019 21:53:10 -0400 Subject: [PATCH 069/123] chore: jsonftm datafactory (#7084) --- .../stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json index 8a2579b02242..3cdbcb46ef76 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/PipelineRuns_QueryByFactory.json @@ -48,7 +48,7 @@ "annotations": [], "runDimension": { "JobId": "79c1cc52-265f-41a5-9553-be65e736fbd3" - } + } }, { "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", From 8533dc5a70d78e0de78416c13e31fc7947028f45 Mon Sep 17 00:00:00 2001 From: LeiZhao Date: Sun, 1 Sep 2019 19:43:33 -0700 Subject: [PATCH 070/123] [READY TO MERGE] Adding workspace level quota management APIs in version 2019-06-01 (#6366) --- .../ListWorkspaceQuotasByVMFamily.json | 415 ++++++++++++++++++ .../2019-06-01/examples/updateQuota.json | 45 ++ .../2019-06-01/machineLearningServices.json | 277 ++++++++++++ 3 files changed, 737 insertions(+) create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListWorkspaceQuotasByVMFamily.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateQuota.json diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..2f32eddbc799 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2019-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateQuota.json new file mode 100644 index 000000000000..a1cf4459b7bf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2019-06-01", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json index 203fc21a013c..7240e108d705 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json @@ -456,6 +456,100 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { "get": { "tags": [ @@ -1293,6 +1387,189 @@ } } }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, "Identity": { "properties": { "principalId": { From 255757f41275e8ec474361690ea8886cae8a503b Mon Sep 17 00:00:00 2001 From: Esteban Rey Date: Sun, 1 Sep 2019 19:49:24 -0700 Subject: [PATCH 071/123] Estebanreyl/data plane 08 2019 (#7060) --- .../preview/2019-08-15/containerregistry.json | 2676 +++++++++++++++++ .../2019-08-15/examples/CancelBlobUpload.json | 9 + .../2019-08-15/examples/CheckBlob.json | 19 + .../2019-08-15/examples/CheckBlobChunk.json | 16 + .../2019-08-15/examples/CreateManifest.json | 18 + .../examples/DeleteAcrRepository.json | 18 + .../2019-08-15/examples/DeleteBlob.json | 12 + .../2019-08-15/examples/DeleteManifest.json | 10 + .../2019-08-15/examples/DeleteTag.json | 10 + .../2019-08-15/examples/EndBlobUpload.json | 16 + .../2019-08-15/examples/GetAccessToken.json | 14 + .../preview/2019-08-15/examples/GetBlob.json | 20 + .../2019-08-15/examples/GetBlobChunk.json | 17 + .../2019-08-15/examples/GetBlobStatus.json | 14 + .../examples/GetDockerRegistryV2Support.json | 8 + .../2019-08-15/examples/GetManifest.json | 48 + .../examples/GetManifestAttributes.json | 34 + .../2019-08-15/examples/GetManifestList.json | 54 + .../examples/GetRepositoryAttributes.json | 24 + .../examples/GetRepositoryList.json | 15 + .../2019-08-15/examples/GetTagAttributes.json | 28 + .../2019-08-15/examples/GetTagList.json | 42 + .../2019-08-15/examples/MountBlob.json | 16 + .../2019-08-15/examples/PostAccessToken.json | 16 + .../2019-08-15/examples/PostRefreshToken.json | 16 + .../2019-08-15/examples/StartBlobUpload.json | 15 + .../examples/UpdateManifestAttributes.json | 11 + .../examples/UpdateRepositoryAttributes.json | 12 + .../examples/UpdateTagAttributes.json | 11 + .../2019-08-15/examples/UploadBlob.json | 16 + .../containerregistry/data-plane/readme.go.md | 7 + .../containerregistry/data-plane/readme.md | 53 +- 32 files changed, 3288 insertions(+), 7 deletions(-) create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CancelBlobUpload.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlob.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlobChunk.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CreateManifest.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteAcrRepository.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteBlob.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteManifest.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteTag.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/EndBlobUpload.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetAccessToken.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlob.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobChunk.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobStatus.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetDockerRegistryV2Support.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifest.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestList.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryList.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagList.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/MountBlob.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostAccessToken.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostRefreshToken.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/StartBlobUpload.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateManifestAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateRepositoryAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateTagAttributes.json create mode 100644 specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UploadBlob.json diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json new file mode 100644 index 000000000000..711ad07777ff --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json @@ -0,0 +1,2676 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Container Registry", + "description": "Metadata API definition for the Azure Container Registry runtime", + "version": "2019-08-15-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{url}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "$ref": "#/parameters/Url" + } + ] + }, + "securityDefinitions": { + "registry_auth": { + "type": "basic" + }, + "registry_oauth2": { + "type": "apiKey", + "in": "header", + "name": "Authorization" + } + }, + "security": [ + { + "registry_auth": [], + "registry_oauth2": [] + } + ], + "tags": [ + { + "name": "v2", + "description": "Root API" + }, + { + "name": "Manifest", + "description": "Everything about manifests" + }, + { + "name": "Tag", + "description": "Everything about tags" + }, + { + "name": "Layer", + "description": "Everything about layers" + }, + { + "name": "Repository", + "description": "Everything about repository" + }, + { + "name": "AcrRepository", + "description": "ACR APIs related to repositories" + }, + { + "name": "AcrManifest", + "description": "ACR APIs related to manifests" + }, + { + "name": "AcrTag", + "description": "ACR APIs related to tags" + } + ], + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "paths": { + "/v2/": { + "get": { + "tags": [ + "v2" + ], + "description": "Tells whether this Docker Registry instance supports Docker Registry HTTP API v2", + "operationId": "V2Support_Check", + "x-ms-examples": { + "Check Docker Registry V2 Support": { + "$ref": "./examples/GetDockerRegistryV2Support.json" + } + }, + "responses": { + "200": { + "description": "Successful response. API v2 supported" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/v2/{name}/manifests/{reference}": { + "get": { + "tags": [ + "Manifest" + ], + "description": "Get the manifest identified by `name` and `reference` where `reference` can be a tag or digest.", + "x-ms-examples": { + "Get manifest": { + "$ref": "./examples/GetManifest.json" + } + }, + "operationId": "Manifests_Get", + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/ImageReference" + }, + { + "name": "accept", + "in": "header", + "description": "Accept header string delimited by comma. For example, application/vnd.docker.distribution.manifest.v2+json", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Returns the requested manifest file in a larger combined group", + "schema": { + "$ref": "#/definitions/ManifestWrapper" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "put": { + "tags": [ + "Manifest" + ], + "x-ms-long-running-operation": false, + "description": "Put the manifest identified by `name` and `reference` where `reference` can be a tag or digest.", + "x-ms-examples": { + "Put manifest": { + "$ref": "./examples/CreateManifest.json" + } + }, + "consumes": [ + "application/vnd.docker.distribution.manifest.v2+json" + ], + "operationId": "Manifests_Create", + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/ImageReference" + }, + { + "$ref": "#/parameters/ManifestBody" + } + ], + "responses": { + "201": { + "description": "The manifest is updated", + "schema": {}, + "headers": { + "Docker-Content-Digest": { + "type": "string", + "description": "Identifies the docker upload uuid for the current request." + }, + "Location": { + "type": "string", + "description": "The canonical location url of the uploaded manifest." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The length of the requested blob content." + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "delete": { + "tags": [ + "Manifest" + ], + "description": "Delete the manifest identified by `name` and `reference`. Note that a manifest can _only_ be deleted by `digest`.", + "x-ms-examples": { + "Delete manifest": { + "$ref": "./examples/DeleteManifest.json" + } + }, + "operationId": "Manifests_Delete", + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/ImageReference" + } + ], + "responses": { + "202": { + "description": "The manifest has been deleted" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/v2/{name}/blobs/{digest}": { + "get": { + "produces": [ + "application/octet-stream" + ], + "tags": [ + "Layer" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/Digest" + } + ], + "x-ms-examples": { + "Get a blob from digest": { + "$ref": "./examples/GetBlob.json" + } + }, + "description": "Retrieve the blob from the registry identified by digest.", + "operationId": "Blob_Get", + "responses": { + "200": { + "description": "The blob identified by digest is available. The blob content will be present in the body of the response.", + "schema": { + "description": "blob binary data", + "type": "file", + "format": "file" + }, + "headers": { + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The length of the requested blob content." + }, + "Docker-Content-Digest": { + "description": "Digest of the targeted content for the request.", + "type": "string" + } + } + }, + "307": { + "description": "The blob identified by digest is available at the provided location.", + "headers": { + "Location": { + "type": "string", + "description": "The location where the layer should be accessible." + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "head": { + "tags": [ + "Layer" + ], + "description": "Same as GET, except only the headers are returned.", + "operationId": "Blob_Check", + "x-ms-examples": { + "Head for a Blob Chunk": { + "$ref": "./examples/CheckBlob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/Digest" + } + ], + "responses": { + "200": { + "description": "The blob identified by digest is available. The blob content will be present in the body of the response.", + "headers": { + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The length of the requested blob content." + }, + "Docker-Content-Digest": { + "description": "Digest of the targeted content for the request.", + "type": "string" + } + } + }, + "307": { + "description": "The blob identified by digest is available at the provided location.", + "headers": { + "Location": { + "type": "string", + "description": "The location where the layer should be accessible." + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "delete": { + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/Digest" + } + ], + "description": "Removes an already uploaded blob.", + "produces": [ + "application/octet-stream" + ], + "tags": [ + "Layer" + ], + "operationId": "Blob_Delete", + "x-ms-examples": { + "Delete a blob": { + "$ref": "./examples/DeleteBlob.json" + } + }, + "responses": { + "202": { + "description": "The blob identified by digest is available. The blob content will be present in the body of the response.", + "schema": { + "description": "blob binary data", + "type": "file", + "format": "file" + }, + "headers": { + "Docker-Content-Digest": { + "description": "Digest of the targeted content for the request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/v2/{name}/blobs/uploads/": { + "post": { + "tags": [ + "Layer" + ], + "description": "Mount a blob identified by the `mount` parameter from another repository.", + "operationId": "Blob_Mount", + "x-ms-examples": { + "Mount a blob from repository": { + "$ref": "./examples/MountBlob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/From" + }, + { + "$ref": "#/parameters/Mount" + } + ], + "responses": { + "201": { + "description": "The blob has been created in the registry and is available at the provided location.", + "headers": { + "Location": { + "description": "Provided location for blob", + "type": "string" + }, + "Docker-Upload-UUID": { + "description": "Identifies the docker upload uuid for the current request.", + "type": "string" + }, + "Docker-Content-Digest": { + "description": "Digest of the targeted content for the request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/{nextBlobUuidLink}": { + "get": { + "tags": [ + "Layer" + ], + "parameters": [ + { + "$ref": "#/parameters/NextLink" + } + ], + "description": "Retrieve status of upload identified by uuid. The primary purpose of this endpoint is to resolve the current status of a resumable upload.", + "operationId": "Blob_GetStatus", + "x-ms-examples": { + "Get blob status": { + "$ref": "./examples/GetBlobStatus.json" + } + }, + "responses": { + "204": { + "description": "The upload is known and in progress. The last received offset is available in the Range header.", + "headers": { + "Range": { + "description": "Range indicating the current progress of the upload.", + "type": "string" + }, + "Docker-Upload-UUID": { + "description": "Identifies the docker upload uuid for the current request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "patch": { + "security": [ + { + "registry_auth": [], + "registry_oauth2": [] + } + ], + "tags": [ + "Layer" + ], + "description": "Upload a stream of data without completing the upload.", + "operationId": "Blob_Upload", + "x-ms-examples": { + "Upload Blob": { + "$ref": "./examples/UploadBlob.json" + } + }, + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "$ref": "#/parameters/RawData" + }, + { + "$ref": "#/parameters/NextLink" + } + ], + "responses": { + "202": { + "description": "The stream of data has been accepted and the current progress is available in the range header. The updated upload location is available in the Location header.", + "headers": { + "Location": { + "description": "Provided location for blob", + "type": "string" + }, + "Range": { + "description": "Range indicating the current progress of the upload.", + "type": "string" + }, + "Docker-Upload-UUID": { + "description": "Identifies the docker upload uuid for the current request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "put": { + "tags": [ + "Layer" + ], + "consumes": [ + "application/octet-stream" + ], + "description": "Complete the upload, providing all the data in the body, if necessary. A request without a body will just complete the upload with previously uploaded content.", + "operationId": "Blob_EndUpload", + "x-ms-examples": { + "End a blob upload": { + "$ref": "./examples/EndBlobUpload.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BlobQueryDigest" + }, + { + "$ref": "#/parameters/RawDataOptional" + }, + { + "$ref": "#/parameters/NextLink" + } + ], + "responses": { + "201": { + "description": "The upload has been completed and accepted by the registry.", + "headers": { + "Location": { + "description": "Provided location for blob", + "type": "string" + }, + "Range": { + "description": "Range indicating the current progress of the upload.", + "type": "string" + }, + "Docker-Content-Digest": { + "description": "Digest of the targeted content for the request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "delete": { + "tags": [ + "Layer" + ], + "parameters": [ + { + "$ref": "#/parameters/NextLink" + } + ], + "description": "Cancel outstanding upload processes, releasing associated resources. If this is not called, the unfinished uploads will eventually timeout.", + "operationId": "Blob_CancelUpload", + "x-ms-examples": { + "End a blob upload": { + "$ref": "./examples/CancelBlobUpload.json" + } + }, + "responses": { + "204": { + "description": "The upload has been successfully deleted." + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/_catalog": { + "get": { + "tags": [ + "AcrRepository" + ], + "description": "List repositories", + "operationId": "Repository_GetList", + "x-ms-examples": { + "Get repositories in a registry": { + "$ref": "./examples/GetRepositoryList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/QueryLast" + }, + { + "$ref": "#/parameters/QueryNum" + } + ], + "responses": { + "200": { + "headers": { + "Link": { + "description": "next paginated result", + "type": "string" + } + }, + "description": "Returns a list of repositories", + "schema": { + "$ref": "#/definitions/Repositories" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/{name}": { + "get": { + "tags": [ + "AcrRepository", + "AcrMetadata" + ], + "description": "Get repository attributes", + "operationId": "Repository_GetAttributes", + "x-ms-examples": { + "Get details of repository": { + "$ref": "./examples/GetRepositoryAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + } + ], + "responses": { + "200": { + "description": "Returns a list of attributes", + "schema": { + "$ref": "#/definitions/RepositoryAttributes" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "delete": { + "tags": [ + "AcrRepository" + ], + "description": "Delete the repository identified by `name`", + "operationId": "Repository_Delete", + "x-ms-examples": { + "Delete a repository": { + "$ref": "./examples/DeleteAcrRepository.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + } + ], + "responses": { + "202": { + "description": "The repository is deleted", + "schema": { + "$ref": "#/definitions/DeletedRepository" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "patch": { + "tags": [ + "AcrRepository", + "AcrMetadata" + ], + "description": "Update the attribute identified by `name` where `reference` is the name of the repository.", + "operationId": "Repository_UpdateAttributes", + "x-ms-examples": { + "Update repository attributes": { + "$ref": "./examples/UpdateRepositoryAttributes.json" + } + }, + "consumes": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "name": "value", + "in": "body", + "description": "Repository attribute value", + "required": false, + "schema": { + "$ref": "#/definitions/ChangeableAttributes" + } + } + ], + "responses": { + "200": { + "description": "The attributes are updated" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/{name}/_tags": { + "get": { + "tags": [ + "AcrTag", + "AcrMetadata" + ], + "description": "List tags of a repository", + "operationId": "Tag_GetList", + "x-ms-examples": { + "Get tags of a repository": { + "$ref": "./examples/GetTagList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/QueryLast" + }, + { + "$ref": "#/parameters/QueryNum" + }, + { + "$ref": "#/parameters/QueryOrderBy" + }, + { + "$ref": "#/parameters/QueryDigest" + } + ], + "responses": { + "200": { + "description": "Tag details of a repository", + "schema": { + "$ref": "#/definitions/TagList" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/{name}/_tags/{reference}": { + "get": { + "tags": [ + "AcrTag", + "AcrMetadata" + ], + "description": "Get tag attributes by tag", + "operationId": "Tag_GetAttributes", + "x-ms-examples": { + "Get tag attributes": { + "$ref": "./examples/GetTagAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/TagReference" + } + ], + "responses": { + "200": { + "description": "Tag attributes", + "schema": { + "$ref": "#/definitions/TagAttributes" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "patch": { + "tags": [ + "AcrTag", + "AcrMetadata" + ], + "description": "Update tag attributes", + "operationId": "Tag_UpdateAttributes", + "consumes": [ + "application/json" + ], + "x-ms-examples": { + "Update attributes of a tag": { + "$ref": "./examples/UpdateTagAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/TagReference" + }, + { + "$ref": "#/parameters/RepoValue" + } + ], + "responses": { + "200": { + "description": "The attributes are updated" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "delete": { + "tags": [ + "AcrTag", + "AcrMetadata" + ], + "description": "Delete tag", + "operationId": "Tag_Delete", + "consumes": [ + "application/json" + ], + "x-ms-examples": { + "Delete a tag": { + "$ref": "./examples/DeleteTag.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/TagReference" + } + ], + "responses": { + "202": { + "description": "The tag is deleted" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/{name}/_manifests": { + "get": { + "tags": [ + "AcrManifest", + "AcrMetadata" + ], + "description": "List manifests of a repository", + "operationId": "Manifests_GetList", + "x-ms-examples": { + "Get list of available manifests": { + "$ref": "./examples/GetManifestList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/QueryLast" + }, + { + "$ref": "#/parameters/QueryNum" + }, + { + "$ref": "#/parameters/QueryOrderBy" + } + ], + "responses": { + "200": { + "description": "Returns a list of manifests", + "schema": { + "$ref": "#/definitions/AcrManifests" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/acr/v1/{name}/_manifests/{reference}": { + "get": { + "tags": [ + "AcrManifest", + "AcrMetadata" + ], + "description": "Get manifest attributes", + "operationId": "Manifests_GetAttributes", + "x-ms-examples": { + "Get manifest attributes": { + "$ref": "./examples/GetManifestAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/ImageReference" + } + ], + "responses": { + "200": { + "description": "List of attributes", + "schema": { + "$ref": "#/definitions/ManifestAttributes" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "patch": { + "tags": [ + "AcrManifest", + "AcrMetadata" + ], + "description": "Update attributes of a manifest", + "operationId": "Manifests_UpdateAttributes", + "consumes": [ + "application/json" + ], + "x-ms-examples": { + "Update attributes of a manifest": { + "$ref": "./examples/UpdateManifestAttributes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/ImageReference" + }, + { + "$ref": "#/parameters/RepoValue" + } + ], + "responses": { + "200": { + "description": "The attributes are updated" + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/oauth2/exchange": { + "post": { + "tags": [ + "AcrToken", + "RefreshToken" + ], + "description": "Exchange AAD tokens for an ACR refresh Token", + "operationId": "RefreshTokens_GetFromExchange", + "consumes": [ + "application/x-www-form-urlencoded" + ], + "parameters": [ + { + "$ref": "#/parameters/Grant_type" + }, + { + "$ref": "#/parameters/Service" + }, + { + "$ref": "#/parameters/Tenant" + }, + { + "$ref": "#/parameters/RefreshToken" + }, + { + "$ref": "#/parameters/AccessToken" + } + ], + "responses": { + "200": { + "description": "Refresh token acquired", + "schema": { + "$ref": "#/definitions/RefreshToken" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + }, + "security": [], + "x-ms-examples": { + "Exchange AAD Token for ACR Refresh": { + "$ref": "./examples/PostRefreshToken.json" + } + } + } + }, + "/oauth2/token": { + "post": { + "tags": [ + "AcrToken", + "AccessToken" + ], + "description": "Exchange ACR Refresh token for an ACR Access Token", + "operationId": "AccessTokens_Get", + "consumes": [ + "application/x-www-form-urlencoded" + ], + "parameters": [ + { + "name": "grant_type", + "in": "formData", + "description": "Grant type is expected to be refresh_token", + "required": true, + "type": "string", + "enum": [ + "refresh_token" + ] + }, + { + "$ref": "#/parameters/Service" + }, + { + "name": "scope", + "in": "formData", + "required": true, + "description": "Which is expected to be a valid scope, and can be specified more than once for multiple scope requests. You obtained this from the Www-Authenticate response header from the challenge.", + "type": "string" + }, + { + "name": "refresh_token", + "in": "formData", + "required": true, + "description": "Must be a valid ACR refresh token", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Access token acquired", + "schema": { + "$ref": "#/definitions/AccessToken" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + }, + "security": [], + "x-ms-examples": { + "Get Access Token with Refresh Token": { + "$ref": "./examples/PostAccessToken.json" + } + } + }, + "get": { + "tags": [ + "AcrToken", + "AccessToken", + "userLogin" + ], + "description": "Exchange Username, Password and Scope an ACR Access Token", + "operationId": "AccessTokens_GetFromLogin", + "parameters": [ + { + "name": "service", + "in": "query", + "required": true, + "description": "Indicates the name of your Azure container registry.", + "type": "string" + }, + { + "name": "scope", + "in": "query", + "required": true, + "description": "Expected to be a valid scope, and can be specified more than once for multiple scope requests. You can obtain this from the Www-Authenticate response header from the challenge.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Access token acquired", + "schema": { + "$ref": "#/definitions/AccessToken" + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + }, + "security": [ + { + "registry_auth": [] + } + ], + "x-ms-examples": { + "Get Access Token with username and password": { + "$ref": "./examples/GetAccessToken.json" + } + } + } + } + }, + "x-ms-paths": { + "/v2/{name}/blobs/uploads/?mode=resumable": { + "post": { + "tags": [ + "Layer" + ], + "description": "Initiate a resumable blob upload with an empty request body.", + "operationId": "Blob_StartUpload", + "x-ms-examples": { + "Start a blob upload": { + "$ref": "./examples/StartBlobUpload.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ImageName" + } + ], + "responses": { + "202": { + "description": "The upload has been created. The Location header must be used to complete the upload. The response should be identical to a GET request on the contents of the returned Location header.", + "headers": { + "Location": { + "description": "Provided location for blob", + "type": "string" + }, + "Range": { + "description": "Range indicating the current progress of the upload.", + "type": "string" + }, + "Docker-Upload-UUID": { + "description": "Identifies the docker upload uuid for the current request.", + "type": "string" + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + }, + "/v2/{name}/blobs/{digest}?mode=chunk": { + "get": { + "produces": [ + "application/octet-stream" + ], + "tags": [ + "Layer" + ], + "description": "Retrieve the blob from the registry identified by `digest`. This endpoint may also support RFC7233 compliant range requests. Support can be detected by issuing a HEAD request. If the header `Accept-Range: bytes` is returned, range requests can be used to fetch partial content.", + "operationId": "Blob_GetChunk", + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/Digest" + }, + { + "$ref": "#/parameters/Range" + } + ], + "x-ms-examples": { + "Get a blob Chunk": { + "$ref": "./examples/GetBlobChunk.json" + } + }, + "responses": { + "206": { + "description": "The blob identified by digest is available. The specified chunk of blob content will be present in the body of the request.", + "schema": { + "description": "blob binary data", + "type": "file", + "format": "file" + }, + "headers": { + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The length of the requested blob content." + }, + "Content-Range": { + "type": "string", + "description": "Content range of blob chunk." + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + }, + "head": { + "tags": [ + "Layer" + ], + "parameters": [ + { + "$ref": "#/parameters/ImageName" + }, + { + "$ref": "#/parameters/Digest" + }, + { + "$ref": "#/parameters/Range" + } + ], + "description": "Same as GET, except only the headers are returned.", + "operationId": "Blob_CheckChunk", + "x-ms-examples": { + "Get headers without blob Chunk": { + "$ref": "./examples/CheckBlobChunk.json" + } + }, + "responses": { + "200": { + "description": "The blob identified by digest is available. The specified chunk of blob content will be present in the body of the request.", + "headers": { + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The length of the requested blob content." + }, + "Content-Range": { + "type": "string", + "description": "Content range of blob chunk." + } + } + }, + "default": { + "description": "ACR error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AcrErrors" + } + } + } + } + } + }, + "definitions": { + "RepositoryAttributes": { + "type": "object", + "description": "Repository attributes", + "properties": { + "registry": { + "type": "string", + "description": "Registry name" + }, + "imageName": { + "type": "string", + "description": "Image name" + }, + "createdTime": { + "type": "string", + "description": "Image created time" + }, + "lastUpdateTime": { + "type": "string", + "description": "Image last update time" + }, + "manifestCount": { + "type": "integer", + "description": "Number of the manifests" + }, + "tagCount": { + "type": "integer", + "description": "Number of the tags" + }, + "changeableAttributes": { + "description": "Changeable attributes", + "$ref": "#/definitions/ChangeableAttributes" + } + }, + "example": { + "registry": "registryname.azurecr.io", + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "imageName": "imageName", + "createdTime": "2018-09-07T16:30:46.6583219Z", + "tagCount": 6, + "manifestCount": 2, + "lastUpdateTime": "2018-09-07T16:30:46.6583219Z" + } + }, + "TagList": { + "description": "List of tag details", + "properties": { + "registry": { + "type": "string", + "description": "Registry name" + }, + "imageName": { + "type": "string", + "description": "Image name" + }, + "tags": { + "type": "array", + "description": "List of tag attribute details", + "items": { + "$ref": "#/definitions/TagAttributesBase" + } + } + }, + "example": { + "registry": "registry", + "imageName": "imageName", + "tags": [ + { + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "name": "name", + "digest": "digest", + "createdTime": "createdTime", + "signed": true, + "lastUpdateTime": "lastUpdateTime" + }, + { + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "name": "name", + "digest": "digest", + "createdTime": "createdTime", + "signed": true, + "lastUpdateTime": "lastUpdateTime" + } + ] + } + }, + "TagAttributes": { + "description": "Tag attributes", + "properties": { + "registry": { + "type": "string", + "description": "Registry name" + }, + "imageName": { + "type": "string", + "description": "Image name" + }, + "tag": { + "x-ms-client-name": "attributes", + "description": "List of tag attribute details", + "$ref": "#/definitions/TagAttributesBase" + } + }, + "example": { + "registry": "registry", + "imageName": "imageName", + "tag": { + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "name": "name", + "digest": "digest", + "createdTime": "createdTime", + "signed": true, + "lastUpdateTime": "lastUpdateTime" + } + } + }, + "TagAttributesBase": { + "description": "Tag attribute details", + "properties": { + "name": { + "type": "string", + "description": "Tag name" + }, + "digest": { + "type": "string", + "description": "Tag digest" + }, + "createdTime": { + "type": "string", + "description": "Tag created time" + }, + "lastUpdateTime": { + "type": "string", + "description": "Tag last update time" + }, + "signed": { + "type": "boolean", + "description": "Is signed" + }, + "changeableAttributes": { + "$ref": "#/definitions/ChangeableAttributes", + "description": "Changeable attributes" + } + }, + "example": { + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "name": "tagname", + "digest": "sha256:0873c923e00e0fd2ba78041bfb64a105e1ecb7678916d1f7776311e45bf5634b", + "createdTime": "2018-08-10T17:28:44.1082945Z", + "signed": true, + "lastUpdateTime": "2018-08-10T17:28:44.1082945Z" + } + }, + "AcrManifests": { + "description": "Manifest attributes", + "properties": { + "registry": { + "type": "string", + "description": "Registry name" + }, + "imageName": { + "type": "string", + "description": "Image name" + }, + "manifests": { + "x-ms-client-name": "ManifestsAttributes", + "type": "array", + "description": "List of manifests", + "items": { + "$ref": "#/definitions/ManifestAttributesBase", + "description": "Manifest details" + } + } + }, + "example": { + "registry": "registry", + "imageName": "imageName", + "manifests": [ + { + "changeableAttributes": { + "quarantineDetails": "quarantineDetails", + "readEnabled": true, + "quarantineState": "quarantineState", + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "os": "os", + "digest": "digest", + "imageSize": 2401606, + "createdTime": "createdTime", + "mediaType": "mediaType", + "configMediaType": "configMediaType", + "lastUpdateTime": "lastUpdateTime", + "architecture": "architecture", + "tags": [ + "tags", + "tags" + ] + }, + { + "changeableAttributes": { + "quarantineDetails": "quarantineDetails", + "readEnabled": true, + "quarantineState": "quarantineState", + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "os": "os", + "digest": "digest", + "imageSize": 2401606, + "createdTime": "createdTime", + "mediaType": "mediaType", + "configMediaType": "configMediaType", + "lastUpdateTime": "lastUpdateTime", + "architecture": "architecture", + "tags": [ + "tags", + "tags" + ] + } + ] + } + }, + "ManifestAttributes": { + "description": "Manifest attributes details", + "properties": { + "registry": { + "description": "Registry name", + "type": "string" + }, + "imageName": { + "description": "Image name", + "type": "string" + }, + "manifest": { + "x-ms-client-name": "attributes", + "description": "Manifest attributes", + "$ref": "#/definitions/ManifestAttributesBase" + } + }, + "example": { + "registry": "acrapi.azurecr-test.io", + "imageName": "nanoserver", + "manifest": { + "digest": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086", + "imageSize": 2401606, + "createdTime": "2018-09-06T06:17:20.9983915Z", + "lastUpdateTime": "2018-09-06T06:17:20.9983915Z", + "architecture": "amd64", + "os": "windows", + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "configMediaType": "application/vnd.docker.container.image.v1+json", + "tags": [ + "4.7.2-20180905-nanoserver-1803" + ], + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + } + } + }, + "ManifestAttributesBase": { + "type": "object", + "description": "Manifest details", + "properties": { + "digest": { + "type": "string", + "description": "Manifest" + }, + "imageSize": { + "type": "integer", + "format": "int64", + "description": "Image size" + }, + "createdTime": { + "type": "string", + "description": "Created time" + }, + "lastUpdateTime": { + "type": "string", + "description": "Last update time" + }, + "architecture": { + "type": "string", + "description": "CPU architecture" + }, + "os": { + "type": "string", + "description": "Operating system" + }, + "mediaType": { + "type": "string", + "description": "Media type" + }, + "configMediaType": { + "type": "string", + "description": "Config blob media type" + }, + "tags": { + "type": "array", + "description": "List of tags", + "items": { + "type": "string", + "description": "Tag name" + } + }, + "changeableAttributes": { + "$ref": "#/definitions/ChangeableAttributes", + "description": "Changeable attributes" + } + }, + "example": { + "changeableAttributes": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + }, + "os": "os", + "digest": "digest", + "imageSize": 2401606, + "createdTime": "createdTime", + "mediaType": "mediaType", + "configMediaType": "configMediaType", + "lastUpdateTime": "lastUpdateTime", + "architecture": "architecture", + "tags": [ + "tags", + "tags" + ] + } + }, + "RefreshToken": { + "type": "object", + "properties": { + "refresh_token": { + "description": "The refresh token to be used for generating access tokens", + "type": "string" + } + } + }, + "AccessToken": { + "type": "object", + "properties": { + "access_token": { + "description": "The access token for performing authenticated requests", + "type": "string" + } + } + }, + "AcrErrors": { + "description": "Acr error response describing why the operation failed", + "properties": { + "errors": { + "type": "array", + "description": "Array of detailed error", + "items": { + "$ref": "#/definitions/AcrErrorInfo" + } + } + } + }, + "RepositoryTags": { + "description": "Result of the request to list tags of the image", + "properties": { + "name": { + "type": "string", + "description": "Name of the image" + }, + "tags": { + "type": "array", + "description": "List of tags", + "items": { + "type": "string", + "description": "Tag name" + } + } + }, + "example": { + "name": "name", + "tags": [ + "tags", + "tags" + ] + } + }, + "ImageSignature": { + "description": "Signature of a signed manifest", + "properties": { + "header": { + "description": "A JSON web signature", + "$ref": "#/definitions/JWK" + }, + "signature": { + "type": "string", + "description": "A signature for the image manifest, signed by a libtrust private key" + }, + "protected": { + "type": "string", + "description": "The signed protected header" + } + }, + "example": { + "header": { + "jwk": { + "crv": "P-256", + "kid": "WGXM:EYWQ:DA53:LQUP:BCWG:5RDG:S3ZM:ETH7:VMQS:WWKZ:EWDG:V74Q", + "kty": "EC", + "x": "OxZ9k5BVjPZ7jb3BmBD4X0d8MVPJqfF4NeSe8reoqnY", + "y": "EaCqTe4-vYwhk7qU6Bs2-AeLGOVtCe_-IY2MdE0Vfyc" + }, + "alg": "ES256" + }, + "signature": "p73LfotMGD8nNXz2g9YX2XtSllb4GI5-b3vjqP5N0nkv8QXg-r5z_omGiVbOZE2BYG1X_4TIN23l1KSEqsXxOg", + "protected": "eyJmb3JtYXRMZW5ndGgiOjI5ODYsImZvcm1hdFRhaWwiOiJDbjAiLCJ0aW1lIjoiMjAxOC0wOS0yMFQyMzo0MTo1MloifQ" + } + }, + "JWK": { + "description": "A JSON web signature", + "properties": { + "jwk": { + "$ref": "#/definitions/JWKHeader" + }, + "alg": { + "type": "string", + "description": "The algorithm used to sign or encrypt the JWT" + } + } + }, + "JWKHeader": { + "description": "JSON web key parameter", + "properties": { + "crv": { + "type": "string", + "description": "crv value" + }, + "kid": { + "type": "string", + "description": "kid value" + }, + "kty": { + "type": "string", + "description": "kty value" + }, + "x": { + "type": "string", + "description": "x value" + }, + "y": { + "type": "string", + "description": "y value" + } + } + }, + "History": { + "description": "A list of unstructured historical data for v1 compatibility", + "properties": { + "v1Compatibility": { + "type": "string", + "description": "The raw v1 compatibility information" + } + }, + "example": { + "v1Compatibility": "v1 compatibility info" + } + }, + "Repositories": { + "description": "List of repositories", + "properties": { + "repositories": { + "type": "array", + "x-ms-client-name": "Names", + "description": "Repository names", + "items": { + "type": "string" + } + } + }, + "example": { + "repositories": [ + "production/alpine", + "testing/alpine" + ] + } + }, + "DeletedRepository": { + "description": "Deleted repository", + "properties": { + "manifestsDeleted": { + "type": "array", + "description": "SHA of the deleted image", + "items": { + "type": "string" + } + }, + "tagsDeleted": { + "type": "array", + "description": "Tag of the deleted image", + "items": { + "type": "string" + } + } + } + }, + "AcrErrorInfo": { + "description": "Error information", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "detail": { + "type": "object", + "description": "Error details" + } + } + }, + "FsLayer": { + "description": "Image layer information", + "properties": { + "blobSum": { + "type": "string", + "description": "SHA of an image layer" + } + }, + "example": { + "blobSum": "sha256:1f7d468f830cb0ed4beb8edc9438f18096e8c682e56a35242f60e6c61b718b30" + } + }, + "Descriptor": { + "description": "Docker V2 image layer descriptor including config and layers", + "properties": { + "mediaType": { + "type": "string", + "description": "Layer media type" + }, + "size": { + "type": "integer", + "format": "int64", + "description": "Layer size" + }, + "digest": { + "type": "string", + "description": "Layer digest" + }, + "urls": { + "type": "array", + "description": "Specifies a list of URIs from which this object may be downloaded.", + "items": { + "description": "Must conform to RFC 3986. Entries should use the http and https schemes, as defined in RFC 7230.", + "type": "string" + } + }, + "annotations": { + "$ref": "#/definitions/Annotations" + } + }, + "example": { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 2107098, + "digest": "sha256:5d20c808ce198565ff70b3ed23a991dd49afac45dece63474b27ce6ed036adc6" + } + }, + "ChangeableAttributes": { + "properties": { + "deleteEnabled": { + "type": "boolean", + "description": "Delete enabled" + }, + "writeEnabled": { + "type": "boolean", + "description": "Write enabled" + }, + "listEnabled": { + "type": "boolean", + "description": "List enabled" + }, + "readEnabled": { + "type": "boolean", + "description": "Read enabled" + } + }, + "example": { + "readEnabled": true, + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + } + }, + "TagAttributes_tag": { + "description": "Tag", + "properties": { + "signatureRecord": { + "description": "SignatureRecord value", + "type": "string" + } + }, + "example": { + "signatureRecord": "signatureRecord" + } + }, + "ManifestAttributes_manifest_references": { + "description": "Manifest attributes details", + "properties": { + "digest": { + "type": "string", + "description": "Manifest digest" + }, + "architecture": { + "type": "string", + "description": "CPU architecture" + }, + "os": { + "type": "string", + "description": "Operating system" + } + }, + "example": { + "os": "os", + "digest": "digest", + "architecture": "architecture" + } + }, + "ManifestAttributes_manifest": { + "description": "List of manifest attributes", + "properties": { + "references": { + "type": "array", + "description": "List of manifest attributes details", + "items": { + "$ref": "#/definitions/ManifestAttributes_manifest_references", + "description": "Manifest attributes details" + } + }, + "quarantineTag": { + "type": "string", + "description": "Quarantine tag name" + } + }, + "example": { + "quarantineTag": "quarantineTag", + "references": [ + { + "os": "os", + "digest": "digest", + "architecture": "architecture" + }, + { + "os": "os", + "digest": "digest", + "architecture": "architecture" + } + ] + } + }, + "ManifestChangeableAttributes": { + "description": "Changeable attributes", + "properties": { + "deleteEnabled": { + "type": "boolean", + "description": "Delete enabled" + }, + "writeEnabled": { + "type": "boolean", + "description": "Write enabled" + }, + "listEnabled": { + "type": "boolean", + "description": "List enabled" + }, + "readEnabled": { + "type": "boolean", + "description": "Read enabled" + }, + "quarantineState": { + "type": "string", + "description": "Quarantine state" + }, + "quarantineDetails": { + "type": "string", + "description": "Quarantine details" + } + }, + "example": { + "quarantineDetails": "quarantineDetails", + "readEnabled": true, + "quarantineState": "quarantineState", + "listEnabled": true, + "deleteEnabled": true, + "writeEnabled": true + } + }, + "Manifest": { + "description": "Returns the requested manifest file", + "properties": { + "schemaVersion": { + "type": "integer", + "description": "Schema version" + } + } + }, + "ManifestWrapper": { + "description": "Returns the requested manifest file", + "properties": { + "mediaType": { + "type": "string", + "description": "Media type for this Manifest" + }, + "manifests": { + "type": "array", + "description": "(ManifestList, OCIIndex) List of V2 image layer information", + "items": { + "$ref": "#/definitions/ManifestListAttributes" + } + }, + "config": { + "description": "(V2, OCI) Image config descriptor", + "$ref": "#/definitions/Descriptor" + }, + "layers": { + "type": "array", + "description": "(V2, OCI) List of V2 image layer information", + "items": { + "$ref": "#/definitions/Descriptor" + } + }, + "annotations": { + "description": "(OCI, OCIIndex) Additional metadata", + "$ref": "#/definitions/Annotations" + }, + "architecture": { + "type": "string", + "description": "(V1) CPU architecture" + }, + "name": { + "type": "string", + "description": "(V1) Image name" + }, + "tag": { + "type": "string", + "description": "(V1) Image tag" + }, + "fsLayers": { + "type": "array", + "description": "(V1) List of layer information", + "items": { + "$ref": "#/definitions/FsLayer" + } + }, + "history": { + "type": "array", + "description": "(V1) Image history", + "items": { + "$ref": "#/definitions/History" + } + }, + "signatures": { + "type": "array", + "description": "(V1) Image signature", + "items": { + "$ref": "#/definitions/ImageSignature" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ] + }, + "ManifestList": { + "x-ms-discriminator-value": "application/vnd.docker.distribution.manifest.list.v2+json", + "description": "Returns the requested Docker multi-arch-manifest file", + "properties": { + "mediaType": { + "type": "string", + "description": "Media type for this Manifest" + }, + "manifests": { + "type": "array", + "description": "List of V2 image layer information", + "items": { + "$ref": "#/definitions/ManifestListAttributes" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ] + }, + "ManifestListAttributes": { + "properties": { + "mediaType": { + "type": "string", + "description": "The MIME type of the referenced object. This will generally be application/vnd.docker.image.manifest.v2+json, but it could also be application/vnd.docker.image.manifest.v1+json" + }, + "size": { + "type": "integer", + "format": "int64", + "description": "The size in bytes of the object" + }, + "digest": { + "type": "string", + "description": "The digest of the content, as defined by the Registry V2 HTTP API Specification" + }, + "platform": { + "$ref": "#/definitions/Platform" + } + } + }, + "Platform": { + "description": "The platform object describes the platform which the image in the manifest runs on. A full list of valid operating system and architecture values are listed in the Go language documentation for $GOOS and $GOARCH", + "properties": { + "architecture": { + "type": "string", + "description": "Specifies the CPU architecture, for example amd64 or ppc64le." + }, + "os": { + "type": "string", + "description": "The os field specifies the operating system, for example linux or windows." + }, + "os.version": { + "type": "string", + "description": "The optional os.version field specifies the operating system version, for example 10.0.10586." + }, + "os.features": { + "type": "array", + "description": "The optional os.features field specifies an array of strings, each listing a required OS feature (for example on Windows win32k", + "items": { + "type": "string" + } + }, + "variant": { + "type": "string", + "description": "The optional variant field specifies a variant of the CPU, for example armv6l to specify a particular CPU variant of the ARM CPU." + }, + "features": { + "type": "array", + "description": "The optional features field specifies an array of strings, each listing a required CPU feature (for example sse4 or aes", + "items": { + "type": "string" + } + } + } + }, + "V2Manifest": { + "x-ms-discriminator-value": "application/vnd.docker.distribution.manifest.v2+json", + "description": "Returns the requested Docker V2 Manifest file", + "properties": { + "mediaType": { + "type": "string", + "description": "Media type for this Manifest" + }, + "config": { + "description": "V2 image config descriptor", + "$ref": "#/definitions/Descriptor" + }, + "layers": { + "type": "array", + "description": "List of V2 image layer information", + "items": { + "$ref": "#/definitions/Descriptor" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ], + "example": { + "schemaVersion": 2, + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "config": { + "mediaType": "application/vnd.docker.container.image.v1+json", + "size": 1512, + "digest": "sha256:6d1ef012b5674ad8a127ecfa9b5e6f5178d171b90ee462846974177fd9bdd39f" + }, + "layers": [ + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 2107098, + "digest": "sha256:5d20c808ce198565ff70b3ed23a991dd49afac45dece63474b27ce6ed036adc6" + } + ] + } + }, + "OCIManifest": { + "x-ms-discriminator-value": "application/vnd.oci.image.manifest.v1+json", + "description": "Returns the requested OCI Manifest file", + "properties": { + "config": { + "description": "V2 image config descriptor", + "$ref": "#/definitions/Descriptor" + }, + "layers": { + "type": "array", + "description": "List of V2 image layer information", + "items": { + "$ref": "#/definitions/Descriptor" + } + }, + "annotations": { + "$ref": "#/definitions/Annotations" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ] + }, + "OCIIndex": { + "x-ms-discriminator-value": "application/vnd.oci.image.index.v1+json", + "description": "Returns the requested OCI index file", + "properties": { + "manifests": { + "type": "array", + "description": "List of OCI image layer information", + "items": { + "$ref": "#/definitions/ManifestListAttributes" + } + }, + "annotations": { + "$ref": "#/definitions/Annotations" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ] + }, + "V1Manifest": { + "description": "Returns the requested V1 manifest file", + "x-ms-discriminator-value": "application/vnd.oci.image.manifest.v1+json", + "properties": { + "architecture": { + "type": "string", + "description": "CPU architecture" + }, + "name": { + "type": "string", + "description": "Image name" + }, + "tag": { + "type": "string", + "description": "Image tag" + }, + "fsLayers": { + "type": "array", + "description": "List of layer information", + "items": { + "$ref": "#/definitions/FsLayer" + } + }, + "history": { + "type": "array", + "description": "Image history", + "items": { + "$ref": "#/definitions/History" + } + }, + "signatures": { + "type": "array", + "description": "Image signature", + "items": { + "$ref": "#/definitions/ImageSignature" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Manifest" + } + ] + }, + "Annotations": { + "description": "Additional information provided through arbitrary metadata.", + "type": "object", + "x-nullable": true, + "additionalProperties": { + "type": "object" + }, + "properties": { + "org.opencontainers.image.created": { + "description": "Date and time on which the image was built (string, date-time as defined by https://tools.ietf.org/html/rfc3339#section-5.6)", + "type": "string", + "format": "date-time", + "x-ms-client-name": "Created" + }, + "org.opencontainers.image.authors": { + "description": "Contact details of the people or organization responsible for the image.", + "type": "string", + "x-ms-client-name": "Authors" + }, + "org.opencontainers.image.url": { + "description": "URL to find more information on the image.", + "type": "string", + "x-ms-client-name": "Url" + }, + "org.opencontainers.image.documentation": { + "description": "URL to get documentation on the image.", + "type": "string", + "x-ms-client-name": "Documentation" + }, + "org.opencontainers.image.source": { + "description": "URL to get source code for building the image.", + "type": "string", + "x-ms-client-name": "Source" + }, + "org.opencontainers.image.version": { + "description": "Version of the packaged software. The version MAY match a label or tag in the source code repository, may also be Semantic versioning-compatible", + "type": "string", + "x-ms-client-name": "Version" + }, + "org.opencontainers.image.revision": { + "description": "Source control revision identifier for the packaged software.", + "type": "string", + "x-ms-client-name": "Revision" + }, + "org.opencontainers.image.vendor": { + "description": "Name of the distributing entity, organization or individual.", + "type": "string", + "x-ms-client-name": "Vendor" + }, + "org.opencontainers.image.licenses": { + "description": "License(s) under which contained software is distributed as an SPDX License Expression.", + "type": "string", + "x-ms-client-name": "Licenses" + }, + "org.opencontainers.image.ref.name": { + "description": "Name of the reference for a target.", + "type": "string", + "x-ms-client-name": "Name" + }, + "org.opencontainers.image.title": { + "description": "Human-readable title of the image", + "type": "string", + "x-ms-client-name": "Title" + }, + "org.opencontainers.image.description": { + "description": "Human-readable description of the software packaged in the image", + "type": "string", + "x-ms-client-name": "Description" + } + } + } + }, + "parameters": { + "Url": { + "name": "url", + "x-ms-client-name": "loginUri", + "description": "Registry login URL", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + }, + "ImageReference": { + "name": "reference", + "in": "path", + "description": "A tag or a digest, pointing to a specific image", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManifestReference": { + "name": "reference", + "in": "path", + "description": "Tag or digest of the target manifest", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TagReference": { + "name": "reference", + "in": "path", + "description": "Tag name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Digest": { + "name": "digest", + "in": "path", + "description": "Digest of a BLOB", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobQueryDigest": { + "name": "digest", + "in": "query", + "description": "Digest of a BLOB", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RepoValue": { + "name": "value", + "in": "body", + "description": "Repository attribute value", + "required": false, + "schema": { + "$ref": "#/definitions/ChangeableAttributes" + }, + "x-ms-parameter-location": "method" + }, + "QueryOrderBy": { + "name": "orderby", + "in": "query", + "description": "orderby query parameter", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "QueryNum": { + "name": "n", + "in": "query", + "description": "query parameter for max number of items", + "required": false, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "QueryLast": { + "name": "last", + "in": "query", + "description": "Query parameter for the last item in previous query. Result set will include values lexically after last.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "QueryDigest": { + "name": "digest", + "in": "query", + "description": "filter by digest", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Grant_type": { + "name": "grant_type", + "description": "Can take a value of access_token_refresh_token, or access_token, or refresh_token", + "type": "string", + "in": "formData", + "required": true, + "enum": [ + "access_token_refresh_token", + "access_token", + "refresh_token" + ], + "x-ms-parameter-location": "method" + }, + "Service": { + "name": "service", + "in": "formData", + "required": true, + "description": "Indicates the name of your Azure container registry.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "Tenant": { + "name": "tenant", + "in": "formData", + "required": false, + "description": "AAD tenant associated to the AAD credentials.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "Scope": { + "name": "scope", + "in": "formData", + "required": true, + "description": "Which is expected to be a valid scope, and can be specified more than once for multiple scope requests. You can obtain this from the Www-Authenticate response header from the challenge.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "RefreshToken": { + "name": "refresh_token", + "in": "formData", + "required": false, + "description": "AAD refresh token, mandatory when grant_type is access_token_refresh_token or refresh_token", + "type": "string", + "x-ms-parameter-location": "method" + }, + "AccessToken": { + "name": "access_token", + "in": "formData", + "required": false, + "description": "AAD access token, mandatory when grant_type is access_token_refresh_token or access_token.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "ImageName": { + "name": "name", + "in": "path", + "description": "Name of the image (including the namespace)", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManifestBody": { + "description": "Manifest body, can take v1 or v2 values depending on accept header", + "name": "payload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Manifest" + }, + "x-ms-parameter-location": "method" + }, + "RawData": { + "name": "value", + "description": "Raw data of blob", + "in": "body", + "schema": { + "type": "object", + "format": "file" + }, + "required": true, + "x-ms-parameter-location": "method" + }, + "RawDataOptional": { + "name": "value", + "description": "Optional raw data of blob", + "in": "body", + "schema": { + "type": "object", + "format": "file" + }, + "required": false, + "x-ms-parameter-location": "method" + }, + "From": { + "name": "from", + "type": "string", + "in": "query", + "description": "Name of the source repository.", + "required": true, + "x-ms-parameter-location": "method" + }, + "Mount": { + "name": "mount", + "description": "Digest of blob to mount from the source repository.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "Uuid": { + "name": "uuid", + "description": "A uuid identifying the upload.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "Content-Range": { + "name": "Content-Range", + "in": "header", + "description": "Range of bytes identifying the desired block of content represented by the body. Start must the end offset retrieved via status check plus one. Note that this is a non-standard use of the `Content-Range` header.", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "Range": { + "name": "Range", + "type": "string", + "description": "Format : bytes=-, HTTP Range header specifying blob chunk.", + "in": "header", + "required": true, + "x-ms-parameter-location": "method" + }, + "NoUploadCache": { + "description": "Acquired from NextLink", + "name": "_nouploadcache", + "in": "query", + "type": "boolean", + "required": false, + "x-ms-parameter-location": "method" + }, + "State": { + "description": "Acquired from NextLink", + "name": "_state", + "in": "query", + "type": "string", + "required": false, + "x-ms-parameter-location": "method" + }, + "NextLink": { + "name": "nextBlobUuidLink", + "x-ms-client-name": "location", + "type": "string", + "description": "Link acquired from upload start or previous chunk. Note, do not include initial / (must do substring(1) )", + "in": "path", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CancelBlobUpload.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CancelBlobUpload.json new file mode 100644 index 000000000000..1a32d216e7bd --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CancelBlobUpload.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "nextBlobUuidLink": "v2/blobland/blobs/uploads/2b28c60d-d296-44b7-b2b4-1f01c63195c6?_nouploadcache=false&_state=VYABvUSCNW2yY5e5VabLHppXqwU0K7cvT0YUdq57KBt7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiIyYjI4YzYwZC1kMjk2LTQ0YjctYjJiNC0xZjAxYzYzMTk1YzYiLCJPZmZzZXQiOjAsIlN0YXJ0ZWRBdCI6IjIwMTktMDgtMjdUMjM6NTI6NDcuMDUzNjU2Mjg1WiJ9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlob.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlob.json new file mode 100644 index 000000000000..519425f52232 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlob.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "prod/bash", + "digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39" + }, + "responses": { + "200": { + "headers": { + "Content-Length": 5635 + } + }, + "307": { + "headers": { + "Location": "https://csharpsdktest.azurecr.io/v2/prod/bash/blobs/sha256:3131d2b2b3352091117a3abe745d01a3fed472b7327c3183602247937800e3a6" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlobChunk.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlobChunk.json new file mode 100644 index 000000000000..49fddb0cd1b9 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CheckBlobChunk.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "prod/bash", + "digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39", + "Range": "bytes=0-299" + }, + "responses": { + "200": { + "headers": { + "Content-Length": "300", + "Content-Range": "bytes 0-299/5635" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CreateManifest.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CreateManifest.json new file mode 100644 index 000000000000..9009925c6027 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/CreateManifest.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "hello-world", + "reference": "a20190628-081044z", + "payload": "{\"schemaVersion\":2,\"mediaType\":\"application/vnd.docker.distribution.manifest.v2+json\",\"config\":{\"mediaType\":\"application/vnd.docker.container.image.v1+json\",\"size\":1512,\"digest\":\"sha256:6d1ef012b5674ad8a127ecfa9b5e6f5178d171b90ee462846974177fd9bdd39f\"},\"layers\":[{\"mediaType\":\"application/vnd.docker.image.rootfs.diff.tar.gzip\",\"size\":2107098,\"digest\":\"sha256:5d20c808ce198565ff70b3ed23a991dd49afac45dece63474b27ce6ed036adc6\"}]}" + }, + "responses": { + "201": { + "headers": { + "Docker-Content-Digest": "sha256:15685c48490175b7dde62e6bfcfb54d9420c6495ea6404776e2facca3da93cd8", + "Location": "/v2/hello-world/manifests/sha256:15685c48490175b7dde62e6bfcfb54d9420c6495ea6404776e2facca3da93cd8", + "Content-Length": 0 + }, + "body": {} + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteAcrRepository.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteAcrRepository.json new file mode 100644 index 000000000000..8449e47855ec --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteAcrRepository.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver" + }, + "responses": { + "202": { + "body": { + "manifestsDeleted": [ + "sha256:e31831d63f77a0a6d74ef5b16df619a50808dac842190d07ae24e8b520d159fa" + ], + "tagsDeleted": [ + "4.7.2-20180814-windowsservercore-1709" + ] + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteBlob.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteBlob.json new file mode 100644 index 000000000000..8852e49d5c19 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteBlob.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "prod/bash", + "digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39" + }, + "responses": { + "202": { + "body": "" + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteManifest.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteManifest.json new file mode 100644 index 000000000000..50afe0bd523e --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteManifest.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "alpine", + "reference": "3.7" + }, + "responses": { + "202": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteTag.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteTag.json new file mode 100644 index 000000000000..fec441eeaf12 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/DeleteTag.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver", + "reference": "4.7.2-20180905-nanoserver-1803" + }, + "responses": { + "202": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/EndBlobUpload.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/EndBlobUpload.json new file mode 100644 index 000000000000..82f0c9c35538 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/EndBlobUpload.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "nextBlobUuidLink": "v2/blobland/blobs/uploads/2b28c60d-d296-44b7-b2b4-1f01c63195c6?_nouploadcache=false&_state=VYABvUSCNW2yY5e5VabLHppXqwU0K7cvT0YUdq57KBt7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiIyYjI4YzYwZC1kMjk2LTQ0YjctYjJiNC0xZjAxYzYzMTk1YzYiLCJPZmZzZXQiOjAsIlN0YXJ0ZWRBdCI6IjIwMTktMDgtMjdUMjM6NTI6NDcuMDUzNjU2Mjg1WiJ9", + "digest": "sha256:a05a7abc31b0caadd5058069eaa623cdd0538512dbddacc7ca5bad73c3957c5e", + "value": "usuallyEmpty" + }, + "responses": { + "201": { + "headers": { + "Location": "/v2/blobland/blobs/sha256:a05a7abc31b0caadd5058069eaa623cdd0538512dbddacc7ca5bad73c3957c5e", + "Docker-Content-Digest": "sha256:a05a7abc31b0caadd5058069eaa623cdd0538512dbddacc7ca5bad73c3957c5e" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetAccessToken.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetAccessToken.json new file mode 100644 index 000000000000..416fd08ca49b --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetAccessToken.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "service": "someregistry.azurecr.io", + "scope": "registry:catalog:*" + }, + "responses": { + "200": { + "body": { + "access_token": "eyJ0eXAiOiJKJhbGcigdCI6IkN0ZlFaOExlLTMejlnIiwidGlkIjoiNzbmOTgWItMmQ3Y2QwMTFkYjQ3Ii..." + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlob.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlob.json new file mode 100644 index 000000000000..b50eee9da47c --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "prod/bash", + "digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39" + }, + "responses": { + "200": { + "body": "eyJhcmNoaXRlY3R1cmUiOiJhbWQ2NCIsImNvbmZpZyI6eyJIb3N0bmFtZSI6IiIsIkRvbWFpbm5hbWUiOiIiLCJVc2VyIjoiIiwiQXR0YWNoU3RkaW4iOmZhbHNlLCJBdHRhY2hTdGRvdXQiOmZhbHNlLCJBdHRhY2hTdGRlcnIiOmZhbHNlLCJUdHkiOmZhbHNlLCJPcGVuU3RkaW4iOmZhbHNlLCJTdGRpbk9uY2UiOmZhbHNlLCJFbnYiOlsiUEFUSD0vdXNyL2xvY2FsL3NiaW46L3Vzci9sb2NhbC9iaW46L3Vzci9zYmluOi91c3IvYmluOi9zYmluOi9iaW4iLCJfQkFTSF9HUEdfS0VZPTdDMDEzNUZCMDg4QUFGNkM2NkM2NTBCOUJCNTg2OUYwNjRFQTc0QUIiLCJfQkFTSF9WRVJTSU9OPTUuMCIsIl9CQVNIX1BBVENIX0xFVkVMPTAiLCJfQkFTSF9MQVRFU1RfUEFUQ0g9NyJdLCJDbWQiOlsiYmFzaCJdLCJBcmdzRXNjYXBlZCI6dHJ1ZSwiSW1hZ2UiOiJzaGEyNTY6MzhhZDJmYmM5ZjljMGE4N2RmZTBhMmIxOWJkY2E5NGJlNDVmNDY2M2Y3M2ZkMDlmZWZlZTQ5MmFmZDJjMDE0NCIsIlZvbHVtZXMiOm51bGwsIldvcmtpbmdEaXIiOiIiLCJFbnRyeXBvaW50IjpbImRvY2tlci1lbnRyeXBvaW50LnNoIl0sIk9uQnVpbGQiOm51bGwsIkxhYmVscyI6bnVsbH0sImNvbnRhaW5lciI6IjRiMDU0NmZhNDlkZjVkY2FlZDViNjYzNzE3ZjQ0MmNlZjcxYTFiOTVjMGZmYjQyYzhjNWNlNzIzMWI5MGMwMjYiLCJjb250YWluZXJfY29uZmlnIjp7Ikhvc3RuYW1lIjoiNGIwNTQ2ZmE0OWRmIiwiRG9tYWlubmFtZSI6IiIsIlVzZXIiOiIiLCJBdHRhY2hTdGRpbiI6ZmFsc2UsIkF0dGFjaFN0ZG91dCI6ZmFsc2UsIkF0dGFjaFN0ZGVyciI6ZmFsc2UsIlR0eSI6ZmFsc2UsIk9wZW5TdGRpbiI6ZmFsc2UsIlN0ZGluT25jZSI6ZmFsc2UsIkVudiI6WyJQQVRIPS91c3IvbG9jYWwvc2JpbjovdXNyL2xvY2FsL2JpbjovdXNyL3NiaW46L3Vzci9iaW46L3NiaW46L2JpbiIsIl9CQVNIX0dQR19LRVk9N0MwMTM1RkIwODhBQUY2QzY2QzY1MEI5QkI1ODY5RjA2NEVBNzRBQiIsIl9CQVNIX1ZFUlNJT049NS4wIiwiX0JBU0hfUEFUQ0hfTEVWRUw9MCIsIl9CQVNIX0xBVEVTVF9QQVRDSD03Il0sIkNtZCI6WyIvYmluL3NoIiwiLWMiLCIjKG5vcCkgIiwiQ01EIFtcImJhc2hcIl0iXSwiQXJnc0VzY2FwZWQiOnRydWUsIkltYWdlIjoic2hhMjU2OjM4YWQyZmJjOWY5YzBhODdkZmUwYTJiMTliZGNhOTRiZTQ1ZjQ2NjNmNzNmZDA5ZmVmZWU0OTJhZmQyYzAxNDQiLCJWb2x1bWVzIjpudWxsLCJXb3JraW5nRGlyIjoiIiwiRW50cnlwb2ludCI6WyJkb2NrZXItZW50cnlwb2ludC5zaCJdLCJPbkJ1aWxkIjpudWxsLCJMYWJlbHMiOnt9fSwiY3JlYXRlZCI6IjIwMTktMDctMTNUMDE6MTY6MDYuNTI3NTE1OTAyWiIsImRvY2tlcl92ZXJzaW9uIjoiMTguMDYuMS1jZSIsImhpc3RvcnkiOlt7ImNyZWF0ZWQiOiIyMDE5LTA3LTExVDIyOjIwOjUyLjEzOTcwOTM1NVoiLCJjcmVhdGVkX2J5IjoiL2Jpbi9zaCAtYyAjKG5vcCkgQUREIGZpbGU6MGViNWVhMzU3NDFkMjNmZTM5Y2JhYzI0NWIzYTVkODQ4NTZlZDYzODRmNGZmMDdkNDk2MzY5ZWU2ZDk2MGJhZCBpbiAvICJ9LHsiY3JlYXRlZCI6IjIwMTktMDctMTFUMjI6MjA6NTIuMzc1Mjg2NDA0WiIsImNyZWF0ZWRfYnkiOiIvYmluL3NoIC1jICMobm9wKSAgQ01EIFtcIi9iaW4vc2hcIl0iLCJlbXB0eV9sYXllciI6dHJ1ZX0seyJjcmVhdGVkIjoiMjAxOS0wNy0xM1QwMToxNToxMy41Njc2Njk4MTJaIiwiY3JlYXRlZF9ieSI6Ii9iaW4vc2ggLWMgIyhub3ApICBFTlYgX0JBU0hfR1BHX0tFWT03QzAxMzVGQjA4OEFBRjZDNjZDNjUwQjlCQjU4NjlGMDY0RUE3NEFCIiwiZW1wdHlfbGF5ZXIiOnRydWV9LHsiY3JlYXRlZCI6IjIwMTktMDctMTNUMDE6MTU6MTMuNzQ1NjUyMDk4WiIsImNyZWF0ZWRfYnkiOiIvYmluL3NoIC1jICMobm9wKSAgRU5WIF9CQVNIX1ZFUlNJT049NS4wIiwiZW1wdHlfbGF5ZXIiOnRydWV9LHsiY3JlYXRlZCI6IjIwMTktMDctMTNUMDE6MTU6MTMuOTQwNDU1NDE5WiIsImNyZWF0ZWRfYnkiOiIvYmluL3NoIC1jICMobm9wKSAgRU5WIF9CQVNIX1BBVENIX0xFVkVMPTAiLCJlbXB0eV9sYXllciI6dHJ1ZX0seyJjcmVhdGVkIjoiMjAxOS0wNy0xM1QwMToxNToxNC4wOTkzMDAwNzVaIiwiY3JlYXRlZF9ieSI6Ii9iaW4vc2ggLWMgIyhub3ApICBFTlYgX0JBU0hfTEFURVNUX1BBVENIPTciLCJlbXB0eV9sYXllciI6dHJ1ZX0seyJjcmVhdGVkIjoiMjAxOS0wNy0xM1QwMToxNjowNS45Mjg0MjkyNjJaIiwiY3JlYXRlZF9ieSI6Ii9iaW4vc2ggLWMgc2V0IC1ldXg7IFx0XHRhcGsgYWRkIC0tbm8tY2FjaGUgLS12aXJ0dWFsIC5idWlsZC1kZXBzIFx0XHRiaXNvbiBcdFx0Y29yZXV0aWxzIFx0XHRkcGtnLWRldiBkcGtnIFx0XHRnY2MgXHRcdGdudXBnIFx0XHRsaWJjLWRldiBcdFx0bWFrZSBcdFx0bmN1cnNlcy1kZXYgXHRcdHBhdGNoIFx0XHR0YXIgXHQ7IFx0XHR2ZXJzaW9uPVwiJF9CQVNIX1ZFUlNJT05cIjsgXHRpZiBbIFwiJF9CQVNIX1BBVENIX0xFVkVMXCIgLWd0IDAgXTsgdGhlbiBcdFx0dmVyc2lvbj1cIiR2ZXJzaW9uLiRfQkFTSF9QQVRDSF9MRVZFTFwiOyBcdGZpOyBcdHdnZXQgLU8gYmFzaC50YXIuZ3ogXCJodHRwczovL2Z0cC5nbnUub3JnL2dudS9iYXNoL2Jhc2gtJHZlcnNpb24udGFyLmd6XCI7IFx0d2dldCAtTyBiYXNoLnRhci5nei5zaWcgXCJodHRwczovL2Z0cC5nbnUub3JnL2dudS9iYXNoL2Jhc2gtJHZlcnNpb24udGFyLmd6LnNpZ1wiOyBcdFx0aWYgWyBcIiRfQkFTSF9MQVRFU1RfUEFUQ0hcIiAtZ3QgXCIkX0JBU0hfUEFUQ0hfTEVWRUxcIiBdOyB0aGVuIFx0XHRta2RpciAtcCBiYXNoLXBhdGNoZXM7IFx0XHRmaXJzdD1cIiQocHJpbnRmICclMDNkJyBcIiQoKCBfQkFTSF9QQVRDSF9MRVZFTCArIDEgKSlcIilcIjsgXHRcdGxhc3Q9XCIkKHByaW50ZiAnJTAzZCcgXCIkX0JBU0hfTEFURVNUX1BBVENIXCIpXCI7IFx0XHRmb3IgcGF0Y2ggaW4gJChzZXEgLXcgXCIkZmlyc3RcIiBcIiRsYXN0XCIpOyBkbyBcdFx0XHR1cmw9XCJodHRwczovL2Z0cC5nbnUub3JnL2dudS9iYXNoL2Jhc2gtJF9CQVNIX1ZFUlNJT04tcGF0Y2hlcy9iYXNoJHtfQkFTSF9WRVJTSU9OLy8uL30tJHBhdGNoXCI7IFx0XHRcdHdnZXQgLU8gXCJiYXNoLXBhdGNoZXMvJHBhdGNoXCIgXCIkdXJsXCI7IFx0XHRcdHdnZXQgLU8gXCJiYXNoLXBhdGNoZXMvJHBhdGNoLnNpZ1wiIFwiJHVybC5zaWdcIjsgXHRcdGRvbmU7IFx0Zmk7IFx0XHRleHBvcnQgR05VUEdIT01FPVwiJChta3RlbXAgLWQpXCI7IFx0Z3BnIC0tYmF0Y2ggLS1rZXlzZXJ2ZXIgaGEucG9vbC5za3Mta2V5c2VydmVycy5uZXQgLS1yZWN2LWtleXMgXCIkX0JBU0hfR1BHX0tFWVwiOyBcdGdwZyAtLWJhdGNoIC0tdmVyaWZ5IGJhc2gudGFyLmd6LnNpZyBiYXNoLnRhci5nejsgXHRncGdjb25mIC0ta2lsbCBhbGw7IFx0cm0gYmFzaC50YXIuZ3ouc2lnOyBcdGlmIFsgLWQgYmFzaC1wYXRjaGVzIF07IHRoZW4gXHRcdGZvciBzaWcgaW4gYmFzaC1wYXRjaGVzLyouc2lnOyBkbyBcdFx0XHRwPVwiJHtzaWclLnNpZ31cIjsgXHRcdFx0Z3BnIC0tYmF0Y2ggLS12ZXJpZnkgXCIkc2lnXCIgXCIkcFwiOyBcdFx0XHRybSBcIiRzaWdcIjsgXHRcdGRvbmU7IFx0Zmk7IFx0cm0gLXJmIFwiJEdOVVBHSE9NRVwiOyBcdFx0bWtkaXIgLXAgL3Vzci9zcmMvYmFzaDsgXHR0YXIgXHRcdC0tZXh0cmFjdCBcdFx0LS1maWxlPWJhc2gudGFyLmd6IFx0XHQtLXN0cmlwLWNvbXBvbmVudHM9MSBcdFx0LS1kaXJlY3Rvcnk9L3Vzci9zcmMvYmFzaCBcdDsgXHRybSBiYXNoLnRhci5nejsgXHRcdGlmIFsgLWQgYmFzaC1wYXRjaGVzIF07IHRoZW4gXHRcdGZvciBwIGluIGJhc2gtcGF0Y2hlcy8qOyBkbyBcdFx0XHRwYXRjaCBcdFx0XHRcdC0tZGlyZWN0b3J5PS91c3Ivc3JjL2Jhc2ggXHRcdFx0XHQtLWlucHV0PVwiJChyZWFkbGluayAtZiBcIiRwXCIpXCIgXHRcdFx0XHQtLXN0cmlwPTAgXHRcdFx0OyBcdFx0XHRybSBcIiRwXCI7IFx0XHRkb25lOyBcdFx0cm1kaXIgYmFzaC1wYXRjaGVzOyBcdGZpOyBcdFx0Y2QgL3Vzci9zcmMvYmFzaDsgXHRnbnVBcmNoPVwiJChkcGtnLWFyY2hpdGVjdHVyZSAtLXF1ZXJ5IERFQl9CVUlMRF9HTlVfVFlQRSlcIjsgXHQuL2NvbmZpZ3VyZSBcdFx0LS1idWlsZD1cIiRnbnVBcmNoXCIgXHRcdC0tZW5hYmxlLXJlYWRsaW5lIFx0XHQtLXdpdGgtY3Vyc2VzIFx0XHQtLXdpdGhvdXQtYmFzaC1tYWxsb2MgXHR8fCB7IFx0XHRjYXQgXHUwMDNlXHUwMDI2MiBjb25maWcubG9nOyBcdFx0ZmFsc2U7IFx0fTsgXHRtYWtlIC1qIFwiJChucHJvYylcIjsgXHRtYWtlIGluc3RhbGw7IFx0Y2QgLzsgXHRybSAtciAvdXNyL3NyYy9iYXNoOyBcdFx0cm0gLXIgXHRcdC91c3IvbG9jYWwvc2hhcmUvZG9jL2Jhc2gvKi5odG1sIFx0XHQvdXNyL2xvY2FsL3NoYXJlL2luZm8gXHRcdC91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIFx0XHQvdXNyL2xvY2FsL3NoYXJlL21hbiBcdDsgXHRcdHJ1bkRlcHM9XCIkKCBcdFx0c2NhbmVsZiAtLW5lZWRlZCAtLW5vYmFubmVyIC0tZm9ybWF0ICclbiNwJyAtLXJlY3Vyc2l2ZSAvdXNyL2xvY2FsIFx0XHRcdHwgdHIgJywnICdcXG4nIFx0XHRcdHwgc29ydCAtdSBcdFx0XHR8IGF3ayAnc3lzdGVtKFwiWyAtZSAvdXNyL2xvY2FsL2xpYi9cIiAkMSBcIiBdXCIpID09IDAgeyBuZXh0IH0geyBwcmludCBcInNvOlwiICQxIH0nIFx0KVwiOyBcdGFwayBhZGQgLS1uby1jYWNoZSAtLXZpcnR1YWwgLmJhc2gtcnVuZGVwcyAkcnVuRGVwczsgXHRhcGsgZGVsIC5idWlsZC1kZXBzOyBcdFx0WyBcIiQod2hpY2ggYmFzaClcIiA9ICcvdXNyL2xvY2FsL2Jpbi9iYXNoJyBdOyBcdGJhc2ggLS12ZXJzaW9uOyBcdFsgXCIkKGJhc2ggLWMgJ2VjaG8gXCIke0JBU0hfVkVSU0lPTiUlW14wLTkuXSp9XCInKVwiID0gXCIke19CQVNIX1ZFUlNJT04lJS0qfS4kX0JBU0hfTEFURVNUX1BBVENIXCIgXTsifSx7ImNyZWF0ZWQiOiIyMDE5LTA3LTEzVDAxOjE2OjA2LjE2NDEyODQxMloiLCJjcmVhdGVkX2J5IjoiL2Jpbi9zaCAtYyAjKG5vcCkgQ09QWSBmaWxlOjY1MWIzYmViZWJhOGJlOTE2MmM1NmIzZWI1NjExOTk5MDUyMzVmM2UxYzc4MTEyMzJiNmM5ZjQ4YWMzMzM2NTEgaW4gL3Vzci9sb2NhbC9iaW4vICJ9LHsiY3JlYXRlZCI6IjIwMTktMDctMTNUMDE6MTY6MDYuMzE5Mzc1ODg0WiIsImNyZWF0ZWRfYnkiOiIvYmluL3NoIC1jICMobm9wKSAgRU5UUllQT0lOVCBbXCJkb2NrZXItZW50cnlwb2ludC5zaFwiXSIsImVtcHR5X2xheWVyIjp0cnVlfSx7ImNyZWF0ZWQiOiIyMDE5LTA3LTEzVDAxOjE2OjA2LjUyNzUxNTkwMloiLCJjcmVhdGVkX2J5IjoiL2Jpbi9zaCAtYyAjKG5vcCkgIENNRCBbXCJiYXNoXCJdIiwiZW1wdHlfbGF5ZXIiOnRydWV9XSwib3MiOiJsaW51eCIsInJvb3RmcyI6eyJ0eXBlIjoibGF5ZXJzIiwiZGlmZl9pZHMiOlsic2hhMjU2OjFiZmVlYmQ2NTMyM2I4ZGRmNWJkNmE1MWNjNzA5N2I3Mjc4OGJjOTgyZTlhYjMyODBkNTNkM2M2MTNhZGZmYTciLCJzaGEyNTY6NDgzYzk4MGFjNmFiZjYzZmM0ZDcyNjJiMTdhMTk1NGQ2MjI2NmRhYzMwMjliNWJlMzg0ZDAzYjM5MjI5ODAzZSIsInNoYTI1Njo1ZjVmOTNhOTMzMDUyMTBhOTZjYzQxN2Y1NzlkNzBhNDk2YmJmMGRiOGU4MGVhMWU5NDM2NjgyYzM3OWYyNWQ5Il19fQ==", + "headers": { + "Content-Length": 5635 + } + }, + "307": { + "headers": { + "Location": "https://csharpsdktest.azurecr.io/v2/prod/bash/blobs/sha256:3131d2b2b3352091117a3abe745d01a3fed472b7327c3183602247937800e3a6" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobChunk.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobChunk.json new file mode 100644 index 000000000000..12671ea6b036 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobChunk.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "prod/bash", + "digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39", + "Range": "bytes=0-299" + }, + "responses": { + "206": { + "body": "eyJhcmNoaXRlY3R1cmUiOiJhbWQ2NCIsImNvbmZpZyI6eyJIb3N0bmFtZSI6IiIsIkRvbWFpbm5hbWUiOiIiLCJVc2VyIjoiIiwiQXR0YWNoU3RkaW4iOmZhbHNlLCJBdHRhY2hTdGRvdXQiOmZhbHNlLCJBdHRhY2hTdGRlcnIiOmZhbHNlLCJUdHkiOmZhbHNlLCJPcGVuU3RkaW4iOmZhbHNlLCJTdGRpbk9uY2UiOmZhbHNlLCJFbnYiOlsiUEFUSD0vdXNyL2xvY2FsL3NiaW46L3Vzci9sb2NhbC9iaW46L3Vzci9zYmluOi91c3IvYmluOi9zYmluOi9iaW4iLCJfQkFTSF9HUEdfS0VZPTdDMDEzNUZCMDg4QUFGNkM2NkM2NTBCOUJC", + "headers": { + "Content-Length": "300", + "Content-Range": "bytes 0-299/5635" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobStatus.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobStatus.json new file mode 100644 index 000000000000..03da3ca3fcd9 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetBlobStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "nextBlobUuidLink": "v2/blobland/blobs/uploads/2b28c60d-d296-44b7-b2b4-1f01c63195c6?_nouploadcache=false&_state=VYABvUSCNW2yY5e5VabLHppXqwU0K7cvT0YUdq57KBt7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiIyYjI4YzYwZC1kMjk2LTQ0YjctYjJiNC0xZjAxYzYzMTk1YzYiLCJPZmZzZXQiOjAsIlN0YXJ0ZWRBdCI6IjIwMTktMDgtMjdUMjM6NTI6NDcuMDUzNjU2Mjg1WiJ9" + }, + "responses": { + "204": { + "headers": { + "Range": "0-0", + "Docker-Upload-Uuid": "2b28c60d-d296-44b7-b2b4-1f01c63195c6" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetDockerRegistryV2Support.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetDockerRegistryV2Support.json new file mode 100644 index 000000000000..181e2eec438e --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetDockerRegistryV2Support.json @@ -0,0 +1,8 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io" + }, + "responses": { + "200": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifest.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifest.json new file mode 100644 index 000000000000..2768e76d6a0d --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifest.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "hello-world-dangling", + "reference": "20190628-033033z", + "accept": "application/vnd.docker.distribution.manifest.v2+json" + }, + "responses": { + "200": { + "body": { + "schemaVersion": 2, + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "config": { + "mediaType": "application/vnd.docker.container.image.v1+json", + "size": 5824, + "digest": "sha256:691fbc2d44fff48357bba69ab0505b9bf12b2b250a925a84a0b8e8e7eed390b2" + }, + "layers": [ + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 2014658, + "digest": "sha256:a073c86ecf9e0f29180e80e9638d4c741970695851ea48247276c32c57e40282" + }, + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 19778035, + "digest": "sha256:0e28711eb56d78f1e3dfde1807eba529d1346222bcd07d1cb1e436a18a0388bd" + }, + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 1074044, + "digest": "sha256:e460dd483fddb555911f7ed188c319fd97542c60e36843dcb1c5d753f733e1fa" + }, + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 5827, + "digest": "sha256:6aa301222093bfb8cf424ccb387f59e2c9510c3a30cca7fbcf8c954f88e6600c" + }, + { + "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", + "size": 568, + "digest": "sha256:9c5d80083a57d565f684e0155707204d497a5ad965279f92927452f15dae17e6" + } + ] + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestAttributes.json new file mode 100644 index 000000000000..a8163814b8c1 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestAttributes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver", + "reference": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086" + }, + "responses": { + "200": { + "body": { + "registry": "acrapi.azurecr-test.io", + "imageName": "nanoserver", + "manifest": { + "digest": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086", + "imageSize": 2401606, + "createdTime": "2018-09-06T06:17:20.9983915Z", + "lastUpdateTime": "2018-09-06T06:17:20.9983915Z", + "architecture": "amd64", + "os": "windows", + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "configMediaType": "application/vnd.docker.container.image.v1+json", + "tags": [ + "4.7.2-20180905-nanoserver-1803" + ], + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + } + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestList.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestList.json new file mode 100644 index 000000000000..08eaec214eca --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetManifestList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver" + }, + "responses": { + "200": { + "body": { + "registry": "acrapi.azurecr-test.io", + "imageName": "nanoserver", + "manifests": [ + { + "digest": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086", + "imageSize": 2401606, + "createdTime": "2018-09-06T06:17:20.9983915Z", + "lastUpdateTime": "2018-09-06T06:17:20.9983915Z", + "architecture": "amd64", + "os": "windows", + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "configMediaType": "application/vnd.docker.container.image.v1+json", + "tags": [ + "4.7.2-20180905-nanoserver-1803" + ], + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + }, + { + "digest": "sha256:7af5cd1dde3e8f5c2c9103860afa4ca871a6075373b6564b0e7b1b47866dab52", + "imageSize": 4135121, + "createdTime": "2018-09-07T16:30:46.5651701Z", + "lastUpdateTime": "2018-09-07T16:30:46.5651701Z", + "architecture": "amd64", + "os": "windows", + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "configMediaType": "application/vnd.docker.container.image.v1+json", + "tags": [ + "4.7.2-20180906-nanoserver-1803" + ], + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json new file mode 100644 index 000000000000..c6791683bfd2 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryAttributes.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver" + }, + "responses": { + "200": { + "body": { + "registry": "acrapi.azurecr-test.io", + "imageName": "nanoserver", + "createdTime": "2018-09-06T06:17:20.9531248Z", + "lastUpdateTime": "2018-09-07T16:30:46.6583219Z", + "manifestCount": 2, + "tagCount": 2, + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryList.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryList.json new file mode 100644 index 000000000000..4b6864e0ea95 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetRepositoryList.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io" + }, + "responses": { + "200": { + "body": { + "repositories": [ + "production/alpine", + "testing/alpine" + ] + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagAttributes.json new file mode 100644 index 000000000000..ed58c44d6f71 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagAttributes.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "test/bash", + "reference": "sha256:eabe547f78d4c18c708dd97ec3166cf7464cc651f1cbb67e7afas407405b7ad7b6" + }, + "responses": { + "200": { + "body": { + "registry": "acrapi.azurecr-test.io", + "imageName": "test/bash", + "tag": { + "name": "tagName", + "digest": "sha256:eabe547f78d4c18c708dd97ec3166cf7464cc651f1cbb67e70d407405b7ad7b6", + "createdTime": "2018-10-05T20:54:24.1286047Z", + "lastUpdateTime": "2018-10-05T20:54:24.1286047Z", + "signed": false, + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": false, + "readEnabled": true, + "listEnabled": true + } + } + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagList.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagList.json new file mode 100644 index 000000000000..e5342cd2295f --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/GetTagList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver" + }, + "responses": { + "200": { + "body": { + "registry": "acrapi.azurecr-test.io", + "imageName": "nanoserver", + "tags": [ + { + "name": "4.7.2-20180905-nanoserver-1803", + "digest": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086", + "createdTime": "2018-09-06T06:17:21.0856539Z", + "lastUpdateTime": "2018-09-06T06:17:21.0856539Z", + "signed": false, + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + }, + { + "name": "4.7.2-20180906-nanoserver-1803", + "digest": "sha256:7af5cd1dde3e8f5c2c9103860afa4ca871a6075373b6564b0e7b1b47866dab52", + "createdTime": "2018-09-06T16:30:43.3860166Z", + "lastUpdateTime": "2018-09-07T16:30:46.7022734Z", + "signed": false, + "changeableAttributes": { + "deleteEnabled": true, + "writeEnabled": true, + "readEnabled": true, + "listEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/MountBlob.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/MountBlob.json new file mode 100644 index 000000000000..45623b98265b --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/MountBlob.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "newimage", + "mount": "prod/bash", + "from": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39" + }, + "responses": { + "201": { + "headers": { + "Location": "/v2/somethingnew/blobs/sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39", + "Docker-Content-Digest": "sha256:16463e0c481e161aabb735437d30b3c9c7391c2747cc564bb927e843b73dcb39" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostAccessToken.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostAccessToken.json new file mode 100644 index 000000000000..a4e6293133b5 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostAccessToken.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "grant_type": "refresh_token", + "service": "someregistry.azurecr.io", + "scope": "registry:catalog:*", + "refresh_token": "eyJ0eXAiOiJKJhbGci1dCI6IkN0ZlFDOExlLTMejlnIiwidGlkIjoiNzJmOTgWItMmQ3Y2QwMTFkYjQ3Ii..." + }, + "responses": { + "200": { + "body": { + "access_token": "eyJ0eXAiOiJKJhbGcigdCI6IkN0ZlFaOExlLTMejlnIiwidGlkIjoiNzbmOTgWItMmQ3Y2QwMTFkYjQ3Ii..." + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostRefreshToken.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostRefreshToken.json new file mode 100644 index 000000000000..768ca1680ba1 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/PostRefreshToken.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "grant_type": "access_token", + "url": "acrapi.azurecr-test.io", + "service": "someregistry.azurecr.io", + "tenant": "02f900bf-86f1-31af-p1ab-2b7cd0nndb47", + "accessToken": "eyJ0eXAiOiJKJhbGci1dCI6IkN0ZlFDOExlLTMejlnIiwidGlkIjoiNzJmOTgWItMmQ3Y2QwMTFkYjQ3Ii..." + }, + "responses": { + "200": { + "body": { + "refresh_token": "eyJ0eXAiOiJKJhbGcigdCI6IkN0ZlFaOExlLTMejlnIiwidGlkIjoiNzbmOTgWItMmQ3Y2QwMTFkYjQ3Ii..." + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/StartBlobUpload.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/StartBlobUpload.json new file mode 100644 index 000000000000..38d70c467e5f --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/StartBlobUpload.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "newimg" + }, + "responses": { + "202": { + "headers": { + "Location": "/v2/blobland/blobs/uploads/f6d3451c-3352-43ff-b67c-fd0cfc793066?_nouploadcache=false&_state=iWTaVpaWiz23JTt8ZsYFPEU5JwLOFgdumWOmqGxIYGt7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiJmNmQzNDUxYy0zMzUyLTQzZmYtYjY3Yy1mZDBjZmM3OTMwNjYiLCJPZmZzZXQiOjAsIlN0YXJ0ZWRBdCI6IjIwMTktMDgtMjdUMjM6NTI6NTQuNTM1MDQ5ODY1WiJ9", + "Range": "0-0", + "Docker-Upload-Uuid": "f6d3451c-3352-43ff-b67c-fd0cfc793066" + } + } + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateManifestAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateManifestAttributes.json new file mode 100644 index 000000000000..4c25514ab2f2 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateManifestAttributes.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver", + "reference": "sha256:110d2b6c84592561338aa040b1b14b7ab81c2f9edbd564c2285dd7d70d777086", + "value": "{\"writeEnabled\": false}" + }, + "responses": { + "200": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateRepositoryAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateRepositoryAttributes.json new file mode 100644 index 000000000000..14a61f118d0f --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateRepositoryAttributes.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver", + "value": { + "writeEnabled": false + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateTagAttributes.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateTagAttributes.json new file mode 100644 index 000000000000..16e13e3c4ec2 --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UpdateTagAttributes.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "name": "nanoserver", + "reference": "4.7.2-20180905-nanoserver-1803", + "value": "{\"writeEnabled\": false}" + }, + "responses": { + "200": {} + } +} diff --git a/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UploadBlob.json b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UploadBlob.json new file mode 100644 index 000000000000..7add0750729c --- /dev/null +++ b/specification/containerregistry/data-plane/Microsoft.ContainerRegistry/preview/2019-08-15/examples/UploadBlob.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "url": "acrapi.azurecr-test.io", + "nextBlobUuidLink": "v2/blobland/blobs/uploads/2b28c60d-d296-44b7-b2b4-1f01c63195c6?_nouploadcache=false&_state=VYABvUSCNW2yY5e5VabLHppXqwU0K7cvT0YUdq57KBt7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiIyYjI4YzYwZC1kMjk2LTQ0YjctYjJiNC0xZjAxYzYzMTk1YzYiLCJPZmZzZXQiOjAsIlN0YXJ0ZWRBdCI6IjIwMTktMDgtMjdUMjM6NTI6NDcuMDUzNjU2Mjg1WiJ9", + "value": "U29tZXRoaW5nRWxzZQ==" + }, + "responses": { + "202": { + "headers": { + "Location": "/v2/blobland/blobs/uploads/f6d3451c-3352-43ff-b67c-fd0cfc793066?_nouploadcache=false&_state=9G2t2KQOw-ANeo5TrnwVb5OeAUIe0NaEJ2jxwLT6Y1J7Ik5hbWUiOiJibG9ibGFuZCIsIlVVSUQiOiJmNmQzNDUxYy0zMzUyLTQzZmYtYjY3Yy1mZDBjZmM3OTMwNjYiLCJPZmZzZXQiOjEzLCJTdGFydGVkQXQiOiIyMDE5LTA4LTI3VDIzOjUyOjU0WiJ9", + "Range": "0-12", + "Docker-Upload-Uuid": "f6d3451c-3352-43ff-b67c-fd0cfc793066" + } + } + } +} diff --git a/specification/containerregistry/data-plane/readme.go.md b/specification/containerregistry/data-plane/readme.go.md index 97ef4154aa73..f82d86b06f25 100644 --- a/specification/containerregistry/data-plane/readme.go.md +++ b/specification/containerregistry/data-plane/readme.go.md @@ -8,6 +8,13 @@ go: namespace: containerregistry clear-output-folder: true add-credentials: true + + # Non standard header use, still awaiting checks here + directive: + - remove-operation: UploadBlobChunkSpecified + - remove-operation: UploadBlobChunk + - remove-model: UploadBlobChunkSpecifiedHeaders + - remove-model: UploadBlobChunkHeaders ``` ### Go multi-api diff --git a/specification/containerregistry/data-plane/readme.md b/specification/containerregistry/data-plane/readme.md index 2ad5a15737c2..06899780f84f 100644 --- a/specification/containerregistry/data-plane/readme.md +++ b/specification/containerregistry/data-plane/readme.md @@ -26,7 +26,23 @@ These are the global settings for the ContainerRegistry API. ``` yaml # common openapi-type: data-plane -tag: package-2019-07 +tag: package-2019-08 +``` +### Tag: package-2019-08 + +These settings apply only when `--tag=package-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08' +input-file: +- Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json +# This override adds support for directly passing in the acquired location link (Since it starts with /) +# It also caters to passing it without / as some implementations may remove the initial / . +directive: + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /_url = _url.Replace\("\{nextBlobUuidLink\}", location\);/g, "_url = _url.Replace(location.StartsWith(\"/\") ? \"/{nextBlobUuidLink}\" : \"{nextBlobUuidLink}\", location);") ``` ### Tag: package-2019-07 @@ -45,6 +61,7 @@ These settings apply only when `--tag=package-2018-08` is specified on the comma ``` yaml $(tag) == 'package-2018-08' input-file: - Microsoft.ContainerRegistry/preview/2018-08-10/containerregistry.json + ``` --- @@ -71,7 +88,7 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION namespace: Microsoft.Azure.ContainerRegistry sync-methods: None - output-folder: $(csharp-sdks-folder)/ContainerRegistry/preview/Microsoft.Azure.ContainerRegistry/src/Generated + output-folder: $(csharp-sdks-folder)/ContainerRegistry/Microsoft.Azure.ContainerRegistry/src/Generated clear-output-folder: true add-credentials: true ``` @@ -96,8 +113,31 @@ directive: reason: No content is returned by put Manifest in compliance with Docker's own specs for compatibility purposes. Specifics https://docs.docker.com/registry/spec/api/#put-manifest from: containerregistry.json where: $.paths["/v2/{name}/manifests/{reference}"].put.responses["201"] + - suppress: LROStatusCodesReturnTypeSchema + reason: No content is returned by put End Upload in compliance with Docker's own specs for compatibility purposes. Specifics https://docs.docker.com/v17.12/registry/spec/api/ + from: containerregistry.json + where: $.paths["/{nextBlobUuidLink}"].put.responses["201"] + - suppress: DefinitionsPropertiesNamesCamelCase + reason: These default values are specified by the Open Container Initiative. Used for cross compatibility. Specifics https://github.com/opencontainers/image-spec/blob/master/annotations.md#rules + from: containerregistry.json + where: + - $.definitions.Platform.properties["os.version"] + - $.definitions.Platform.properties["os.features"] + - $.definitions.Annotations.properties["org.opencontainers.image.created"] + - $.definitions.Annotations.properties["org.opencontainers.image.authors"] + - $.definitions.Annotations.properties["org.opencontainers.image.url"] + - $.definitions.Annotations.properties["org.opencontainers.image.documentation"] + - $.definitions.Annotations.properties["org.opencontainers.image.source"] + - $.definitions.Annotations.properties["org.opencontainers.image.version"] + - $.definitions.Annotations.properties["org.opencontainers.image.revision"] + - $.definitions.Annotations.properties["org.opencontainers.image.vendor"] + - $.definitions.Annotations.properties["org.opencontainers.image.licenses"] + - $.definitions.Annotations.properties["org.opencontainers.image.ref.name"] + - $.definitions.Annotations.properties["org.opencontainers.image.title"] + - $.definitions.Annotations.properties["org.opencontainers.image.description"] ``` -## Multi-API/Profile support for AutoRest v3 generators + +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -109,16 +149,15 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-07-15/containerregistry.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2018-08-10/containerregistry.json - ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' -#exclude-file: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - From 2f53ea9bc540d84b1dee7bd7e3ba94ca2fa2dc3c Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Mon, 2 Sep 2019 02:50:33 +0000 Subject: [PATCH 072/123] regenerated all-api-versions --- specification/containerregistry/data-plane/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/containerregistry/data-plane/readme.md b/specification/containerregistry/data-plane/readme.md index 06899780f84f..f305b4cb02a2 100644 --- a/specification/containerregistry/data-plane/readme.md +++ b/specification/containerregistry/data-plane/readme.md @@ -152,6 +152,7 @@ input-file: - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-08-15/containerregistry.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-07-15/containerregistry.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2018-08-10/containerregistry.json + ``` If there are files that should not be in the `all-api-versions` set, From 2987fb8ea49e5cef21d904c569723be0053500ec Mon Sep 17 00:00:00 2001 From: Arcturus Date: Mon, 2 Sep 2019 12:16:43 +0800 Subject: [PATCH 073/123] Fix bad namespace in service maintenance (#7097) --- .../maintenance/resource-manager/readme.go.md | 26 +++++++++++++++++++ .../maintenance/resource-manager/readme.md | 25 +----------------- 2 files changed, 27 insertions(+), 24 deletions(-) create mode 100644 specification/maintenance/resource-manager/readme.go.md diff --git a/specification/maintenance/resource-manager/readme.go.md b/specification/maintenance/resource-manager/readme.go.md new file mode 100644 index 000000000000..2344b31a0af4 --- /dev/null +++ b/specification/maintenance/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: maintenance + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2018-06-preview +``` + +### Tag: package-2018-06-preview and go + +These settings apply only when `--tag=package-2018-06-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-06-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-06-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index 2807fd8e5cf5..f7d84d706585 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -102,30 +102,7 @@ python: ## Go -These settings apply only when `--go` is specified on the command line. - -``` yaml $(go) -go: - license-header: MICROSOFT_APACHE_NO_VERSION - namespace: Maintenance - clear-output-folder: true -``` - -### Go multi-api - -``` yaml $(go) && $(multiapi) -batch: - - tag: package-2018-06-preview -``` - -### Tag: package-2018-06-preview and go - -These settings apply only when `--tag=package-2018-06-preview --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2018-06-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/Maintenance/mgmt/2018-06-01-preview/Maintenance -``` +See configuration in [readme.go.md](./readme.go.md) ## Java From 30fb95afa820f1f6e8f2725411e6af330fcd65fe Mon Sep 17 00:00:00 2001 From: shleiAmy <50385461+shleiAmy@users.noreply.github.com> Date: Sun, 1 Sep 2019 22:32:22 -0700 Subject: [PATCH 074/123] remove x-ms-pageable to fix python SKD (#7098) --- .../preview/2018-09-01-preview/attestation.json | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json index 2987cf4d8a5a..91497bfe111d 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json @@ -44,9 +44,6 @@ "$ref": "#/parameters/ApiVersionParameter" } ], - "x-ms-pageable": { - "nextLinkName": null - }, "responses": { "200": { "description": "List all the operations.", @@ -235,9 +232,6 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], - "x-ms-pageable": { - "nextLinkName": null - }, "responses": { "200": { "description": "OK", @@ -277,10 +271,6 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], - "x-ms-pageable": { - "nextLinkName": null, - "itemName": "keys" - }, "responses": { "200": { "description": "OK", From e377de41ec8f020eb0b4e6c7c9df24e84012c959 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Mon, 2 Sep 2019 13:35:58 +0800 Subject: [PATCH 075/123] adding readme for attestation service (#7090) * adding python settings for attestation * added swagger-to-sdk section * added python stub in main readme * removed pageable * removed pageable --- .../attestation/resource-manager/readme.md | 14 ++++++++++ .../resource-manager/readme.python.md | 27 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 specification/attestation/resource-manager/readme.python.md diff --git a/specification/attestation/resource-manager/readme.md b/specification/attestation/resource-manager/readme.md index 44f473f46178..90db381404b1 100644 --- a/specification/attestation/resource-manager/readme.md +++ b/specification/attestation/resource-manager/readme.md @@ -41,6 +41,20 @@ input-file: --- # Code Generation +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) --- ## C# diff --git a/specification/attestation/resource-manager/readme.python.md b/specification/attestation/resource-manager/readme.python.md new file mode 100644 index 000000000000..9e387739adc7 --- /dev/null +++ b/specification/attestation/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.attestation + package-name: azure-mgmt-attestation + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/attestation/azure-mgmt-attestation/azure/mgmt/attestation +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/attestation/azure-mgmt-attestation +``` From 8fff657a61cd85b0a9ce9a42d17dc4f536d9f7a8 Mon Sep 17 00:00:00 2001 From: bradrich-msft <53872276+bradrich-msft@users.noreply.github.com> Date: Sun, 1 Sep 2019 22:53:25 -0700 Subject: [PATCH 076/123] Updating databases for new read scale property (#6902) --- .../preview/2017-10-01-preview/databases.json | 229 +++++++++++++----- ...ateHyperscaleDatabaseWithReadReplicas.json | 79 ++++++ ...CreateVCoreDatabaseByServiceObjective.json | 18 +- .../CreateVCoreDatabaseBySkuNameCapacity.json | 12 +- ...eVCoreDatabaseBySkuTierFamilyCapacity.json | 78 ++++++ .../examples/GetVCoreDatabase.json | 70 +++--- .../examples/ListVCoreDatabasesByServer.json | 120 ++++----- .../sql/resource-manager/common/v1/types.json | 31 +-- 8 files changed, 457 insertions(+), 180 deletions(-) create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json index a7177910725b..fa01eff503c0 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json @@ -16,53 +16,6 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/upgradeDataWarehouse": { - "post": { - "tags": [ - "Databases" - ], - "description": "Upgrades a data warehouse.", - "operationId": "Databases_UpgradeDataWarehouse", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "name": "databaseName", - "in": "path", - "description": "The name of the database to be upgraded.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully upgraded the data warehouse." - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured on server. Please contact support.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." - }, - "202": { - "description": "Upgrading the data warehouse is in progress." - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Upgrades a data warehouse.": { - "$ref": "./examples/UpgradeDataWarehouse.json" - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases": { "get": { "tags": [ @@ -92,7 +45,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." } }, "x-ms-pageable": { @@ -137,7 +90,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -186,7 +139,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured on server. Please contact support.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Creating or updating the database is in progress." @@ -232,6 +185,12 @@ }, "Creates a database from recoverableDatabaseId.": { "$ref": "./examples/CreateDatabaseRecoveryMode.json" + }, + "Creates a Hyperscale database and specifies the number of readonly replicas.": { + "$ref": "./examples/CreateHyperscaleDatabaseWithReadReplicas.json" + }, + "Creates a VCore database by specifying sku name.": { + "$ref": "./examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json" } } }, @@ -263,7 +222,7 @@ "description": "Successfully deleted the database." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + "description": "*** Error Responses: ***\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." }, "202": { "description": "Deleting the database is in progress." @@ -319,7 +278,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured on server. Please contact support.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Updating the database is in progress." @@ -369,7 +328,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." } }, "x-ms-pageable": { @@ -468,7 +427,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" }, "202": { "description": "Resuming the database is in progress." @@ -482,6 +441,53 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/upgradeDataWarehouse": { + "post": { + "tags": [ + "Databases" + ], + "description": "Upgrades a data warehouse.", + "operationId": "Databases_UpgradeDataWarehouse", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be upgraded.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully upgraded the data warehouse." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 and Key Type is RSA.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Upgrading the data warehouse is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upgrades a data warehouse.": { + "$ref": "./examples/UpgradeDataWarehouse.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/move": { "post": { "tags": [ @@ -524,7 +530,7 @@ "description": "Successfully renamed the database." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 SourceDatabaseNotFound - The source database does not exist." + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." } }, "x-ms-examples": { @@ -555,6 +561,36 @@ } } }, + "Sku": { + "description": "An ARM Resource SKU.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU, typically, a letter + Number code, e.g. P3.", + "type": "string" + }, + "tier": { + "description": "The tier or edition of the particular SKU, e.g. Basic, Premium.", + "type": "string" + }, + "size": { + "description": "Size of the particular SKU", + "type": "string" + }, + "family": { + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here.", + "type": "string" + }, + "capacity": { + "format": "int32", + "description": "Capacity of the particular SKU.", + "type": "integer" + } + } + }, "DatabaseProperties": { "description": "The database's properties.", "type": "object", @@ -644,7 +680,8 @@ "Resuming", "Scaling", "OfflineChangingDwPerformanceTiers", - "OnlineChangingDwPerformanceTiers" + "OnlineChangingDwPerformanceTiers", + "Disabled" ], "type": "string", "readOnly": true, @@ -774,7 +811,7 @@ "readOnly": true }, "readScale": { - "description": "The state of read-only routing. If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica in the same region.", + "description": "If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica. This property is only settable for Premium and Business Critical databases.", "enum": [ "Enabled", "Disabled" @@ -789,8 +826,13 @@ "update" ] }, + "readReplicaCount": { + "format": "int32", + "description": "The number of readonly secondary replicas associated with the database to which readonly application intent connections may be routed. This property is only settable for Hyperscale edition databases.", + "type": "integer" + }, "currentSku": { - "$ref": "../../../common/v1/types.json#/definitions/Sku", + "$ref": "#/definitions/Sku", "description": "The name and tier of the SKU.", "readOnly": true }, @@ -803,6 +845,69 @@ "format": "double", "description": "Minimal capacity that database will always have allocated, if not paused", "type": "number" + }, + "pausedDate": { + "format": "date-time", + "description": "The date when database was paused by user configuration or action (ISO8601 format). Null if the database is ready.", + "type": "string", + "readOnly": true + }, + "resumedDate": { + "format": "date-time", + "description": "The date when database was resumed by user action or database login (ISO8601 format). Null if the database is paused.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } } } }, @@ -814,12 +919,12 @@ "type": "object", "allOf": [ { - "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + "$ref": "#/definitions/TrackedResource" } ], "properties": { "sku": { - "$ref": "../../../common/v1/types.json#/definitions/Sku", + "$ref": "#/definitions/Sku", "description": "The database SKU.\r\n\r\nThe list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:\r\n\r\n```azurecli\r\naz sql db list-editions -l -o table\r\n````\r\n\r\n```powershell\r\nGet-AzSqlServerServiceObjective -Location \r\n````\r\n" }, "kind": { @@ -844,7 +949,7 @@ "type": "object", "properties": { "sku": { - "$ref": "../../../common/v1/types.json#/definitions/Sku", + "$ref": "#/definitions/Sku", "description": "The name and tier of the SKU." }, "properties": { @@ -971,4 +1076,4 @@ } } } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json new file mode 100644 index 000000000000..ba48154d3c5d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-10-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "capacity": 1 + }, + "properties": { + "readReplicaCount": 3 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 1 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "HS_Gen4_1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "readScale": "Enabled", + "readReplicaCount": 3 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 1 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "HS_Gen4_1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "readScale": "Enabled", + "readReplicaCount": 3 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json index b06fbe8550a7..7dae6aee65b6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json @@ -4,7 +4,7 @@ "resourceGroupName": "Default-SQL-SouthEastAsia", "serverName": "testsvr", "databaseName": "testdb", - "api-version": "2017-03-01-preview", + "api-version": "2017-10-01-preview", "parameters": { "location": "southeastasia", "sku": { @@ -34,10 +34,13 @@ "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 }, "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } @@ -61,14 +64,17 @@ "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 }, "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } }, "202": {} } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json index 9a6aa83a7e9f..d86fb7c31820 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json @@ -4,7 +4,7 @@ "resourceGroupName": "Default-SQL-SouthEastAsia", "serverName": "testsvr", "databaseName": "testdb", - "api-version": "2017-03-01-preview", + "api-version": "2017-10-01-preview", "parameters": { "location": "southeastasia", "sku": { @@ -33,7 +33,9 @@ "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 }, "location": "southeastasia", "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", @@ -60,7 +62,9 @@ "defaultSecondaryLocation": "North Europe", "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 }, "location": "southeastasia", "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", @@ -70,4 +74,4 @@ }, "202": {} } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json new file mode 100644 index 000000000000..f418610356b5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-10-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "BC_Gen4_2" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json index 6e18e7339fc9..62124ea4726e 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json @@ -1,37 +1,39 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default-SQL-SouthEastAsia", - "serverName": "testsvr", - "databaseName": "testdb", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "sku": { - "name": "BC_Gen4_2", - "tier": "BusinessCritical", - "capacity": 2 - }, - "kind": "v12.0,user", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 268435456000, - "status": "Online", - "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", - "creationDate": "2017-06-07T04:41:33.937Z", - "currentServiceObjectiveName": "BC_Gen4_2", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", - "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", - "name": "testdb", - "type": "Microsoft.Sql/servers/databases" - } + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + } } - } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json index 179abb83f3b8..48a370ef982c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json @@ -1,61 +1,63 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default-SQL-SouthEastAsia", - "serverName": "testsvr", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "sku": { - "name": "BC_Gen4_2", - "tier": "BusinessCritical", - "capacity": 2 - }, - "kind": "v12.0,user,vcore", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 268435456000, - "status": "Online", - "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", - "creationDate": "2017-06-07T04:41:33.937Z", - "currentServiceObjectiveName": "BC_Gen4_2", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", - "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600 - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", - "name": "testdb", - "type": "Microsoft.Sql/servers/databases" - }, - { - "sku": { - "name": "System0", - "tier": "System" - }, - "kind": "v12.0,system", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 32212254720, - "status": "Online", - "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", - "creationDate": "2017-06-07T04:23:42.537Z", - "currentServiceObjectiveName": "System0", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", - "name": "master", - "type": "Microsoft.Sql/servers/databases" - } - ] - } + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "System0", + "tier": "System" + }, + "kind": "v12.0,system", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "status": "Online", + "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", + "creationDate": "2017-06-07T04:23:42.537Z", + "currentServiceObjectiveName": "System0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", + "name": "master", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } } - } -} +} \ No newline at end of file diff --git a/specification/sql/resource-manager/common/v1/types.json b/specification/sql/resource-manager/common/v1/types.json index 61912dda86a3..e05c8e98a79e 100644 --- a/specification/sql/resource-manager/common/v1/types.json +++ b/specification/sql/resource-manager/common/v1/types.json @@ -68,33 +68,34 @@ } }, "Sku": { - "description": "The resource model definition representing SKU", + "description": "An ARM Resource SKU.", + "required": [ + "name" + ], + "type": "object", "properties": { "name": { - "type": "string", - "description": "The name of the SKU. Ex - P3. It is typically a letter+number code" + "description": "The name of the SKU, typically, a letter + Number code, e.g. P3.", + "type": "string" }, "tier": { - "type": "string", - "description": "This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT." + "description": "The tier or edition of the particular SKU, e.g. Basic, Premium.", + "type": "string" }, "size": { - "type": "string", - "description": "The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. " + "description": "Size of the particular SKU", + "type": "string" }, "family": { - "type": "string", - "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here." + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here.", + "type": "string" }, "capacity": { - "type": "integer", "format": "int32", - "description": "If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted." + "description": "Capacity of the particular SKU.", + "type": "integer" } - }, - "required": [ - "name" - ] + } }, "ResourceIdentity": { "description": "Azure Active Directory identity configuration for a resource.", From 935dfad0a819f23f0914d8aed6f6c342115d08f1 Mon Sep 17 00:00:00 2001 From: TinaHu1 <51737887+TinaHu1@users.noreply.github.com> Date: Tue, 3 Sep 2019 09:33:28 +0800 Subject: [PATCH 077/123] [DataFactory]Add support for ORC dataset (#7040) --- .../2018-06-01/entityTypes/Dataset.json | 29 ++++++++++++++++++ .../2018-06-01/entityTypes/Pipeline.json | 30 +++++++++++++++++++ 2 files changed, 59 insertions(+) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index 88b3adaca912..f7a94e505a4e 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -719,6 +719,35 @@ "location" ] }, + "OrcDataset": { + "x-ms-discriminator-value": "Orc", + "description": "ORC dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "ORC dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OrcDatasetTypeProperties" + } + } + }, + "OrcDatasetTypeProperties": { + "description": "ORC dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the ORC data storage." + } + }, + "required": [ + "location" + ] + }, "BinaryDataset": { "x-ms-discriminator-value": "Binary", "description": "Binary dataset.", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index 36c6b2cbd239..459515781211 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -784,6 +784,21 @@ } } }, + "OrcSource": { + "description": "A copy activity ORC source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "ORC store settings." + } + } + }, "DelimitedTextSink": { "description": "A copy activity DelimitedText sink.", "type": "object", @@ -822,6 +837,21 @@ } } }, + "OrcSink": { + "description": "A copy activity ORC sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "ORC store settings." + } + } + }, "CopyActivity": { "x-ms-discriminator-value": "Copy", "description": "Copy activity.", From f93b7b62c9c611f1f655c0ca919d311488265d98 Mon Sep 17 00:00:00 2001 From: David Zhao <31305478+davidzhaoyue@users.noreply.github.com> Date: Tue, 3 Sep 2019 10:10:28 +0800 Subject: [PATCH 078/123] [Datafactory] Add a new property in Office365 connector (#7082) * [Datafactory] Office 365 - Add outputColumns * Resovle comments --- .../stable/2018-06-01/entityTypes/Pipeline.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index 459515781211..775c7696cc14 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -1960,7 +1960,7 @@ } }, "Office365Source": { - "description": "A copy activity source for an Office365 service.", + "description": "A copy activity source for an Office 365 service.", "type": "object", "allOf": [ { @@ -1987,6 +1987,10 @@ "endTime": { "type": "object", "description": "End time of the requested range for this dataset. Type: string (or Expression with resultType string)." + }, + "outputColumns": { + "type": "object", + "description": "The columns to be read out from the Office 365 table. Type: array of objects (or Expression with resultType array of objects). Example: [ { \"name\": \"Id\" }, { \"name\": \"CreatedDateTime\" } ]" } } }, From 459d7b1de10d34627241cb5ca39896af0b4931bd Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Mon, 2 Sep 2019 22:55:00 -0400 Subject: [PATCH 079/123] fix: cspell failures (#7099) * fix: cspell failures Related to #7060 * fix: Additional spelling issues from #6902 --- custom-words.txt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/custom-words.txt b/custom-words.txt index c88f20cd0e5b..a55779efd30b 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -554,6 +554,7 @@ globalconfiguration Gloo gluster glusterfs +GOARCH GPUs Grammarly GRANTACE @@ -801,6 +802,7 @@ maximumblobsize maxmemory maxpagesize maxresults +MAXSIZE mbaldwin Mbps MCAS @@ -917,6 +919,7 @@ nostore notificationchannels notificationhubs notstarted +nouploadcache nsdname nsku ntext @@ -944,6 +947,7 @@ oobe Oozie openapi opencode +opencontainers openid operationalinsights Operationalization @@ -1076,9 +1080,9 @@ quniform quotametrics quotastatus racyscore -randint RAGRS RAGZRS +randint Rankable ravbhatnagar rawxml @@ -1283,8 +1287,8 @@ smalldatetime smallint smallmoney SMBIOS -snapshotsdr snapshotrun +snapshotsdr SNAT softwareplan SOHSV @@ -1300,6 +1304,7 @@ southeastasia southindia sparkconf sparql +SPDX SQLAG SQLDB SQLMI @@ -1531,6 +1536,7 @@ visualsearch visualstudio vlan vlanid +Vldb VM's vmextension VMILR From 5011c5f0f18345c1a97aacd0cac220dd7326b79a Mon Sep 17 00:00:00 2001 From: Arcturus Date: Tue, 3 Sep 2019 11:21:17 +0800 Subject: [PATCH 080/123] Fix bad package name for storagecache in go sdk (#7096) --- specification/storagecache/resource-manager/readme.go.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/storagecache/resource-manager/readme.go.md b/specification/storagecache/resource-manager/readme.go.md index d11946e954ce..11a3e71f4cf8 100644 --- a/specification/storagecache/resource-manager/readme.go.md +++ b/specification/storagecache/resource-manager/readme.go.md @@ -15,5 +15,5 @@ These settings apply only when `--tag=package-2019-08 --go` is specified on the Please also specify `--go-sdks-folder=`. ```yaml $(tag) == 'package-2019-08' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-08/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-08-01-preview/$(namespace) ``` From 7d870c595a21c6c415d2cef76ccceebb8c2d87fd Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 3 Sep 2019 14:36:21 +0800 Subject: [PATCH 081/123] invalid non ascii character was causing problems (#7102) --- specification/sql/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index a94bde5900e2..dfb54fe3964d 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -644,7 +644,7 @@ override-info: directive: - suppress: TrackedResourcePatchOperation from: restorableDroppedManagedDatabases.json - reason: dropped database shouldn’t support patch + reason: dropped database shouldn't support patch ``` --- From 4a2e25f68dc4a0528ebdc6b0c0d6c7d691089b4d Mon Sep 17 00:00:00 2001 From: Chuang <54572251+xccc-msft@users.noreply.github.com> Date: Wed, 4 Sep 2019 00:45:20 +0800 Subject: [PATCH 082/123] Policy: add Java readme for package-policy-2019-06 (#7106) * add Java readme for resources * move Java section to readme.java.md --- .../resources/resource-manager/readme.java.md | 272 ++++++++++++++++++ .../resources/resource-manager/readme.md | 271 +---------------- 2 files changed, 273 insertions(+), 270 deletions(-) create mode 100644 specification/resources/resource-manager/readme.java.md diff --git a/specification/resources/resource-manager/readme.java.md b/specification/resources/resource-manager/readme.java.md new file mode 100644 index 000000000000..e9efe358eded --- /dev/null +++ b/specification/resources/resource-manager/readme.java.md @@ -0,0 +1,272 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.resources +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources +``` + +### Java multi-api + +Generate all API versions currently shipped for this package + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-features-2015-12 + - tag: package-locks-2016-09 + - tag: package-policy-2019-06 + - tag: package-policy-2019-01 + - tag: package-policy-2018-05 + - tag: package-policy-2018-03 + - tag: package-policy-2016-12 + - tag: package-resources-2019-08 + - tag: package-resources-2019-07 + - tag: package-resources-2019-0510 + - tag: package-resources-2019-05 + - tag: package-resources-2019-03 + - tag: package-resources-2018-02 + - tag: package-resources-2016-09 + - tag: package-subscriptions-2018-06 + - tag: package-subscriptions-2016-06 +``` + +### Tag: package-features-2015-12 and java + +These settings apply only when `--tag=package-features-2015-12 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-features-2015-12' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.features.v2015_12_01 + output-folder: $(azure-libraries-for-java-folder)/features/resource-manager/v2015_12_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Features"}' +``` + +### Tag: package-locks-2016-09 and java + +These settings apply only when `--tag=package-locks-2016-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-locks-2016-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.locks.v2016_09_01 + output-folder: $(azure-libraries-for-java-folder)/locks/resource-manager/v2016_09_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Locks"}' +``` + +### Tag: package-policy-2019-06 and java + +These settings apply only when `--tag=package-policy-2019-06 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2019-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2019_06_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + +### Tag: package-policy-2019-01 and java + +These settings apply only when `--tag=package-policy-2019-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2019-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2019_01_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2019_01_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + +### Tag: package-policy-2018-05 and java + +These settings apply only when `--tag=package-policy-2018-05 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2018-05' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2018_05_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2018_05_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + +### Tag: package-policy-2018-03 and java + +These settings apply only when `--tag=package-policy-2018-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2018-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2018_03_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2018_03_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + +### Tag: package-policy-2016-12 and java + +These settings apply only when `--tag=package-policy-2016-12 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-policy-2016-12' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.policy.v2016_12_01 + output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2016_12_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "Policy"}' +directive: + from: policyAssignments.json + where: $.definitions.PolicyAssignmentProperties.properties.scope + transform: $['x-ms-client-name'] = 'scopeProperty' +``` + +### Tag: package-resources-2019-08 and java + +These settings apply only when `--tag=package-resources-2019-08 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-08' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_08_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_08_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2019-07 and java + +These settings apply only when `--tag=package-resources-2019-07 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_07_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_07_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2019-0510 and java + +These settings apply only when `--tag=package-resources-2019-0510 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-0510' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_05_10 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_05_10 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2019-05 and java + +These settings apply only when `--tag=package-resources-2019-05 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-05' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_05_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_05_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2019-03 and java + +These settings apply only when `--tag=package-resources-2019-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2019-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_03_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_03_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2018-02 and java + +These settings apply only when `--tag=package-resources-2018-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2018-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2018_02_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2018_02_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-resources-2016-09 and java + +These settings apply only when `--tag=package-resources-2016-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-resources-2016-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2016_09_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2016_09_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-subscriptions-2018-06 and java + +These settings apply only when `--tag=package-subscriptions-2018-06--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2018-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2018_06_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2018_06_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-subscriptions-2016-06 and java + +These settings apply only when `--tag=package-subscriptions-2016-06--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2016-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2016_06_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2016_06_01 +regenerate-manager: true +generate-interface: true +``` diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 88ea43b5333c..aa73db63b301 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -490,276 +490,7 @@ See configuration in [readme.go.md](./readme.go.md) ## Java -These settings apply only when `--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(java) -azure-arm: true -fluent: true -namespace: com.microsoft.azure.management.resources -license-header: MICROSOFT_MIT_NO_CODEGEN -payload-flattening-threshold: 1 -output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-resources -``` - -### Java multi-api - -Generate all API versions currently shipped for this package - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-features-2015-12 - - tag: package-locks-2016-09 - - tag: package-policy-2019-06 - - tag: package-policy-2019-01 - - tag: package-policy-2018-05 - - tag: package-policy-2018-03 - - tag: package-policy-2016-12 - - tag: package-resources-2019-08 - - tag: package-resources-2019-07 - - tag: package-resources-2019-0510 - - tag: package-resources-2019-05 - - tag: package-resources-2019-03 - - tag: package-resources-2018-02 - - tag: package-resources-2016-09 - - tag: package-subscriptions-2018-06 - - tag: package-subscriptions-2016-06 -``` - -### Tag: package-features-2015-12 and java - -These settings apply only when `--tag=package-features-2015-12 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-features-2015-12' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.features.v2015_12_01 - output-folder: $(azure-libraries-for-java-folder)/features/resource-manager/v2015_12_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Features"}' -``` - -### Tag: package-locks-2016-09 and java - -These settings apply only when `--tag=package-locks-2016-09 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-locks-2016-09' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.locks.v2016_09_01 - output-folder: $(azure-libraries-for-java-folder)/locks/resource-manager/v2016_09_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Locks"}' -``` - -### Tag: package-policy-2019-06 and java - -These settings apply only when `--tag=package-policy-2019-06 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-policy-2019-06' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.policy.v2019_06_01 - output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2019_06_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Policy"}' -directive: - from: policyAssignments.json - where: $.definitions.PolicyAssignmentProperties.properties.scope - transform: $['x-ms-client-name'] = 'scopeProperty' -``` - -### Tag: package-policy-2019-01 and java - -These settings apply only when `--tag=package-policy-2019-01 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-policy-2019-01' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.policy.v2019_01_01 - output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2019_01_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Policy"}' -directive: - from: policyAssignments.json - where: $.definitions.PolicyAssignmentProperties.properties.scope - transform: $['x-ms-client-name'] = 'scopeProperty' -``` - -### Tag: package-policy-2018-05 and java - -These settings apply only when `--tag=package-policy-2018-05 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-policy-2018-05' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.policy.v2018_05_01 - output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2018_05_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Policy"}' -directive: - from: policyAssignments.json - where: $.definitions.PolicyAssignmentProperties.properties.scope - transform: $['x-ms-client-name'] = 'scopeProperty' -``` - -### Tag: package-policy-2018-03 and java - -These settings apply only when `--tag=package-policy-2018-03 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-policy-2018-03' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.policy.v2018_03_01 - output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2018_03_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Policy"}' -directive: - from: policyAssignments.json - where: $.definitions.PolicyAssignmentProperties.properties.scope - transform: $['x-ms-client-name'] = 'scopeProperty' -``` - -### Tag: package-policy-2016-12 and java - -These settings apply only when `--tag=package-policy-2016-12 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-policy-2016-12' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.policy.v2016_12_01 - output-folder: $(azure-libraries-for-java-folder)/policy/resource-manager/v2016_12_01 -regenerate-manager: true -generate-interface: true -fconfig: '{"moduleName": "Policy"}' -directive: - from: policyAssignments.json - where: $.definitions.PolicyAssignmentProperties.properties.scope - transform: $['x-ms-client-name'] = 'scopeProperty' -``` - -### Tag: package-resources-2019-08 and java - -These settings apply only when `--tag=package-resources-2019-08 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2019-08' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_08_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_08_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2019-07 and java - -These settings apply only when `--tag=package-resources-2019-07 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2019-07' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_07_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_07_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2019-0510 and java - -These settings apply only when `--tag=package-resources-2019-0510 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2019-0510' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_05_10 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_05_10 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2019-05 and java - -These settings apply only when `--tag=package-resources-2019-05 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2019-05' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_05_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_05_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2019-03 and java - -These settings apply only when `--tag=package-resources-2019-03 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2019-03' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_03_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_03_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2018-02 and java - -These settings apply only when `--tag=package-resources-2018-02 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2018-02' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2018_02_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2018_02_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-resources-2016-09 and java - -These settings apply only when `--tag=package-resources-2016-09 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-resources-2016-09' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2016_09_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2016_09_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-subscriptions-2018-06 and java - -These settings apply only when `--tag=package-subscriptions-2018-06--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-subscriptions-2018-06' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2018_06_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2018_06_01 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-subscriptions-2016-06 and java - -These settings apply only when `--tag=package-subscriptions-2016-06--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-subscriptions-2016-06' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2016_06_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2016_06_01 -regenerate-manager: true -generate-interface: true -``` +See configuration in [readme.java.md](./readme.java.md) # Validation From 1dd4c34f14c951dbfa5458d0ff2efadf5d9ef702 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Tue, 3 Sep 2019 13:17:08 -0400 Subject: [PATCH 083/123] chore: jsonfmt sql (#7103) --- .../preview/2017-10-01-preview/databases.json | 2 +- ...ateHyperscaleDatabaseWithReadReplicas.json | 2 +- ...CreateVCoreDatabaseByServiceObjective.json | 8 +- .../CreateVCoreDatabaseBySkuNameCapacity.json | 2 +- ...eVCoreDatabaseBySkuTierFamilyCapacity.json | 8 +- .../examples/GetVCoreDatabase.json | 72 +++++------ .../examples/ListVCoreDatabasesByServer.json | 122 +++++++++--------- 7 files changed, 106 insertions(+), 110 deletions(-) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json index fa01eff503c0..08a4b9ae7774 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databases.json @@ -1076,4 +1076,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json index ba48154d3c5d..3fa2ca69c47c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateHyperscaleDatabaseWithReadReplicas.json @@ -76,4 +76,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json index 7dae6aee65b6..dbd6ab885cac 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json @@ -39,8 +39,7 @@ "readReplicaCount": 1 }, "location": "southeastasia", - "id": - "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } @@ -69,12 +68,11 @@ "readReplicaCount": 1 }, "location": "southeastasia", - "id": - "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json index d86fb7c31820..e91f678c1dcd 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json @@ -74,4 +74,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json index f418610356b5..ae43ecd57f74 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/CreateVCoreDatabaseBySkuTierFamilyCapacity.json @@ -37,8 +37,7 @@ "readReplicaCount": 1 }, "location": "southeastasia", - "id": - "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } @@ -67,12 +66,11 @@ "readReplicaCount": 1 }, "location": "southeastasia", - "id": - "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", "name": "testdb", "type": "Microsoft.Sql/servers/databases" } }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json index 62124ea4726e..6c1f4b684ce9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/GetVCoreDatabase.json @@ -1,39 +1,39 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default-SQL-SouthEastAsia", - "serverName": "testsvr", - "databaseName": "testdb", - "api-version": "2017-10-01-preview" - }, - "responses": { - "200": { - "body": { - "sku": { - "name": "BC_Gen4", - "tier": "BusinessCritical", - "capacity": 2 - }, - "kind": "v12.0,user", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 268435456000, - "status": "Online", - "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", - "creationDate": "2017-06-07T04:41:33.937Z", - "currentServiceObjectiveName": "BC_Gen4_2", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", - "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600, - "readScale": "Enabled", - "readReplicaCount": 1 - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", - "name": "testdb", - "type": "Microsoft.Sql/servers/databases" - } - } + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } } + } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json index 48a370ef982c..facdd2ff8af5 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ListVCoreDatabasesByServer.json @@ -1,63 +1,63 @@ { - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "Default-SQL-SouthEastAsia", - "serverName": "testsvr", - "api-version": "2017-10-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "sku": { - "name": "BC_Gen4", - "tier": "BusinessCritical", - "capacity": 2 - }, - "kind": "v12.0,user,vcore", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 268435456000, - "status": "Online", - "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", - "creationDate": "2017-06-07T04:41:33.937Z", - "currentServiceObjectiveName": "BC_Gen4_2", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", - "licenseType": "LicenseIncluded", - "maxLogSizeBytes": 104857600, - "readScale": "Enabled", - "readReplicaCount": 1 - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", - "name": "testdb", - "type": "Microsoft.Sql/servers/databases" - }, - { - "sku": { - "name": "System0", - "tier": "System" - }, - "kind": "v12.0,system", - "properties": { - "collation": "SQL_Latin1_General_CP1_CI_AS", - "maxSizeBytes": 32212254720, - "status": "Online", - "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", - "creationDate": "2017-06-07T04:23:42.537Z", - "currentServiceObjectiveName": "System0", - "defaultSecondaryLocation": "North Europe", - "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" - }, - "location": "southeastasia", - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", - "name": "master", - "type": "Microsoft.Sql/servers/databases" - } - ] - } - } + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2017-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "readReplicaCount": 1 + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "System0", + "tier": "System" + }, + "kind": "v12.0,system", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "status": "Online", + "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", + "creationDate": "2017-06-07T04:23:42.537Z", + "currentServiceObjectiveName": "System0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", + "name": "master", + "type": "Microsoft.Sql/servers/databases" + } + ] + } } -} \ No newline at end of file + } +} From e6344a9accf30282f667ecae098da32838bbc0cd Mon Sep 17 00:00:00 2001 From: Sandeep Bansal Date: Tue, 3 Sep 2019 14:45:39 -0700 Subject: [PATCH 084/123] Added documentation for patch api call used to update tags (#7044) * Added documentation for patch api call used to update tags * Fixing missing } --- .../stable/2019-06-01/bastionHost.json | 64 ++++++++++++++ .../examples/BastionHostUpdateTags.json | 86 +++++++++++++++++++ 2 files changed, 150 insertions(+) create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/BastionHostUpdateTags.json diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/bastionHost.json index 8da661f085d9..1b05be297eae 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/bastionHost.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/bastionHost.json @@ -186,6 +186,70 @@ "x-ms-long-running-operation-options": { "final-state-via": "azure-async-operation" } + }, + "patch": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_UpdateTags", + "x-ms-examples": { + "BastionHostUpdate": { + "$ref": "./examples/BastionHostUpdateTags.json" + } + }, + "description": "Updates bastion host tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the BastionHost." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the bastionHost." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "bastionHostParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a bastion host tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated bastion host.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the updated bastion host.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/BastionHostUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/BastionHostUpdateTags.json new file mode 100644 index 000000000000..1843f8b94a8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/BastionHostUpdateTags.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2019-06-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "bastionHostParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} From c136fa74ed9b0fb69be01cce6c94fb44255029f0 Mon Sep 17 00:00:00 2001 From: yoshkedi <54810021+yoshkedi@users.noreply.github.com> Date: Wed, 4 Sep 2019 04:27:58 +0300 Subject: [PATCH 085/123] sort definitions and parameters by ABC (#7108) --- .../2019-01-01-preview/SecurityInsights.json | 5324 ++++++++--------- 1 file changed, 2662 insertions(+), 2662 deletions(-) diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index f66e6025388b..09193229b02f 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -50,7 +50,7 @@ "200": { "description": "OK. Successfully retrieved operations list.", "schema": { - "$ref": "#/definitions/operationsList" + "$ref": "#/definitions/OperationsList" } } }, @@ -1929,109 +1929,261 @@ } }, "definitions": { - "operation": { - "description": "Operation provided by provider", + "AADDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AAD (Azure Active Directory) data connector.", "properties": { - "name": { - "type": "string", - "description": "Name of the operation" + "properties": { + "$ref": "#/definitions/AADDataConnectorProperties", + "description": "AAD (Azure Active Directory) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" }, - "display": { - "type": "object", - "description": "Properties of the operation", - "properties": { - "provider": { - "type": "string", - "description": "Provider name" - }, - "resource": { - "type": "string", - "description": "Resource name" - }, - "operation": { - "type": "string", - "description": "Operation name" - }, - "description": { - "type": "string", - "description": "Description of the operation" - } - } + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" } - } + ], + "description": "AAD (Azure Active Directory) data connector properties.", + "type": "object" }, - "operationsList": { - "description": "Lists the operations available in the SecurityInsights RP.", + "AATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", "properties": { - "nextLink": { - "description": "URL to fetch the next set of operations.", - "type": "string" - }, - "value": { - "description": "Array of operations", - "type": "array", - "items": { - "$ref": "#/definitions/operation" - } + "properties": { + "$ref": "#/definitions/AATPDataConnectorProperties", + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true } }, - "required": [ - "value" - ] + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" }, - "CloudError": { - "x-ms-external": true, + "AATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "ASCDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents ASC (Azure Security Center) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/ASCDataConnectorProperties", + "description": "ASC (Azure Security Center) data connector properties.", + "x-ms-client-flatten": true + } + }, "type": "object", - "description": "Error response structure.", + "x-ms-discriminator-value": "AzureSecurityCenter" + }, + "ASCDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", "properties": { - "error": { - "x-ms-client-flatten": true, - "description": "Error data", - "$ref": "#/definitions/CloudErrorBody" + "subscriptionId": { + "description": "The subscription id to connect to, and get the data from.", + "type": "string" } - } + }, + "type": "object" }, - "CloudErrorBody": { - "x-ms-external": true, + "AccountEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an account entity.", + "properties": { + "properties": { + "$ref": "#/definitions/AccountEntityProperties", + "description": "Account entity properties", + "x-ms-client-flatten": true + } + }, "type": "object", - "description": "Error details.", + "x-ms-discriminator-value": "Account" + }, + "AccountEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Account entity property bag.", "properties": { - "code": { + "aadTenantId": { + "description": "The Azure Active Directory tenant id.", "readOnly": true, - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + "type": "string" }, - "message": { + "aadUserId": { + "description": "The Azure Active Directory user id.", "readOnly": true, - "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." + "type": "string" + }, + "accountName": { + "description": "The name of the account. This field should hold only the name without any domain added to it, i.e. administrator.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name of the account.", + "readOnly": true, + "type": "string" + }, + "hostEntityId": { + "description": "The Host entity id that contains the account in case it is a local account (not domain joined)", + "readOnly": true, + "type": "string" + }, + "isDomainJoined": { + "description": "Determines whether this is a domain account.", + "readOnly": true, + "type": "boolean" + }, + "ntDomain": { + "description": "The NetBIOS domain name as it appears in the alert format – domain\\username. Examples: NT AUTHORITY.", + "readOnly": true, + "type": "string" + }, + "objectGuid": { + "description": "The objectGUID attribute is a single-value attribute that is the unique identifier for the object, assigned by active directory.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "puid": { + "description": "The Azure Active Directory Passport User ID.", + "readOnly": true, + "type": "string" + }, + "sid": { + "description": "The account security identifier, e.g. S-1-5-18.", + "readOnly": true, + "type": "string" + }, + "upnSuffix": { + "description": "The user principal name suffix for the account, in some cases it is also the domain name. Examples: contoso.com.", + "readOnly": true, + "type": "string" } - } + }, + "type": "object" }, - "AlertRulesList": { - "description": "List all the alert rules.", + "Action": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Action for alert rule.", + "properties": { + "etag": { + "description": "Etag of the action.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ActionProperties", + "description": "Action properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "ActionProperties": { + "description": "Action property bag.", + "properties": { + "triggerUri": { + "description": "The uri for the action to trigger.", + "type": "string" + } + }, + "type": "object" + }, + "ActionsList": { + "description": "List all the actions.", "properties": { "nextLink": { + "description": "URL to fetch the next set of actions.", "readOnly": true, - "description": "URL to fetch the next set of alert rules.", "type": "string" }, "value": { - "description": "Array of alert rules.", - "type": "array", + "description": "Array of actions.", "items": { - "$ref": "#/definitions/AlertRule" - } + "$ref": "#/definitions/Action" + }, + "type": "array" } }, "required": [ "value" ] }, - "AlertRule": { - "type": "object", - "description": "Alert rule.", + "Aggregations": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/AggregationsKind" + } + ], + "description": "The aggregation.", "discriminator": "kind", + "type": "object" + }, + "AggregationsKind": { + "description": "Describes an Azure resource with kind.", + "properties": { + "kind": { + "description": "The kind of the setting", + "enum": [ + "CasesAggregation" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AggregationsKind" + } + } + }, + "type": "object" + }, + "AlertRule": { "allOf": [ { "$ref": "#/definitions/Resource" @@ -2040,28 +2192,30 @@ "$ref": "#/definitions/AlertRuleKind" } ], + "description": "Alert rule.", + "discriminator": "kind", "properties": { "etag": { - "type": "string", - "description": "Etag of the alert rule." + "description": "Etag of the alert rule.", + "type": "string" } - } + }, + "type": "object" }, "AlertRuleKind": { - "type": "object", "description": "Describes an Azure resource with kind.", "properties": { "kind": { - "type": "string", "description": "The kind of the alert rule", "enum": [ "Scheduled", "Filter", "Fusion" ], + "type": "string", "x-ms-enum": { - "name": "AlertRuleKind", "modelAsString": true, + "name": "AlertRuleKind", "values": [ { "value": "Scheduled" @@ -2075,596 +2229,584 @@ ] } } - } - }, - "AlertRuleTriggerOperator": { - "type": "string", - "enum": [ - "GreaterThan", - "LessThan", - "Equal", - "NotEqual" - ], - "x-ms-enum": { - "name": "TriggerOperator", - "modelAsString": false }, - "description": "The operation against the threshold that triggers alert rule." + "type": "object" }, - "AttackTactic": { - "type": "string", - "enum": [ - "InitialAccess", - "Execution", - "Persistence", - "PrivilegeEscalation", - "DefenseEvasion", - "CredentialAccess", - "Discovery", - "LateralMovement", - "Collection", - "Exfiltration", - "CommandAndControl" - ], - "x-ms-enum": { - "name": "AttackTactic", - "modelAsString": false - }, - "description": "The severity for alerts created by this alert rule." - }, - "DataConnectorStatus": { - "type": "object", - "description": "alert rule template data connector status", - "properties": { - "connectorId": { - "type": "string", - "description": "the connector id" - }, - "dataTypes": { - "type": "object", - "additionalProperties": { - "type": "string", - "enum": [ - "Exist", - "NotExist" - ], - "x-ms-enum": { - "name": "DataTypeStatus", - "modelAsString": false - } - }, - "description": "The data types availability map" - } - } - }, - "ScheduledAlertRule": { - "x-ms-discriminator-value": "Scheduled", - "type": "object", - "description": "Represents scheduled alert rule.", + "AlertRuleTemplate": { "allOf": [ { - "$ref": "#/definitions/AlertRule" + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/AlertRuleKind" } ], + "description": "Alert rule template.", + "discriminator": "kind", "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Scheduled alert rule properties", - "$ref": "#/definitions/ScheduledAlertRuleProperties" - } - } - }, - "ScheduledAlertRuleProperties": { - "type": "object", - "description": "Alert rule property bag.", - "properties": { - "displayName": { - "type": "string", - "description": "The display name for alerts created by this alert rule." - }, - "description": { - "type": "string", - "description": "The description of the alert rule." - }, - "severity": { - "$ref": "#/definitions/AlertSeverity", - "description": "The severity for alerts created by this alert rule." - }, - "enabled": { - "type": "boolean", - "description": "Determines whether this alert rule is enabled or disabled." - }, - "query": { - "type": "string", - "description": "The query that creates alerts for this rule." - }, - "queryFrequency": { - "type": "string", - "format": "duration", - "description": "The frequency (in ISO 8601 duration format) for this alert rule to run." - }, - "queryPeriod": { - "type": "string", - "format": "duration", - "description": "The period (in ISO 8601 duration format) that this alert rule looks at." - }, - "triggerOperator": { - "$ref": "#/definitions/AlertRuleTriggerOperator", - "description": "The operation against the threshold that triggers alert rule." - }, - "triggerThreshold": { - "type": "integer", - "description": "The threshold triggers this alert rule." - }, - "suppressionEnabled": { - "type": "boolean", - "description": "Determines whether the suppression for this alert rule is enabled or disabled." - }, - "suppressionDuration": { - "type": "string", - "format": "duration", - "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered." - }, - "lastModifiedUtc": { - "type": "string", - "readOnly": true, - "description": "The last time that this alert has been modified." + "etag": { + "description": "Etag of the alert rule.", + "type": "string" } }, - "required": [ - "displayName", - "description", - "severity", - "enabled", - "query", - "queryFrequency", - "queryPeriod", - "triggerOperator", - "triggerThreshold", - "suppressionEnabled", - "suppressionDuration" - ] + "type": "object" }, "AlertRuleTemplatesList": { "description": "List all the alert rule templates.", "properties": { "nextLink": { - "readOnly": true, "description": "URL to fetch the next set of alert rule templates.", + "readOnly": true, "type": "string" }, "value": { "description": "Array of alert rule templates.", - "type": "array", "items": { "$ref": "#/definitions/AlertRuleTemplate" - } + }, + "type": "array" } }, "required": [ "value" ] }, - "AlertRuleTemplate": { - "type": "object", - "description": "Alert rule template.", - "discriminator": "kind", - "allOf": [ - { - "$ref": "#/definitions/Resource" + "AlertRuleTriggerOperator": { + "description": "The operation against the threshold that triggers alert rule.", + "enum": [ + "GreaterThan", + "LessThan", + "Equal", + "NotEqual" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "TriggerOperator" + } + }, + "AlertRulesList": { + "description": "List all the alert rules.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of alert rules.", + "readOnly": true, + "type": "string" }, - { - "$ref": "#/definitions/AlertRuleKind" + "value": { + "description": "Array of alert rules.", + "items": { + "$ref": "#/definitions/AlertRule" + }, + "type": "array" } + }, + "required": [ + "value" + ] + }, + "AlertSeverity": { + "description": "The severity of the alert", + "enum": [ + "High", + "Medium", + "Low", + "Informational" ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "AlertSeverity", + "values": [ + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "AlertsDataTypeOfDataConnector": { + "description": "Alerts data type for data connectors.", "properties": { - "etag": { - "type": "string", - "description": "Etag of the alert rule." + "alerts": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Alerts data type connection.", + "type": "object" } + }, + "type": "object" + }, + "AttackTactic": { + "description": "The severity for alerts created by this alert rule.", + "enum": [ + "InitialAccess", + "Execution", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Collection", + "Exfiltration", + "CommandAndControl" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "AttackTactic" } }, - "ScheduledAlertRuleTemplate": { - "x-ms-discriminator-value": "Scheduled", - "type": "object", - "description": "Represents scheduled alert rule template.", + "AwsCloudTrailDataConnector": { "allOf": [ { - "$ref": "#/definitions/AlertRuleTemplate" + "$ref": "#/definitions/DataConnector" } ], + "description": "Represents Amazon Web Services CloudTrail data connector.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Scheduled alert rule template properties", + "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties", + "description": "Amazon Web Services CloudTrail data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AmazonWebServicesCloudTrail" + }, + "AwsCloudTrailDataConnectorDataTypes": { + "description": "The available data types for Amazon Web Services CloudTrail data connector.", + "properties": { + "logs": { "allOf": [ { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" - }, - { - "$ref": "#/definitions/ScheduledAlertRuleTemplateProperties" + "$ref": "#/definitions/DataConnectorDataTypeCommon" } ], - "required": [ - "displayName", - "description", - "createdDateUTC", - "status", - "requiredDataConnectors", - "alertRulesCreatedByTemplateCount", - "severity", - "query", - "queryFrequency", - "queryPeriod", - "triggerOperator", - "triggerThreshold" - ] + "description": "Logs data type.", + "type": "object" } - } + }, + "type": "object" }, - "BaseAlertRuleTemplateProperties": { - "type": "object", - "description": "Base alert rule template property bag.", + "AwsCloudTrailDataConnectorProperties": { + "description": "Amazon Web Services CloudTrail data connector properties.", "properties": { - "displayName": { - "type": "string", - "description": "The display name for alert rule template." - }, - "description": { - "type": "string", - "description": "The description of the alert rule template." + "awsRoleArn": { + "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account.", + "type": "string" }, - "tactics": { - "type": "array", - "items": { - "$ref": "#/definitions/AttackTactic" - }, - "description": "The tactics of the alert rule template" + "dataTypes": { + "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "AzureResourceEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents an azure resource entity.", + "properties": { + "properties": { + "$ref": "#/definitions/AzureResourceEntityProperties", + "description": "AzureResource entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureResource" + }, + "AzureResourceEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "AzureResource entity property bag.", + "properties": { + "resourceId": { + "description": "The azure resource id of the resource", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BaseAlertRuleTemplateProperties": { + "description": "Base alert rule template property bag.", + "properties": { + "alertRulesCreatedByTemplateCount": { + "description": "the number of alert rules that were created by this template", + "type": "integer" }, "createdDateUTC": { - "type": "string", + "description": "The time that this alert rule template has been added.", "readOnly": true, - "description": "The time that this alert rule template has been added." + "type": "string" + }, + "description": { + "description": "The description of the alert rule template.", + "type": "string" + }, + "displayName": { + "description": "The display name for alert rule template.", + "type": "string" + }, + "requiredDataConnectors": { + "description": "The required data connectors for this template", + "items": { + "$ref": "#/definitions/DataConnectorStatus" + }, + "type": "array" }, "status": { - "type": "string", + "description": "The alert rule template status.", "enum": [ "Installed", "Available", "NotAvailable" ], + "type": "string", "x-ms-enum": { - "name": "TemplateStatus", "modelAsString": false, + "name": "TemplateStatus", "values": [ { - "value": "Installed", - "description": "Alert rule template installed. and can not use more then once" + "description": "Alert rule template installed. and can not use more then once", + "value": "Installed" }, { - "value": "Available", - "description": "Alert rule template is available." + "description": "Alert rule template is available.", + "value": "Available" }, { - "value": "NotAvailable", - "description": "Alert rule template is not available" + "description": "Alert rule template is not available", + "value": "NotAvailable" } ] - }, - "description": "The alert rule template status." + } }, - "requiredDataConnectors": { - "type": "array", + "tactics": { + "description": "The tactics of the alert rule template", "items": { - "$ref": "#/definitions/DataConnectorStatus" + "$ref": "#/definitions/AttackTactic" }, - "description": "The required data connectors for this template" - }, - "alertRulesCreatedByTemplateCount": { - "type": "integer", - "description": "the number of alert rules that were created by this template" - } - } - }, - "ScheduledAlertRuleTemplateProperties": { - "type": "object", - "description": "Schedule alert rule template property bag.", - "properties": { - "severity": { - "$ref": "#/definitions/AlertSeverity", - "description": "The severity for alerts created by this alert rule." - }, - "query": { - "type": "string", - "description": "The query that creates alerts for this rule." - }, - "queryFrequency": { - "type": "string", - "format": "duration", - "description": "The frequency (in ISO 8601 duration format) for this alert rule to run." - }, - "queryPeriod": { - "type": "string", - "format": "duration", - "description": "The period (in ISO 8601 duration format) that this alert rule looks at." - }, - "triggerOperator": { - "$ref": "#/definitions/AlertRuleTriggerOperator", - "description": "The operation against the threshold that triggers alert rule." - }, - "triggerThreshold": { - "type": "integer", - "description": "The threshold triggers this alert rule." + "type": "array" } - } + }, + "type": "object" }, - "FilterAlertRuleTemplate": { - "x-ms-discriminator-value": "Filter", - "type": "object", - "description": "Represents filter alert rule template.", + "Bookmark": { "allOf": [ { - "$ref": "#/definitions/AlertRuleTemplate" + "$ref": "#/definitions/Resource" } ], + "description": "Represents a bookmark in Azure Security Insights.", "properties": { + "etag": { + "description": "Etag of the bookmark.", + "type": "string" + }, "properties": { - "x-ms-client-flatten": true, - "description": "Filter alert rule template properties", - "allOf": [ - { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" - }, - { - "$ref": "#/definitions/FilterAlertRuleTemplateProperties" - } - ], - "required": [ - "displayName", - "description", - "createdDateUTC", - "status", - "alertRulesCreatedByTemplateCount", - "filterProduct" - ] + "$ref": "#/definitions/BookmarkProperties", + "description": "Bookmark properties", + "x-ms-client-flatten": true } - } + }, + "type": "object" }, - "FilterAlertRuleTemplateProperties": { - "type": "object", - "description": "Filter alert rule template property bag.", + "BookmarkList": { + "description": "List all the bookmarks.", "properties": { - "filterProduct": { - "type": "string", - "description": "The filter product name for this template rule." + "nextLink": { + "description": "URL to fetch the next set of cases.", + "readOnly": true, + "type": "string" }, - "filterSeverities": { - "type": "array", + "value": { + "description": "Array of bookmarks.", "items": { - "$ref": "#/definitions/AlertSeverity" + "$ref": "#/definitions/Bookmark" }, - "description": "the alert’s severities on which the cases will be generated" + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "BookmarkProperties": { + "description": "Describes bookmark properties", + "properties": { + "created": { + "description": "The time the bookmark was created", + "format": "date-time", + "type": "string" }, - "filterTitles": { - "type": "array", + "createdBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that created the bookmark", + "type": "object" + }, + "displayName": { + "description": "The display name of the bookmark", + "type": "string" + }, + "labels": { + "description": "List of labels relevant to this bookmark", "items": { - "type": "string" + "$ref": "#/definitions/Label" }, - "description": "the alert’s titles on which the cases will be generated" + "type": "array" + }, + "notes": { + "description": "The notes of the bookmark", + "type": "string" + }, + "query": { + "description": "The query of the bookmark.", + "type": "string" + }, + "queryResult": { + "description": "The query result of the bookmark.", + "type": "string" + }, + "updated": { + "description": "The last time the bookmark was updated", + "format": "date-time", + "type": "string" + }, + "updatedBy": { + "$ref": "#/definitions/UserInfo", + "description": "Describes a user that updated the bookmark", + "type": "object" } - } + }, + "required": [ + "displayName", + "query" + ], + "type": "object" }, - "FusionAlertRuleTemplate": { - "x-ms-discriminator-value": "Fusion", - "type": "object", - "description": "Represents fusion alert rule template.", + "Case": { "allOf": [ { - "$ref": "#/definitions/AlertRuleTemplate" + "$ref": "#/definitions/Resource" } ], + "description": "Represents a case in Azure Security Insights.", "properties": { + "etag": { + "description": "Etag of the alert rule.", + "type": "string" + }, "properties": { - "x-ms-client-flatten": true, - "description": "Fusion alert rule template properties", - "allOf": [ - { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" - }, - { - "$ref": "#/definitions/FusionAlertRuleTemplateProperties" - } - ], - "required": [ - "displayName", - "description", - "createdDateUTC", - "status", - "alertRulesCreatedByTemplateCount" - ] + "$ref": "#/definitions/CaseProperties", + "description": "Case properties", + "x-ms-client-flatten": true } - } + }, + "type": "object" }, - "FusionAlertRuleTemplateProperties": { - "type": "object", - "description": "Filter alert rule template property bag.", - "properties": { - "severity": { - "$ref": "#/definitions/AlertSeverity", - "description": "The severity for alerts created by this alert rule." + "CaseComment": { + "allOf": [ + { + "$ref": "#/definitions/Resource" } - } - }, - "AlertSeverity": { - "type": "string", - "description": "The severity of the alert", - "enum": [ - "High", - "Medium", - "Low", - "Informational" ], - "x-ms-enum": { - "name": "AlertSeverity", - "modelAsString": false, - "values": [ - { - "value": "High", - "description": "High severity" - }, - { - "value": "Medium", - "description": "Medium severity" - }, - { - "value": "Low", - "description": "Low severity" - }, - { - "value": "Informational", - "description": "Informational severity" - } - ] - } + "description": "Represents a case comment", + "properties": { + "properties": { + "$ref": "#/definitions/CaseCommentProperties", + "description": "Case comment properties", + "x-ms-client-flatten": true + } + }, + "type": "object" }, - "ActionsList": { - "description": "List all the actions.", + "CaseCommentList": { + "description": "List of case comments.", "properties": { "nextLink": { + "description": "URL to fetch the next set of comments.", "readOnly": true, - "description": "URL to fetch the next set of actions.", "type": "string" }, "value": { - "description": "Array of actions.", - "type": "array", + "description": "Array of comments.", "items": { - "$ref": "#/definitions/Action" - } + "$ref": "#/definitions/CaseComment" + }, + "type": "array" } }, "required": [ "value" ] }, - "Action": { - "type": "object", - "description": "Action for alert rule.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], + "CaseCommentProperties": { + "description": "Case comment property bag.", "properties": { - "etag": { - "type": "string", - "description": "Etag of the action." + "createdTimeUtc": { + "description": "The time the comment was created", + "format": "date-time", + "readOnly": true, + "type": "string" }, - "properties": { - "x-ms-client-flatten": true, - "description": "Action properties", - "$ref": "#/definitions/ActionProperties" - } - } - }, - "ActionProperties": { - "type": "object", - "description": "Action property bag.", - "properties": { - "triggerUri": { - "type": "string", - "description": "The uri for the action to trigger." + "message": { + "description": "The comment message", + "type": "string" + }, + "userInfo": { + "$ref": "#/definitions/UserInfo", + "description": "Describes the user that created the comment", + "readOnly": true, + "type": "object" } - } + }, + "required": [ + "message" + ], + "type": "object" }, "CaseList": { "description": "List all the cases.", "properties": { "nextLink": { - "readOnly": true, "description": "URL to fetch the next set of cases.", + "readOnly": true, "type": "string" }, "value": { "description": "Array of cases.", - "type": "array", "items": { "$ref": "#/definitions/Case" - } + }, + "type": "array" } }, "required": [ "value" ] }, - "Case": { - "type": "object", - "description": "Represents a case in Azure Security Insights.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "etag": { - "type": "string", - "description": "Etag of the alert rule." - }, - "properties": { - "x-ms-client-flatten": true, - "description": "Case properties", - "$ref": "#/definitions/CaseProperties" - } - } - }, "CaseProperties": { - "type": "object", "description": "Describes case properties", "properties": { - "lastUpdatedTimeUtc": { + "caseNumber": { + "description": "a sequential number", + "readOnly": true, + "type": "integer" + }, + "closeReason": { + "description": "The reason the case was closed", + "enum": [ + "Resolved", + "Dismissed", + "TruePositive", + "FalsePositive", + "Other" + ], "type": "string", - "format": "date-time", - "description": "The last time the case was updated", - "readOnly": true + "x-ms-enum": { + "modelAsString": true, + "name": "CloseReason", + "values": [ + { + "description": "Case was resolved", + "value": "Resolved" + }, + { + "description": "Case was dismissed", + "value": "Dismissed" + }, + { + "description": "Case was true positive", + "value": "TruePositive" + }, + { + "description": "Case was false positive", + "value": "FalsePositive" + }, + { + "description": "Case was closed for another reason", + "value": "Other" + } + ] + } + }, + "closedReasonText": { + "description": "the case close reason details", + "type": "string" }, "createdTimeUtc": { - "type": "string", - "format": "date-time", "description": "The time the case was created", - "readOnly": true - }, - "endTimeUtc": { - "type": "string", "format": "date-time", - "description": "The end time of the case" + "readOnly": true, + "type": "string" }, - "startTimeUtc": { - "type": "string", + "description": { + "description": "The description of the case", + "type": "string" + }, + "endTimeUtc": { + "description": "The end time of the case", "format": "date-time", - "description": "The start time of the case" + "type": "string" }, "labels": { - "type": "array", + "description": "List of labels relevant to this case", "items": { "$ref": "#/definitions/Label" }, - "description": "List of labels relevant to this case" + "type": "array" }, - "description": { - "type": "string", - "description": "The description of the case" + "lastComment": { + "description": "the last comment in the case", + "readOnly": true, + "type": "string" }, - "title": { - "type": "string", - "description": "The title of the case" + "lastUpdatedTimeUtc": { + "description": "The last time the case was updated", + "format": "date-time", + "readOnly": true, + "type": "string" }, "owner": { - "type": "object", + "$ref": "#/definitions/UserInfo", "description": "Describes a user that the case is assigned to", - "$ref": "#/definitions/UserInfo" + "type": "object" + }, + "relatedAlertIds": { + "description": "List of related alert identifiers", + "items": { + "description": "related alert id", + "type": "string" + }, + "readOnly": true, + "type": "array" }, "severity": { - "type": "string", "description": "The severity of the case", "enum": [ "Critical", @@ -2673,35 +2815,40 @@ "Low", "Informational" ], + "type": "string", "x-ms-enum": { - "name": "CaseSeverity", "modelAsString": true, + "name": "CaseSeverity", "values": [ { - "value": "Critical", - "description": "Critical severity" + "description": "Critical severity", + "value": "Critical" }, { - "value": "High", - "description": "High severity" + "description": "High severity", + "value": "High" }, { - "value": "Medium", - "description": "Medium severity" + "description": "Medium severity", + "value": "Medium" }, { - "value": "Low", - "description": "Low severity" + "description": "Low severity", + "value": "Low" }, { - "value": "Informational", - "description": "Informational severity" + "description": "Informational severity", + "value": "Informational" } ] } }, + "startTimeUtc": { + "description": "The start time of the case", + "format": "date-time", + "type": "string" + }, "status": { - "type": "string", "description": "The status of the case", "enum": [ "Draft", @@ -2709,93 +2856,38 @@ "InProgress", "Closed" ], - "x-ms-enum": { - "name": "CaseStatus", - "modelAsString": true, - "values": [ - { - "value": "Draft", - "description": "Case that wasn't promoted yet to active" - }, - { - "value": "New", - "description": "An active case which isn't handled currently" - }, - { - "value": "InProgress", - "description": "An active case which is handled" - }, - { - "value": "Closed", - "description": "A non active case" - } - ] - } - }, - "closeReason": { "type": "string", - "description": "The reason the case was closed", - "enum": [ - "Resolved", - "Dismissed", - "TruePositive", - "FalsePositive", - "Other" - ], "x-ms-enum": { - "name": "CloseReason", "modelAsString": true, + "name": "CaseStatus", "values": [ { - "value": "Resolved", - "description": "Case was resolved" - }, - { - "value": "Dismissed", - "description": "Case was dismissed" + "description": "Case that wasn't promoted yet to active", + "value": "Draft" }, { - "value": "TruePositive", - "description": "Case was true positive" + "description": "An active case which isn't handled currently", + "value": "New" }, { - "value": "FalsePositive", - "description": "Case was false positive" + "description": "An active case which is handled", + "value": "InProgress" }, { - "value": "Other", - "description": "Case was closed for another reason" + "description": "A non active case", + "value": "Closed" } ] } }, - "closedReasonText": { - "type": "string", - "description": "the case close reason details" - }, - "relatedAlertIds": { - "type": "array", - "items": { - "type": "string", - "description": "related alert id" - }, - "description": "List of related alert identifiers", - "readOnly": true - }, - "caseNumber": { - "type": "integer", - "description": "a sequential number", - "readOnly": true - }, - "lastComment": { - "type": "string", - "description": "the last comment in the case", - "readOnly": true + "title": { + "description": "The title of the case", + "type": "string" }, "totalComments": { - "type": "integer", "description": "the number of total comments in the case", - "readOnly": true + "readOnly": true, + "type": "integer" } }, "required": [ @@ -2803,215 +2895,170 @@ "severity", "status", "startTimeUtc" - ] - }, - "CaseCommentList": { - "description": "List of case comments.", - "properties": { - "nextLink": { - "readOnly": true, - "description": "URL to fetch the next set of comments.", - "type": "string" - }, - "value": { - "description": "Array of comments.", - "type": "array", - "items": { - "$ref": "#/definitions/CaseComment" - } - } - }, - "required": [ - "value" - ] + ], + "type": "object" }, - "CaseComment": { - "type": "object", - "description": "Represents a case comment", + "CasesAggregation": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/Aggregations" } ], + "description": "Represents aggregations results for cases.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Case comment properties", - "$ref": "#/definitions/CaseCommentProperties" + "$ref": "#/definitions/CasesAggregationProperties", + "description": "Properties of aggregations results of cases.", + "x-ms-client-flatten": true } - } - }, - "CaseCommentProperties": { + }, "type": "object", - "description": "Case comment property bag.", + "x-ms-discriminator-value": "CasesAggregation" + }, + "CasesAggregationBySeverityProperties": { + "description": "Aggregative results of cases by severity property bag.", "properties": { - "message": { - "type": "string", - "description": "The comment message" + "totalCriticalSeverity": { + "description": "Total amount of open cases with severity Critical", + "readOnly": true, + "type": "integer" }, - "createdTimeUtc": { - "type": "string", - "format": "date-time", - "description": "The time the comment was created", - "readOnly": true + "totalHighSeverity": { + "description": "Total amount of open cases with severity High", + "readOnly": true, + "type": "integer" }, - "userInfo": { - "type": "object", - "description": "Describes the user that created the comment", - "$ref": "#/definitions/UserInfo", - "readOnly": true + "totalInformationalSeverity": { + "description": "Total amount of open cases with severity Informational", + "readOnly": true, + "type": "integer" + }, + "totalLowSeverity": { + "description": "Total amount of open cases with severity Low", + "readOnly": true, + "type": "integer" + }, + "totalMediumSeverity": { + "description": "Total amount of open cases with severity medium", + "readOnly": true, + "type": "integer" } }, - "required": [ - "message" - ] + "type": "object" }, - "BookmarkList": { - "description": "List all the bookmarks.", + "CasesAggregationByStatusProperties": { + "description": "Aggregative results of cases by status property bag.", "properties": { - "nextLink": { + "totalDismissedStatus": { + "description": "Total amount of open cases with status Dismissed", "readOnly": true, - "description": "URL to fetch the next set of cases.", - "type": "string" + "type": "integer" }, - "value": { - "description": "Array of bookmarks.", - "type": "array", - "items": { - "$ref": "#/definitions/Bookmark" - } + "totalInProgressStatus": { + "description": "Total amount of open cases with status InProgress", + "readOnly": true, + "type": "integer" + }, + "totalNewStatus": { + "description": "Total amount of open cases with status New", + "readOnly": true, + "type": "integer" + }, + "totalResolvedStatus": { + "description": "Total amount of open cases with status Resolved", + "readOnly": true, + "type": "integer" } }, - "required": [ - "value" - ] + "type": "object" }, - "Bookmark": { - "type": "object", - "description": "Represents a bookmark in Azure Security Insights.", + "CasesAggregationProperties": { + "description": "Aggregative results of cases property bag.", + "properties": { + "aggregationBySeverity": { + "$ref": "#/definitions/CasesAggregationBySeverityProperties", + "description": "Aggregations results by case severity." + }, + "aggregationByStatus": { + "$ref": "#/definitions/CasesAggregationByStatusProperties", + "description": "Aggregations results by case status." + } + }, + "type": "object" + }, + "CloudApplicationEntity": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/Entity" } ], + "description": "Represents a cloud application entity.", "properties": { - "etag": { - "type": "string", - "description": "Etag of the bookmark." - }, "properties": { - "x-ms-client-flatten": true, - "description": "Bookmark properties", - "$ref": "#/definitions/BookmarkProperties" + "$ref": "#/definitions/CloudApplicationEntityProperties", + "description": "CloudApplication entity properties", + "x-ms-client-flatten": true } - } - }, - "BookmarkProperties": { + }, "type": "object", - "description": "Describes bookmark properties", + "x-ms-discriminator-value": "CloudApplication" + }, + "CloudApplicationEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "CloudApplication entity property bag.", "properties": { - "displayName": { - "type": "string", - "description": "The display name of the bookmark" - }, - "updated": { - "type": "string", - "format": "date-time", - "description": "The last time the bookmark was updated" - }, - "created": { - "type": "string", - "format": "date-time", - "description": "The time the bookmark was created" - }, - "createdBy": { - "type": "object", - "description": "Describes a user that created the bookmark", - "$ref": "#/definitions/UserInfo" - }, - "updatedBy": { - "type": "object", - "description": "Describes a user that updated the bookmark", - "$ref": "#/definitions/UserInfo" - }, - "notes": { - "type": "string", - "description": "The notes of the bookmark" - }, - "labels": { - "type": "array", - "items": { - "$ref": "#/definitions/Label" - }, - "description": "List of labels relevant to this bookmark" + "appId": { + "description": "The technical identifier of the application.", + "readOnly": true, + "type": "integer" }, - "query": { - "type": "string", - "description": "The query of the bookmark." + "appName": { + "description": "The name of the related cloud application.", + "readOnly": true, + "type": "string" }, - "queryResult": { - "type": "string", - "description": "The query result of the bookmark." + "instanceName": { + "description": "The user defined instance name of the cloud application. It is often used to distinguish between several applications of the same type that a customer has.", + "readOnly": true, + "type": "string" } }, - "required": [ - "displayName", - "query" - ] + "type": "object" }, - "UserInfo": { - "type": "object", - "description": "User information that made some action", + "CloudError": { + "description": "Error response structure.", "properties": { - "objectId": { - "type": "string", - "format": "uuid", - "x-nullable": true, - "description": "The object id of the user." - }, - "email": { - "type": "string", - "description": "The email of the user.", - "readOnly": true - }, - "name": { - "type": "string", - "description": "The name of the user.", - "readOnly": true + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Error data", + "x-ms-client-flatten": true } }, - "required": [ - "objectId" - ] - }, - "Label": { - "description": "Label that will be used to tag and filter on.", - "type": "string" + "type": "object", + "x-ms-external": true }, - "DataConnectorList": { - "description": "List all the data connectors.", + "CloudErrorBody": { + "description": "Error details.", "properties": { - "nextLink": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", "readOnly": true, - "description": "URL to fetch the next set of data connectors.", "type": "string" }, - "value": { - "description": "Array of data connectors.", - "type": "array", - "items": { - "$ref": "#/definitions/DataConnector" - } + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "readOnly": true, + "type": "string" } }, - "required": [ - "value" - ] + "type": "object", + "x-ms-external": true }, "DataConnector": { - "type": "object", - "description": "Data connector.", - "discriminator": "kind", "allOf": [ { "$ref": "#/definitions/Resource" @@ -3020,19 +3067,38 @@ "$ref": "#/definitions/DataConnectorKind" } ], + "description": "Data connector.", + "discriminator": "kind", "properties": { "etag": { + "description": "Etag of the data connector.", + "type": "string" + } + }, + "type": "object" + }, + "DataConnectorDataTypeCommon": { + "description": "Common field for data type in data connectors.", + "properties": { + "state": { + "description": "Describe whether this data type connection is enabled or not.", + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", - "description": "Etag of the data connector." + "x-ms-enum": { + "modelAsString": true, + "name": "DataTypeState" + } } - } + }, + "type": "object" }, "DataConnectorKind": { - "type": "object", "description": "Describes an Azure resource with kind.", "properties": { "kind": { - "type": "string", "description": "The kind of the data connector", "enum": [ "AzureActiveDirectory", @@ -3044,9 +3110,10 @@ "AzureAdvancedThreatProtection", "MicrosoftDefenderAdvancedThreatProtection" ], + "type": "string", "x-ms-enum": { - "name": "DataConnectorKind", "modelAsString": true, + "name": "DataConnectorKind", "values": [ { "value": "AzureActiveDirectory" @@ -3075,426 +3142,201 @@ ] } } - } + }, + "type": "object" + }, + "DataConnectorList": { + "description": "List all the data connectors.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of data connectors.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of data connectors.", + "items": { + "$ref": "#/definitions/DataConnector" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "DataConnectorStatus": { + "description": "alert rule template data connector status", + "properties": { + "connectorId": { + "description": "the connector id", + "type": "string" + }, + "dataTypes": { + "additionalProperties": { + "enum": [ + "Exist", + "NotExist" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "DataTypeStatus" + } + }, + "description": "The data types availability map", + "type": "object" + } + }, + "type": "object" }, "DataConnectorTenantId": { - "type": "object", "description": "Properties data connector on tenant level.", "properties": { "tenantId": { - "type": "string", - "description": "The tenant id to connect to, and get the data from." + "description": "The tenant id to connect to, and get the data from.", + "type": "string" } - } + }, + "type": "object" }, - "OfficeDataConnector": { - "x-ms-discriminator-value": "Office365", - "type": "object", - "description": "Represents office data connector.", + "DataConnectorWithAlertsProperties": { + "description": "Data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "DnsEntity": { "allOf": [ { - "$ref": "#/definitions/DataConnector" + "$ref": "#/definitions/Entity" } ], + "description": "Represents a dns entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Office data connector properties.", - "$ref": "#/definitions/OfficeDataConnectorProperties" + "$ref": "#/definitions/DnsEntityProperties", + "description": "Dns entity properties", + "x-ms-client-flatten": true } - } - }, - "OfficeDataConnectorProperties": { + }, "type": "object", - "description": "Office data connector properties.", + "x-ms-discriminator-value": "DnsResolution" + }, + "DnsEntityProperties": { "allOf": [ { - "$ref": "#/definitions/DataConnectorTenantId" + "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "Dns entity property bag.", "properties": { - "dataTypes": { - "description": "The available data types for the connector.", - "$ref": "#/definitions/OfficeDataConnectorDataTypes" - } - } - }, - "OfficeDataConnectorDataTypes": { - "type": "object", - "description": "The available data types for office data connector.", - "properties": { - "sharePoint": { - "type": "object", - "description": "SharePoint data type connection.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] + "dnsServerIpEntityId": { + "description": "An ip entity id for the dns server resolving the request", + "readOnly": true, + "type": "string" }, - "exchange": { - "type": "object", - "description": "Exchange data type connection.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] - } - } - }, - "TIDataConnector": { - "x-ms-discriminator-value": "ThreatIntelligence", - "type": "object", - "description": "Represents threat intelligence data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "TI (Threat Intelligence) data connector properties.", - "$ref": "#/definitions/TIDataConnectorProperties" - } - } - }, - "TIDataConnectorProperties": { - "type": "object", - "description": "TI (Threat Intelligence) data connector properties.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" - } - ], - "properties": { - "dataTypes": { - "description": "The available data types for the connector.", - "$ref": "#/definitions/TIDataConnectorDataTypes" - } - } - }, - "TIDataConnectorDataTypes": { - "type": "object", - "description": "The available data types for TI (Threat Intelligence) data connector.", - "properties": { - "indicators": { - "type": "object", - "description": "Data type for indicators connection.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] - } - } - }, - "AwsCloudTrailDataConnector": { - "x-ms-discriminator-value": "AmazonWebServicesCloudTrail", - "type": "object", - "description": "Represents Amazon Web Services CloudTrail data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Amazon Web Services CloudTrail data connector properties.", - "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties" - } - } - }, - "AwsCloudTrailDataConnectorProperties": { - "type": "object", - "description": "Amazon Web Services CloudTrail data connector properties.", - "properties": { - "awsRoleArn": { - "type": "string", - "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account." + "domainName": { + "description": "The name of the dns record associated with the alert", + "readOnly": true, + "type": "string" }, - "dataTypes": { - "description": "The available data types for the connector.", - "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes" - } - } - }, - "AwsCloudTrailDataConnectorDataTypes": { - "type": "object", - "description": "The available data types for Amazon Web Services CloudTrail data connector.", - "properties": { - "logs": { - "type": "object", - "description": "Logs data type.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] - } - } - }, - "AADDataConnector": { - "x-ms-discriminator-value": "AzureActiveDirectory", - "type": "object", - "description": "Represents AAD (Azure Active Directory) data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "AAD (Azure Active Directory) data connector properties.", - "$ref": "#/definitions/AADDataConnectorProperties" - } - } - }, - "AADDataConnectorProperties": { - "type": "object", - "description": "AAD (Azure Active Directory) data connector properties.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" + "hostIpAddressEntityId": { + "description": "An ip entity id for the dns request client", + "readOnly": true, + "type": "string" }, - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" - } - ] - }, - "ASCDataConnector": { - "x-ms-discriminator-value": "AzureSecurityCenter", - "type": "object", - "description": "Represents ASC (Azure Security Center) data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "ASC (Azure Security Center) data connector properties.", - "$ref": "#/definitions/ASCDataConnectorProperties" - } - } - }, - "ASCDataConnectorProperties": { - "type": "object", - "description": "MCAS (Microsoft Cloud App Security) data connector properties.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" - } - ], - "properties": { - "subscriptionId": { - "type": "string", - "description": "The subscription id to connect to, and get the data from." - } - } - }, - "MCASDataConnector": { - "x-ms-discriminator-value": "MicrosoftCloudAppSecurity", - "type": "object", - "description": "Represents MCAS (Microsoft Cloud App Security) data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "MCAS (Microsoft Cloud App Security) data connector properties.", - "$ref": "#/definitions/MCASDataConnectorProperties" + "ipAddressEntityIds": { + "description": "Ip entity identifiers for the resolved ip address.", + "items": { + "description": "Ip entity id", + "type": "string" + }, + "readOnly": true, + "type": "array" } - } + }, + "type": "object" }, - "MCASDataConnectorProperties": { - "type": "object", - "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "Entity": { "allOf": [ { - "$ref": "#/definitions/DataConnectorTenantId" - } - ], - "properties": { - "dataTypes": { - "description": "The available data types for the connector.", - "$ref": "#/definitions/MCASDataConnectorDataTypes" - } - } - }, - "MCASDataConnectorDataTypes": { - "type": "object", - "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector.", - "allOf": [ + "$ref": "#/definitions/Resource" + }, { - "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + "$ref": "#/definitions/EntityKind" } ], - "properties": { - "discoveryLogs": { - "type": "object", - "description": "Discovery log data type connection.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] - } - } + "description": "Specific entity.", + "discriminator": "kind", + "type": "object" }, - "AATPDataConnector": { - "x-ms-discriminator-value": "AzureAdvancedThreatProtection", - "type": "object", - "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], + "EntityCommonProperties": { + "description": "Entity common property bag.", "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "AATP (Azure Advanced Threat Protection) data connector properties.", - "$ref": "#/definitions/AATPDataConnectorProperties" - } - } - }, - "AATPDataConnectorProperties": { - "type": "object", - "description": "AATP (Azure Advanced Threat Protection) data connector properties.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" + "additionalData": { + "additionalProperties": { + "type": "object" + }, + "description": "A bag of custom fields that should be part of the entity and will be presented to the user.", + "readOnly": true, + "type": "object" }, - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" + "friendlyName": { + "description": "The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.", + "readOnly": true, + "type": "string" } - ] + }, + "type": "object" }, - "MDATPDataConnector": { - "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection", - "type": "object", - "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector.", - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], + "EntityExpandParameters": { + "description": "The parameters required to execute an expand operation on the given entity.", "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", - "$ref": "#/definitions/MDATPDataConnectorProperties" - } - } - }, - "MDATPDataConnectorProperties": { - "type": "object", - "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" + "endTime": { + "description": "The end date filter, so the only expansion results returned are before this date.", + "format": "date-time", + "type": "string" }, - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" - } - ] - }, - "DataConnectorWithAlertsProperties": { - "type": "object", - "description": "Data connector properties.", - "properties": { - "dataTypes": { - "description": "The available data types for the connector.", - "$ref": "#/definitions/AlertsDataTypeOfDataConnector" - } - } - }, - "AlertsDataTypeOfDataConnector": { - "type": "object", - "description": "Alerts data type for data connectors.", - "properties": { - "alerts": { - "type": "object", - "description": "Alerts data type connection.", - "allOf": [ - { - "$ref": "#/definitions/DataConnectorDataTypeCommon" - } - ] - } - } - }, - "DataConnectorDataTypeCommon": { - "type": "object", - "description": "Common field for data type in data connectors.", - "properties": { - "state": { - "type": "string", - "description": "Describe whether this data type connection is enabled or not.", - "enum": [ - "Enabled", - "Disabled" - ], - "x-ms-enum": { - "name": "DataTypeState", - "modelAsString": true - } + "expansionId": { + "description": "The Id of the expansion to perform.", + "format": "uuid", + "type": "string" + }, + "startTime": { + "description": "The start date filter, so the only expansion results returned are after this date.", + "format": "date-time", + "type": "string" } } }, - "EntityList": { - "description": "List of all the entities.", + "EntityExpandResponse": { + "description": "The entity expansion result operation response.", "properties": { - "nextLink": { - "readOnly": true, - "description": "URL to fetch the next set of entities.", - "type": "string" + "metaData": { + "$ref": "#/definitions/ExpansionResultsMetadata", + "description": "The metadata from the expansion operation results." }, "value": { - "description": "Array of entities.", - "type": "array", - "items": { - "$ref": "#/definitions/Entity" - } - } - }, - "required": [ - "value" - ] - }, - "Entity": { - "type": "object", - "description": "Specific entity.", - "discriminator": "kind", - "allOf": [ - { - "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/EntityKind" - } - ] - }, - "EntityKind": { - "type": "object", - "description": "Describes an entity with kind.", - "properties": { - "kind": { - "description": "The kind of the entity.", - "$ref": "#/definitions/EntityInnerKind" + "description": "The expansion result values.", + "properties": { + "entities": { + "description": "Array of the expansion result entities.", + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" + } + }, + "type": "object" } } }, "EntityInnerKind": { - "type": "string", "description": "The kind of the entity", "enum": [ "Account", @@ -3504,1563 +3346,1864 @@ "CloudApplication", "DnsResolution", "FileHash", - "Ip", + "Ip", + "Malware", + "Process", + "RegistryKey", + "RegistryValue", + "SecurityGroup", + "Url", + "SecurityAlert", + "Bookmark" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "EntityKind", + "values": [ + { + "description": "Entity represents account in the system.", + "value": "Account" + }, + { + "description": "Entity represents host in the system.", + "value": "Host" + }, + { + "description": "Entity represents file in the system.", + "value": "File" + }, + { + "description": "Entity represents azure resource in the system.", + "value": "AzureResource" + }, + { + "description": "Entity represents cloud application in the system.", + "value": "CloudApplication" + }, + { + "description": "Entity represents dns resolution in the system.", + "value": "DnsResolution" + }, + { + "description": "Entity represents file hash in the system.", + "value": "FileHash" + }, + { + "description": "Entity represents ip in the system.", + "value": "Ip" + }, + { + "description": "Entity represents malware in the system.", + "value": "Malware" + }, + { + "description": "Entity represents process in the system.", + "value": "Process" + }, + { + "description": "Entity represents registry key in the system.", + "value": "RegistryKey" + }, + { + "description": "Entity represents registry value in the system.", + "value": "RegistryValue" + }, + { + "description": "Entity represents security group in the system.", + "value": "SecurityGroup" + }, + { + "description": "Entity represents url in the system.", + "value": "Url" + }, + { + "description": "Entity represents security alert in the system.", + "value": "SecurityAlert" + }, + { + "description": "Entity represents bookmark in the system.", + "value": "Bookmark" + } + ] + } + }, + "EntityInnerType": { + "description": "The type of the entity", + "enum": [ + "Account", + "Host", + "File", + "AzureResource", + "CloudApplication", + "DNS", + "FileHash", + "IP", "Malware", "Process", "RegistryKey", "RegistryValue", "SecurityGroup", - "Url", + "URL", "SecurityAlert", - "Bookmark" + "HuntingBookmark" ], + "type": "string", "x-ms-enum": { - "name": "EntityKind", "modelAsString": true, + "name": "EntityType", "values": [ { - "value": "Account", - "description": "Entity represents account in the system." + "description": "Entity represents account in the system.", + "value": "Account" }, { - "value": "Host", - "description": "Entity represents host in the system." + "description": "Entity represents host in the system.", + "value": "Host" }, { - "value": "File", - "description": "Entity represents file in the system." + "description": "Entity represents file in the system.", + "value": "File" }, { - "value": "AzureResource", - "description": "Entity represents azure resource in the system." + "description": "Entity represents azure resource in the system.", + "value": "AzureResource" }, { - "value": "CloudApplication", - "description": "Entity represents cloud application in the system." + "description": "Entity represents cloud application in the system.", + "value": "CloudApplication" }, { - "value": "DnsResolution", - "description": "Entity represents dns resolution in the system." + "description": "Entity represents dns in the system.", + "value": "DNS" }, { - "value": "FileHash", - "description": "Entity represents file hash in the system." + "description": "Entity represents file hash in the system.", + "value": "FileHash" }, { - "value": "Ip", - "description": "Entity represents ip in the system." + "description": "Entity represents ip in the system.", + "value": "IP" }, { - "value": "Malware", - "description": "Entity represents malware in the system." + "description": "Entity represents malware in the system.", + "value": "Malware" }, { - "value": "Process", - "description": "Entity represents process in the system." + "description": "Entity represents process in the system.", + "value": "Process" }, { - "value": "RegistryKey", - "description": "Entity represents registry key in the system." + "description": "Entity represents registry key in the system.", + "value": "RegistryKey" }, { - "value": "RegistryValue", - "description": "Entity represents registry value in the system." + "description": "Entity represents registry value in the system.", + "value": "RegistryValue" }, { - "value": "SecurityGroup", - "description": "Entity represents security group in the system." + "description": "Entity represents security group in the system.", + "value": "SecurityGroup" }, { - "value": "Url", - "description": "Entity represents url in the system." + "description": "Entity represents url in the system.", + "value": "URL" }, { - "value": "SecurityAlert", - "description": "Entity represents security alert in the system." + "description": "Entity represents security alert in the system.", + "value": "SecurityAlert" }, { - "value": "Bookmark", - "description": "Entity represents bookmark in the system." + "description": "Entity represents HuntingBookmark in the system.", + "value": "HuntingBookmark" } ] } }, - "EntityCommonProperties": { - "type": "object", - "description": "Entity common property bag.", + "EntityKind": { + "description": "Describes an entity with kind.", "properties": { - "friendlyName": { - "type": "string", + "kind": { + "$ref": "#/definitions/EntityInnerKind", + "description": "The kind of the entity." + } + }, + "type": "object" + }, + "EntityList": { + "description": "List of all the entities.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of entities.", "readOnly": true, - "description": "The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated." + "type": "string" }, - "additionalData": { - "type": "object", - "additionalProperties": { - "type": "object" + "value": { + "description": "Array of entities.", + "items": { + "$ref": "#/definitions/Entity" }, - "readOnly": true, - "description": "A bag of custom fields that should be part of the entity and will be presented to the user." + "type": "array" } - } + }, + "required": [ + "value" + ] }, - "AccountEntity": { - "x-ms-discriminator-value": "Account", - "type": "object", - "description": "Represents an account entity.", + "EntityQuery": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/Resource" } ], + "description": "Specific entity query.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Account entity properties", - "$ref": "#/definitions/AccountEntityProperties" + "$ref": "#/definitions/EntityQueryProperties", + "description": "Entity query properties", + "x-ms-client-flatten": true } - } + }, + "type": "object" }, - "AccountEntityProperties": { - "type": "object", - "description": "Account entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], + "EntityQueryList": { + "description": "List of all the entity queries.", "properties": { - "accountName": { - "type": "string", + "nextLink": { + "description": "URL to fetch the next set of entity queries.", "readOnly": true, - "description": "The name of the account. This field should hold only the name without any domain added to it, i.e. administrator." + "type": "string" }, - "ntDomain": { - "type": "string", - "readOnly": true, - "description": "The NetBIOS domain name as it appears in the alert format – domain\\username. Examples: NT AUTHORITY." + "value": { + "description": "Array of entity queries.", + "items": { + "$ref": "#/definitions/EntityQuery" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "EntityQueryProperties": { + "description": "Describes entity query properties", + "properties": { + "dataSources": { + "description": "List of the data sources that are required to run the query", + "items": { + "description": "data source", + "type": "string" + }, + "type": "array" }, - "upnSuffix": { - "type": "string", - "readOnly": true, - "description": "The user principal name suffix for the account, in some cases it is also the domain name. Examples: contoso.com." + "displayName": { + "description": "The query display name", + "type": "string" }, - "sid": { - "type": "string", - "readOnly": true, - "description": "The account security identifier, e.g. S-1-5-18." + "inputEntityType": { + "$ref": "#/definitions/EntityInnerType", + "description": "The type of the query's source entity" }, - "aadTenantId": { - "type": "string", - "readOnly": true, - "description": "The Azure Active Directory tenant id." + "inputFields": { + "description": "List of the fields of the source entity that are required to run the query", + "items": { + "description": "input field", + "type": "string" + }, + "type": "array" }, - "aadUserId": { - "type": "string", - "readOnly": true, - "description": "The Azure Active Directory user id." + "outputEntityTypes": { + "description": "List of the desired output types to be constructed from the result", + "items": { + "$ref": "#/definitions/EntityInnerType", + "description": "output entity type" + }, + "type": "array" }, - "puid": { - "type": "string", - "readOnly": true, - "description": "The Azure Active Directory Passport User ID." + "queryTemplate": { + "description": "The template query string to be parsed and formatted", + "type": "string" + } + }, + "type": "object" + }, + "ExpansionResultAggregation": { + "description": "Information of a specific aggregation in the expansion result.", + "properties": { + "aggregationType": { + "description": "The common type of the aggregation. (for e.g. entity field name)", + "type": "string" }, - "isDomainJoined": { - "type": "boolean", - "readOnly": true, - "description": "Determines whether this is a domain account." + "count": { + "description": "Total number of aggregations of the given kind (and aggregationType if given) in the expansion result.", + "type": "integer" }, "displayName": { - "type": "string", - "readOnly": true, - "description": "The display name of the account." - }, - "objectGuid": { - "type": "string", - "readOnly": true, - "format": "uuid", - "description": "The objectGUID attribute is a single-value attribute that is the unique identifier for the object, assigned by active directory." + "description": "The display name of the aggregation by type.", + "type": "string" }, - "hostEntityId": { - "type": "string", - "readOnly": true, - "description": "The Host entity id that contains the account in case it is a local account (not domain joined)" - } - } - }, - "HostEntity": { - "x-ms-discriminator-value": "Host", - "type": "object", - "description": "Represents a host entity.", - "allOf": [ - { - "$ref": "#/definitions/Entity" + "entityKind": { + "$ref": "#/definitions/EntityInnerKind", + "description": "The kind of the aggregated entity." } + }, + "required": [ + "entityKind", + "count" ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Host entity properties", - "$ref": "#/definitions/HostEntityProperties" - } - } + "type": "object" }, - "HostEntityProperties": { - "type": "object", - "description": "Host entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], + "ExpansionResultsMetadata": { + "description": "Expansion result metadata.", "properties": { - "dnsDomain": { - "type": "string", - "readOnly": true, - "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain" - }, - "ntDomain": { - "type": "string", - "readOnly": true, - "description": "The NT domain that this host belongs to." - }, - "hostName": { - "type": "string", - "readOnly": true, - "description": "The hostname without the domain suffix." - }, - "netBiosName": { - "type": "string", - "readOnly": true, - "description": "The host name (pre-windows2000)." - }, - "azureID": { - "type": "string", - "readOnly": true, - "description": "The azure resource id of the VM." - }, - "omsAgentID": { - "type": "string", - "readOnly": true, - "description": "The OMS agent id, if the host has OMS agent installed." - }, - "osFamily": { - "type": "string", - "enum": [ - "Linux", - "Windows", - "Android", - "IOS" - ], - "x-ms-enum": { - "name": "OSFamily", - "modelAsString": false, - "values": [ - { - "value": "Linux", - "description": "Host with Linux operating system." - }, - { - "value": "Windows", - "description": "Host with Windows operating system." - }, - { - "value": "Android", - "description": "Host with Android operating system." - }, - { - "value": "IOS", - "description": "Host with IOS operating system." - } - ] + "aggregations": { + "description": "Information of the aggregated nodes in the expansion result.", + "items": { + "$ref": "#/definitions/ExpansionResultAggregation" }, - "description": "The operating system type." - }, - "osVersion": { - "type": "string", - "readOnly": true, - "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration" - }, - "isDomainJoined": { - "type": "boolean", - "readOnly": true, - "description": "Determines whether this host belongs to a domain." + "type": "array" } - } + }, + "type": "object" }, "FileEntity": { - "x-ms-discriminator-value": "File", - "type": "object", - "description": "Represents a file entity.", "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a file entity.", "properties": { "properties": { - "x-ms-client-flatten": true, + "$ref": "#/definitions/FileEntityProperties", "description": "File entity properties", - "$ref": "#/definitions/FileEntityProperties" + "x-ms-client-flatten": true } - } + }, + "type": "object", + "x-ms-discriminator-value": "File" }, "FileEntityProperties": { - "type": "object", - "description": "File entity property bag.", "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "File entity property bag.", "properties": { "directory": { - "type": "string", - "readOnly": true, - "description": "The full path to the file." - }, - "fileName": { - "type": "string", - "readOnly": true, - "description": "The file name without path (some alerts might not include path)." - }, - "hostEntityId": { - "type": "string", + "description": "The full path to the file.", "readOnly": true, - "description": "The Host entity id which the file belongs to" + "type": "string" }, "fileHashEntityIds": { - "type": "array", - "readOnly": true, + "description": "The file hash entity identifiers associated with this file", "items": { "description": "file hash id", "type": "string" }, - "description": "The file hash entity identifiers associated with this file" + "readOnly": true, + "type": "array" + }, + "fileName": { + "description": "The file name without path (some alerts might not include path).", + "readOnly": true, + "type": "string" + }, + "hostEntityId": { + "description": "The Host entity id which the file belongs to", + "readOnly": true, + "type": "string" } - } + }, + "type": "object" }, - "SecurityAlert": { - "x-ms-discriminator-value": "SecurityAlert", - "type": "object", - "description": "Represents a security alert entity.", + "FileHashEntity": { "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a file hash entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "SecurityAlert entity properties", - "$ref": "#/definitions/SecurityAlertProperties" + "$ref": "#/definitions/FileHashEntityProperties", + "description": "FileHash entity properties", + "x-ms-client-flatten": true } - } - }, - "SecurityAlertProperties": { + }, "type": "object", - "description": "SecurityAlert entity property bag.", + "x-ms-discriminator-value": "FileHash" + }, + "FileHashEntityProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "FileHash entity property bag.", "properties": { - "systemAlertId": { - "type": "string", - "readOnly": true, - "description": "Holds the product identifier of the alert for the product." - }, - "confidenceReasons": { - "type": "array", - "readOnly": true, - "description": "The confidence reasons", - "items": { - "type": "object", - "description": "confidence reason item", - "properties": { - "reasonType": { - "type": "string", - "readOnly": true, - "description": "The type (category) of the reason" - }, - "reason": { - "type": "string", - "readOnly": true, - "description": "The reason's description" - } - } - } - }, - "confidenceScoreStatus": { - "type": "string", - "description": "The confidence score calculation status, i.e. indicating if score calculation is pending for this alert, not applicable or final.", - "readOnly": true, - "enum": [ - "NotApplicable", - "InProcess", - "NotFinal", - "Final" - ], - "x-ms-enum": { - "name": "ConfidenceScoreStatus", - "modelAsString": true, - "values": [ - { - "value": "NotApplicable", - "description": "Score will not be calculated for this alert as it is not supported by virtual analyst" - }, - { - "value": "InProcess", - "description": "No score was set yet and calculation is in progress" - }, - { - "value": "NotFinal", - "description": "Score is calculated and shown as part of the alert, but may be updated again at a later time following the processing of additional data" - }, - { - "value": "Final", - "description": "Final score was calculated and available" - } - ] - } - }, - "intent": { - "type": "string", - "description": "Holds the alert intent stage(s) mapping for this alert.", - "readOnly": true, + "algorithm": { + "description": "The hash algorithm type.", "enum": [ "Unknown", - "Probing", - "Exploitation", - "Persistence", - "PrivilegeEscalation", - "DefenseEvasion", - "CredentialAccess", - "Discovery", - "LateralMovement", - "Execution", - "Collection", - "Exfiltration", - "CommandAndControl", - "Impact" + "MD5", + "SHA1", + "SHA256", + "SHA256AC" ], + "readOnly": true, + "type": "string", "x-ms-enum": { - "name": "KillChainIntent", "modelAsString": true, + "name": "FileHashAlgorithm", "values": [ { - "value": "Unknown", - "description": "The default value." - }, - { - "value": "Probing", - "description": "Probing could be an attempt to access a certain resource regardless of a malicious intent or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt originating from outside the network in attempt to scan the target system and find a way in." - }, - { - "value": "Exploitation", - "description": "Exploitation is the stage where an attacker manage to get foothold on the attacked resource. This stage is applicable not only for compute hosts, but also for resources such as user accounts, certificates etc. Adversaries will often be able to control the resource after this stage." - }, - { - "value": "Persistence", - "description": "Persistence is any access, action, or configuration change to a system that gives an adversary a persistent presence on that system. Adversaries will often need to maintain access to systems through interruptions such as system restarts, loss of credentials, or other failures that would require a remote access tool to restart or alternate backdoor for them to regain access." - }, - { - "value": "PrivilegeEscalation", - "description": "Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. Certain tools or actions require a higher level of privilege to work and are likely necessary at many points throughout an operation. User accounts with permissions to access specific systems or perform specific functions necessary for adversaries to achieve their objective may also be considered an escalation of privilege." - }, - { - "value": "DefenseEvasion", - "description": "Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. Sometimes these actions are the same as or variations of techniques in other categories that have the added benefit of subverting a particular defense or mitigation. " + "description": "Unknown hash algorithm", + "value": "Unknown" }, { - "value": "CredentialAccess", - "description": "Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. Adversaries will likely attempt to obtain legitimate credentials from users or administrator accounts (local system administrator or domain users with administrator access) to use within the network. With sufficient access within a network, an adversary can create accounts for later use within the environment." + "description": "MD5 hash type", + "value": "MD5" }, { - "value": "Discovery", - "description": "Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. When adversaries gain access to a new system, they must orient themselves to what they now have control of and what benefits operating from that system give to their current objective or overall goals during the intrusion. The operating system provides many native tools that aid in this post-compromise information-gathering phase." + "description": "SHA1 hash type", + "value": "SHA1" }, { - "value": "LateralMovement", - "description": "Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. The lateral movement techniques could allow an adversary to gather information from a system without needing additional tools, such as a remote access tool. An adversary can use lateral movement for many purposes, including remote Execution of tools, pivoting to additional systems, access to specific information or files, access to additional credentials, or to cause an effect." + "description": "SHA256 hash type", + "value": "SHA256" }, { - "value": "Execution", - "description": "The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. This tactic is often used in conjunction with lateral movement to expand access to remote systems on a network." - }, - { - "value": "Collection", - "description": "Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. This category also covers locations on a system or network where the adversary may look for information to exfiltrate." - }, - { - "value": "Exfiltration", - "description": "Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. This category also covers locations on a system or network where the adversary may look for information to exfiltrate." - }, - { - "value": "CommandAndControl", - "description": "The command and control tactic represents how adversaries communicate with systems under their control within a target network." - }, - { - "value": "Impact", - "description": "The impact intent primary objective is to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. This would often refer to techniques such as ransom-ware, defacement, data manipulation and others." + "description": "SHA256 Authenticode hash type", + "value": "SHA256AC" } ] } }, - "confidenceScore": { - "type": "number", - "format": "double", - "readOnly": true, - "description": "The confidence score of the alert." - }, - "alertDisplayName": { - "type": "string", + "hashValue": { + "description": "The file hash value.", "readOnly": true, - "description": "The display name of the alert." + "type": "string" + } + }, + "type": "object" + }, + "FilterAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents filter alert rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/BaseAlertRuleTemplateProperties" + }, + { + "$ref": "#/definitions/FilterAlertRuleTemplateProperties" + } + ], + "description": "Filter alert rule template properties", + "required": [ + "displayName", + "description", + "createdDateUTC", + "status", + "alertRulesCreatedByTemplateCount", + "filterProduct" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Filter" + }, + "FilterAlertRuleTemplateProperties": { + "description": "Filter alert rule template property bag.", + "properties": { + "filterProduct": { + "description": "The filter product name for this template rule.", + "type": "string" }, - "description": { - "type": "string", - "readOnly": true, - "description": "Alert description." + "filterSeverities": { + "description": "the alert’s severities on which the cases will be generated", + "items": { + "$ref": "#/definitions/AlertSeverity" + }, + "type": "array" }, - "remediationSteps": { - "type": "array", - "readOnly": true, - "description": "Manual action items to take to remediate the alert.", + "filterTitles": { + "description": "the alert’s titles on which the cases will be generated", "items": { "type": "string" - } - }, - "confidenceLevel": { - "type": "string", - "description": "The confidence level of this alert.", - "readOnly": true, - "enum": [ - "Unknown", - "Low", - "High" + }, + "type": "array" + } + }, + "type": "object" + }, + "FusionAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents fusion alert rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/BaseAlertRuleTemplateProperties" + }, + { + "$ref": "#/definitions/FusionAlertRuleTemplateProperties" + } ], - "x-ms-enum": { - "name": "ConfidenceLevel", - "modelAsString": true, - "values": [ - { - "value": "Unknown", - "description": "Unknown confidence, the is the default value" - }, - { - "value": "Low", - "description": "Low confidence, meaning we have some doubts this is indeed malicious or part of an attack" - }, - { - "value": "High", - "description": "High confidence that the alert is true positive malicious" - } - ] - } - }, + "description": "Fusion alert rule template properties", + "required": [ + "displayName", + "description", + "createdDateUTC", + "status", + "alertRulesCreatedByTemplateCount" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Fusion" + }, + "FusionAlertRuleTemplateProperties": { + "description": "Filter alert rule template property bag.", + "properties": { "severity": { "$ref": "#/definitions/AlertSeverity", - "description": "The severity of the alert" - }, - "vendorName": { - "type": "string", - "readOnly": true, - "description": "The name of the vendor that raise the alert." - }, - "productName": { - "type": "string", - "readOnly": true, - "description": "The name of the product which published this alert." - }, - "productComponentName": { - "type": "string", - "readOnly": true, - "description": "The name of a component inside the product which generated the alert." - }, - "alertType": { - "type": "string", - "readOnly": true, - "description": "The type name of the alert." - }, - "productVersion": { - "type": "string", + "description": "The severity for alerts created by this alert rule." + } + }, + "type": "object" + }, + "GeoLocation": { + "description": "The geo-location context attached to the ip entity", + "properties": { + "asn": { + "description": "Autonomous System Number", "readOnly": true, - "description": "The version of the product generating the alert." + "type": "integer" }, - "processingEndTime": { - "type": "string", - "format": "date-time", + "city": { + "description": "City name", "readOnly": true, - "description": "The time the alert was made available for consumption." + "type": "string" }, - "status": { - "type": "string", - "description": "The lifecycle status of the alert.", + "countryCode": { + "description": "The country code according to ISO 3166 format", "readOnly": true, - "enum": [ - "Unknown", - "New", - "Resolved", - "Dismissed", - "InProgress" - ], - "x-ms-enum": { - "name": "AlertStatus", - "modelAsString": true, - "values": [ - { - "value": "Unknown", - "description": "Unknown value" - }, - { - "value": "New", - "description": "New alert" - }, - { - "value": "Resolved", - "description": "Alert closed after handling" - }, - { - "value": "Dismissed", - "description": "Alert dismissed as false positive" - }, - { - "value": "InProgress", - "description": "Alert is being handled" - } - ] - } + "type": "string" }, - "endTimeUtc": { - "type": "string", - "format": "date-time", + "countryName": { + "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name", "readOnly": true, - "description": "The impact end time of the alert (the time of the last event contributing to the alert)." + "type": "string" }, - "startTimeUtc": { - "type": "string", - "format": "date-time", + "latitude": { + "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180, with positive numbers representing East and negative numbers representing West. Latitude and longitude are derived from the city or postal code.", + "format": "double", "readOnly": true, - "description": "The impact start time of the alert (the time of the first event contributing to the alert)." + "type": "number" }, - "timeGenerated": { - "type": "string", - "format": "date-time", + "longitude": { + "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90, with positive numbers representing North and negative numbers representing South. Latitude and longitude are derived from the city or postal code.", + "format": "double", "readOnly": true, - "description": "The time the alert was generated." + "type": "number" }, - "compromisedEntity": { - "type": "string", + "state": { + "description": "State name", "readOnly": true, - "description": "Display name of the main entity being reported on." + "type": "string" } - } + }, + "readOnly": true, + "type": "object" }, - "FileHashEntity": { - "x-ms-discriminator-value": "FileHash", - "type": "object", - "description": "Represents a file hash entity.", + "HostEntity": { "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a host entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "FileHash entity properties", - "$ref": "#/definitions/FileHashEntityProperties" + "$ref": "#/definitions/HostEntityProperties", + "description": "Host entity properties", + "x-ms-client-flatten": true } - } - }, - "FileHashEntityProperties": { + }, "type": "object", - "description": "FileHash entity property bag.", + "x-ms-discriminator-value": "Host" + }, + "HostEntityProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "Host entity property bag.", "properties": { - "hashValue": { - "type": "string", + "azureID": { + "description": "The azure resource id of the VM.", "readOnly": true, - "description": "The file hash value." + "type": "string" }, - "algorithm": { - "type": "string", - "description": "The hash algorithm type.", + "dnsDomain": { + "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain", + "readOnly": true, + "type": "string" + }, + "hostName": { + "description": "The hostname without the domain suffix.", + "readOnly": true, + "type": "string" + }, + "isDomainJoined": { + "description": "Determines whether this host belongs to a domain.", + "readOnly": true, + "type": "boolean" + }, + "netBiosName": { + "description": "The host name (pre-windows2000).", "readOnly": true, + "type": "string" + }, + "ntDomain": { + "description": "The NT domain that this host belongs to.", + "readOnly": true, + "type": "string" + }, + "omsAgentID": { + "description": "The OMS agent id, if the host has OMS agent installed.", + "readOnly": true, + "type": "string" + }, + "osFamily": { + "description": "The operating system type.", "enum": [ - "Unknown", - "MD5", - "SHA1", - "SHA256", - "SHA256AC" + "Linux", + "Windows", + "Android", + "IOS" ], + "type": "string", "x-ms-enum": { - "name": "FileHashAlgorithm", - "modelAsString": true, + "modelAsString": false, + "name": "OSFamily", "values": [ { - "value": "Unknown", - "description": "Unknown hash algorithm" - }, - { - "value": "MD5", - "description": "MD5 hash type" + "description": "Host with Linux operating system.", + "value": "Linux" }, { - "value": "SHA1", - "description": "SHA1 hash type" + "description": "Host with Windows operating system.", + "value": "Windows" }, { - "value": "SHA256", - "description": "SHA256 hash type" + "description": "Host with Android operating system.", + "value": "Android" }, { - "value": "SHA256AC", - "description": "SHA256 Authenticode hash type" + "description": "Host with IOS operating system.", + "value": "IOS" } ] } + }, + "osVersion": { + "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration", + "readOnly": true, + "type": "string" } - } + }, + "type": "object" }, - "MalwareEntity": { - "x-ms-discriminator-value": "Malware", - "type": "object", - "description": "Represents a malware entity.", + "IpEntity": { "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents an ip entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "File entity properties", - "$ref": "#/definitions/MalwareEntityProperties" + "$ref": "#/definitions/IpEntityProperties", + "description": "Ip entity properties", + "x-ms-client-flatten": true } - } - }, - "MalwareEntityProperties": { + }, "type": "object", - "description": "Malware entity property bag.", + "x-ms-discriminator-value": "Ip" + }, + "IpEntityProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "Ip entity property bag.", "properties": { - "malwareName": { - "type": "string", + "address": { + "description": "The IP address as string, e.g. 127.0.0.1 (either in Ipv4 or Ipv6)", "readOnly": true, - "description": "The malware name by the vendor, e.g. Win32/Toga!rfn" + "type": "string" }, - "category": { - "type": "string", - "readOnly": true, - "description": "The malware category by the vendor, e.g. Trojan" + "location": { + "$ref": "#/definitions/GeoLocation", + "description": "The geo-location context attached to the ip entity" }, - "fileEntityIds": { - "type": "array", - "readOnly": true, + "threatIntelligence": { + "description": "A list of TI contexts attached to the ip entity.", "items": { - "description": "file entity id", - "type": "string" + "$ref": "#/definitions/ThreatIntelligence" }, - "description": "List of linked file entity identifiers on which the malware was found" - }, - "processEntityIds": { - "type": "array", "readOnly": true, - "items": { - "description": "process entity id", - "type": "string" - }, - "description": "List of linked process entity identifiers on which the malware was found." + "type": "array" } - } + }, + "type": "object" }, - "SecurityGroupEntity": { - "x-ms-discriminator-value": "SecurityGroup", + "Label": { + "description": "Label that will be used to tag and filter on.", + "type": "string" + }, + "MCASDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MCASDataConnectorProperties", + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "x-ms-client-flatten": true + } + }, "type": "object", - "description": "Represents a security group entity.", + "x-ms-discriminator-value": "MicrosoftCloudAppSecurity" + }, + "MCASDataConnectorDataTypes": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + } + ], + "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "discoveryLogs": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Discovery log data type connection.", + "type": "object" + } + }, + "type": "object" + }, + "MCASDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" } ], + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/MCASDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "MDATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "SecurityGroup entity properties", - "$ref": "#/definitions/SecurityGroupEntityProperties" + "$ref": "#/definitions/MDATPDataConnectorProperties", + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true } - } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection" }, - "SecurityGroupEntityProperties": { + "MDATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "MalwareEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a malware entity.", + "properties": { + "properties": { + "$ref": "#/definitions/MalwareEntityProperties", + "description": "File entity properties", + "x-ms-client-flatten": true + } + }, "type": "object", - "description": "SecurityGroup entity property bag.", + "x-ms-discriminator-value": "Malware" + }, + "MalwareEntityProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "Malware entity property bag.", "properties": { - "distinguishedName": { - "type": "string", + "category": { + "description": "The malware category by the vendor, e.g. Trojan", "readOnly": true, - "description": "The group distinguished name" + "type": "string" }, - "sid": { - "type": "string", + "fileEntityIds": { + "description": "List of linked file entity identifiers on which the malware was found", + "items": { + "description": "file entity id", + "type": "string" + }, "readOnly": true, - "description": "The SID attribute is a single-value attribute that specifies the security identifier (SID) of the group" + "type": "array" }, - "objectGuid": { - "type": "string", - "format": "uuid", + "malwareName": { + "description": "The malware name by the vendor, e.g. Win32/Toga!rfn", + "readOnly": true, + "type": "string" + }, + "processEntityIds": { + "description": "List of linked process entity identifiers on which the malware was found.", + "items": { + "description": "process entity id", + "type": "string" + }, "readOnly": true, - "description": "A single-value attribute that is the unique identifier for the object, assigned by active directory." + "type": "array" } - } + }, + "type": "object" }, - "AzureResourceEntity": { - "x-ms-discriminator-value": "AzureResource", - "type": "object", - "description": "Represents an azure resource entity.", + "OfficeConsent": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/Resource" } ], + "description": "Consent for Office365 tenant that already made.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "AzureResource entity properties", - "$ref": "#/definitions/AzureResourceEntityProperties" + "$ref": "#/definitions/OfficeConsentProperties", + "description": "Office consent properties", + "x-ms-client-flatten": true } - } + }, + "type": "object" }, - "AzureResourceEntityProperties": { - "type": "object", - "description": "AzureResource entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" + "OfficeConsentList": { + "description": "List of all the office365 consents.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of office consents.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of the consents.", + "items": { + "$ref": "#/definitions/OfficeConsent" + }, + "type": "array" } - ], + }, + "required": [ + "value" + ] + }, + "OfficeConsentProperties": { + "description": "Consent property bag.", "properties": { - "resourceId": { - "type": "string", + "tenantId": { + "description": "The tenantId of the Office365 with the consent.", + "type": "string" + }, + "tenantName": { + "description": "The tenant name of the Office365 with the consent.", "readOnly": true, - "description": "The azure resource id of the resource" + "type": "string" } - } + }, + "type": "object" }, - "CloudApplicationEntity": { - "x-ms-discriminator-value": "CloudApplication", - "type": "object", - "description": "Represents a cloud application entity.", + "OfficeDataConnector": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/DataConnector" } ], + "description": "Represents office data connector.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "CloudApplication entity properties", - "$ref": "#/definitions/CloudApplicationEntityProperties" + "$ref": "#/definitions/OfficeDataConnectorProperties", + "description": "Office data connector properties.", + "x-ms-client-flatten": true } - } - }, - "CloudApplicationEntityProperties": { + }, "type": "object", - "description": "CloudApplication entity property bag.", + "x-ms-discriminator-value": "Office365" + }, + "OfficeDataConnectorDataTypes": { + "description": "The available data types for office data connector.", + "properties": { + "exchange": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Exchange data type connection.", + "type": "object" + }, + "sharePoint": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "SharePoint data type connection.", + "type": "object" + } + }, + "type": "object" + }, + "OfficeDataConnectorProperties": { "allOf": [ { - "$ref": "#/definitions/EntityCommonProperties" + "$ref": "#/definitions/DataConnectorTenantId" } ], + "description": "Office data connector properties.", "properties": { - "appId": { - "type": "integer", - "readOnly": true, - "description": "The technical identifier of the application." - }, - "appName": { - "type": "string", - "readOnly": true, - "description": "The name of the related cloud application." + "dataTypes": { + "$ref": "#/definitions/OfficeDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "Operation": { + "description": "Operation provided by provider", + "properties": { + "display": { + "description": "Properties of the operation", + "properties": { + "description": { + "description": "Description of the operation", + "type": "string" + }, + "operation": { + "description": "Operation name", + "type": "string" + }, + "provider": { + "description": "Provider name", + "type": "string" + }, + "resource": { + "description": "Resource name", + "type": "string" + } + }, + "type": "object" }, - "instanceName": { - "type": "string", - "readOnly": true, - "description": "The user defined instance name of the cloud application. It is often used to distinguish between several applications of the same type that a customer has." + "name": { + "description": "Name of the operation", + "type": "string" } } }, + "OperationsList": { + "description": "Lists the operations available in the SecurityInsights RP.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of operations.", + "type": "string" + }, + "value": { + "description": "Array of operations", + "items": { + "$ref": "#/definitions/Operation" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, "ProcessEntity": { - "x-ms-discriminator-value": "Process", - "type": "object", - "description": "Represents a process entity.", "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a process entity.", "properties": { "properties": { - "x-ms-client-flatten": true, + "$ref": "#/definitions/ProcessEntityProperties", "description": "Process entity properties", - "$ref": "#/definitions/ProcessEntityProperties" + "x-ms-client-flatten": true } - } + }, + "type": "object", + "x-ms-discriminator-value": "Process" }, "ProcessEntityProperties": { - "type": "object", - "description": "Process entity property bag.", "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "Process entity property bag.", "properties": { - "processId": { - "type": "string", + "accountEntityId": { + "description": "The account entity id running the processes.", "readOnly": true, - "description": "The process ID" + "type": "string" }, "commandLine": { - "type": "string", + "description": "The command line used to create the process", + "readOnly": true, + "type": "string" + }, + "creationTimeUtc": { + "description": "The time when the process started to run", + "format": "date-time", "readOnly": true, - "description": "The command line used to create the process" + "type": "string" }, "elevationToken": { - "type": "string", + "description": "The elevation token associated with the process.", "enum": [ "Default", "Full", "Limited" ], + "type": "string", "x-ms-enum": { - "name": "ElevationToken", "modelAsString": false, + "name": "ElevationToken", "values": [ { - "value": "Default", - "description": "Default elevation token" + "description": "Default elevation token", + "value": "Default" }, { - "value": "Full", - "description": "Full elevation token" + "description": "Full elevation token", + "value": "Full" }, { - "value": "Limited", - "description": "Limited elevation token" + "description": "Limited elevation token", + "value": "Limited" } ] - }, - "description": "The elevation token associated with the process." + } }, - "creationTimeUtc": { - "type": "string", - "format": "date-time", + "hostEntityId": { + "description": "The host entity id on which the process was running", "readOnly": true, - "description": "The time when the process started to run" + "type": "string" }, - "imageFileEntityId": { - "type": "string", + "hostLogonSessionEntityId": { + "description": "The session entity id in which the process was running", "readOnly": true, - "description": "Image file entity id" + "type": "string" }, - "accountEntityId": { - "type": "string", + "imageFileEntityId": { + "description": "Image file entity id", "readOnly": true, - "description": "The account entity id running the processes." + "type": "string" }, "parentProcessEntityId": { - "type": "string", + "description": "The parent process entity id.", "readOnly": true, - "description": "The parent process entity id." + "type": "string" }, - "hostEntityId": { - "type": "string", + "processId": { + "description": "The process ID", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RegistryKeyEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a registry key entity.", + "properties": { + "properties": { + "$ref": "#/definitions/RegistryKeyEntityProperties", + "description": "RegistryKey entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "RegistryKey" + }, + "RegistryKeyEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "RegistryKey entity property bag.", + "properties": { + "hive": { + "description": "the hive that holds the registry key.", + "enum": [ + "HKEY_LOCAL_MACHINE", + "HKEY_CLASSES_ROOT", + "HKEY_CURRENT_CONFIG", + "HKEY_USERS", + "HKEY_CURRENT_USER_LOCAL_SETTINGS", + "HKEY_PERFORMANCE_DATA", + "HKEY_PERFORMANCE_NLSTEXT", + "HKEY_PERFORMANCE_TEXT", + "HKEY_A", + "HKEY_CURRENT_USER" + ], "readOnly": true, - "description": "The host entity id on which the process was running" - }, - "hostLogonSessionEntityId": { "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "RegistryHive", + "values": [ + { + "description": "HKEY_LOCAL_MACHINE", + "value": "HKEY_LOCAL_MACHINE" + }, + { + "description": "HKEY_CLASSES_ROOT", + "value": "HKEY_CLASSES_ROOT" + }, + { + "description": "HKEY_CURRENT_CONFIG", + "value": "HKEY_CURRENT_CONFIG" + }, + { + "description": "HKEY_USERS", + "value": "HKEY_USERS" + }, + { + "description": "HKEY_CURRENT_USER_LOCAL_SETTINGS", + "value": "HKEY_CURRENT_USER_LOCAL_SETTINGS" + }, + { + "description": "HKEY_PERFORMANCE_DATA", + "value": "HKEY_PERFORMANCE_DATA" + }, + { + "description": "HKEY_PERFORMANCE_NLSTEXT", + "value": "HKEY_PERFORMANCE_NLSTEXT" + }, + { + "description": "HKEY_PERFORMANCE_TEXT", + "value": "HKEY_PERFORMANCE_TEXT" + }, + { + "description": "HKEY_A", + "value": "HKEY_A" + }, + { + "description": "HKEY_CURRENT_USER", + "value": "HKEY_CURRENT_USER" + } + ] + } + }, + "key": { + "description": "The registry key path.", "readOnly": true, - "description": "The session entity id in which the process was running" + "type": "string" } - } + }, + "type": "object" }, - "DnsEntity": { - "x-ms-discriminator-value": "DnsResolution", - "type": "object", - "description": "Represents a dns entity.", + "RegistryValueEntity": { "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a registry value entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Dns entity properties", - "$ref": "#/definitions/DnsEntityProperties" + "$ref": "#/definitions/RegistryValueEntityProperties", + "description": "RegistryKey entity properties", + "x-ms-client-flatten": true } - } - }, - "DnsEntityProperties": { + }, "type": "object", - "description": "Dns entity property bag.", + "x-ms-discriminator-value": "RegistryValue" + }, + "RegistryValueEntityProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "RegistryValue entity property bag.", "properties": { - "domainName": { - "type": "string", + "keyEntityId": { + "description": "The registry key entity id.", "readOnly": true, - "description": "The name of the dns record associated with the alert" + "type": "string" }, - "ipAddressEntityIds": { - "type": "array", + "valueData": { + "description": "String formatted representation of the value data.", "readOnly": true, - "items": { - "description": "Ip entity id", - "type": "string" - }, - "description": "Ip entity identifiers for the resolved ip address." + "type": "string" }, - "dnsServerIpEntityId": { - "type": "string", + "valueName": { + "description": "The registry value name.", "readOnly": true, - "description": "An ip entity id for the dns server resolving the request" + "type": "string" }, - "hostIpAddressEntityId": { + "valueType": { + "description": "Specifies the data types to use when storing values in the registry, or identifies the data type of a value in the registry.", + "enum": [ + "None", + "Unknown", + "String", + "ExpandString", + "Binary", + "DWord", + "MultiString", + "QWord" + ], + "readOnly": true, "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "RegistryValueKind", + "values": [ + { + "description": "None", + "value": "None" + }, + { + "description": "Unknown value type", + "value": "Unknown" + }, + { + "description": "String value type", + "value": "String" + }, + { + "description": "ExpandString value type", + "value": "ExpandString" + }, + { + "description": "Binary value type", + "value": "Binary" + }, + { + "description": "DWord value type", + "value": "DWord" + }, + { + "description": "MultiString value type", + "value": "MultiString" + }, + { + "description": "QWord value type", + "value": "QWord" + } + ] + } + } + }, + "type": "object" + }, + "Resource": { + "description": "An azure resource object", + "properties": { + "id": { + "description": "Azure resource Id", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Azure resource name", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Azure resource type", "readOnly": true, - "description": "An ip entity id for the dns request client" + "type": "string" } - } + }, + "x-ms-azure-resource": true }, - "IpEntity": { - "x-ms-discriminator-value": "Ip", - "type": "object", - "description": "Represents an ip entity.", + "ScheduledAlertRule": { "allOf": [ { - "$ref": "#/definitions/Entity" + "$ref": "#/definitions/AlertRule" } ], + "description": "Represents scheduled alert rule.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Ip entity properties", - "$ref": "#/definitions/IpEntityProperties" + "$ref": "#/definitions/ScheduledAlertRuleProperties", + "description": "Scheduled alert rule properties", + "x-ms-client-flatten": true } - } - }, - "IpEntityProperties": { + }, "type": "object", - "description": "Ip entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], + "x-ms-discriminator-value": "Scheduled" + }, + "ScheduledAlertRuleProperties": { + "description": "Alert rule property bag.", "properties": { - "address": { - "type": "string", - "readOnly": true, - "description": "The IP address as string, e.g. 127.0.0.1 (either in Ipv4 or Ipv6)" + "description": { + "description": "The description of the alert rule.", + "type": "string" }, - "location": { - "$ref": "#/definitions/GeoLocation", - "description": "The geo-location context attached to the ip entity" + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "type": "string" }, - "threatIntelligence": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ThreatIntelligence" - }, - "description": "A list of TI contexts attached to the ip entity." - } - } - }, - "GeoLocation": { - "type": "object", - "readOnly": true, - "description": "The geo-location context attached to the ip entity", - "properties": { - "countryCode": { - "type": "string", - "readOnly": true, - "description": "The country code according to ISO 3166 format" + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" }, - "countryName": { - "type": "string", + "lastModifiedUtc": { + "description": "The last time that this alert has been modified.", "readOnly": true, - "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name" + "type": "string" }, - "state": { - "type": "string", - "readOnly": true, - "description": "State name" + "query": { + "description": "The query that creates alerts for this rule.", + "type": "string" }, - "city": { - "type": "string", - "readOnly": true, - "description": "City name" + "queryFrequency": { + "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.", + "format": "duration", + "type": "string" }, - "longitude": { - "type": "number", - "format": "double", - "readOnly": true, - "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90, with positive numbers representing North and negative numbers representing South. Latitude and longitude are derived from the city or postal code." + "queryPeriod": { + "description": "The period (in ISO 8601 duration format) that this alert rule looks at.", + "format": "duration", + "type": "string" }, - "latitude": { - "type": "number", - "format": "double", - "readOnly": true, - "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180, with positive numbers representing East and negative numbers representing West. Latitude and longitude are derived from the city or postal code." + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule." }, - "asn": { - "type": "integer", - "readOnly": true, - "description": "Autonomous System Number" + "suppressionDuration": { + "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered.", + "format": "duration", + "type": "string" + }, + "suppressionEnabled": { + "description": "Determines whether the suppression for this alert rule is enabled or disabled.", + "type": "boolean" + }, + "triggerOperator": { + "$ref": "#/definitions/AlertRuleTriggerOperator", + "description": "The operation against the threshold that triggers alert rule." + }, + "triggerThreshold": { + "description": "The threshold triggers this alert rule.", + "type": "integer" } - } + }, + "required": [ + "displayName", + "description", + "severity", + "enabled", + "query", + "queryFrequency", + "queryPeriod", + "triggerOperator", + "triggerThreshold", + "suppressionEnabled", + "suppressionDuration" + ], + "type": "object" }, - "ThreatIntelligence": { + "ScheduledAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents scheduled alert rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/BaseAlertRuleTemplateProperties" + }, + { + "$ref": "#/definitions/ScheduledAlertRuleTemplateProperties" + } + ], + "description": "Scheduled alert rule template properties", + "required": [ + "displayName", + "description", + "createdDateUTC", + "status", + "requiredDataConnectors", + "alertRulesCreatedByTemplateCount", + "severity", + "query", + "queryFrequency", + "queryPeriod", + "triggerOperator", + "triggerThreshold" + ], + "x-ms-client-flatten": true + } + }, "type": "object", - "description": "ThreatIntelligence property bag.", + "x-ms-discriminator-value": "Scheduled" + }, + "ScheduledAlertRuleTemplateProperties": { + "description": "Schedule alert rule template property bag.", "properties": { - "providerName": { - "type": "string", - "readOnly": true, - "description": "Name of the provider from whom this Threat Intelligence information was received" + "query": { + "description": "The query that creates alerts for this rule.", + "type": "string" }, - "threatType": { - "type": "string", - "readOnly": true, - "description": "Threat type (e.g. \"Botnet\")" + "queryFrequency": { + "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.", + "format": "duration", + "type": "string" }, - "threatName": { - "type": "string", - "readOnly": true, - "description": "Threat name (e.g. \"Jedobot malware\")" + "queryPeriod": { + "description": "The period (in ISO 8601 duration format) that this alert rule looks at.", + "format": "duration", + "type": "string" }, - "confidence": { - "type": "number", - "format": "double", - "readOnly": true, - "description": "Confidence (must be between 0 and 1)" + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule." }, - "reportLink": { - "type": "string", - "readOnly": true, - "description": "Report link" + "triggerOperator": { + "$ref": "#/definitions/AlertRuleTriggerOperator", + "description": "The operation against the threshold that triggers alert rule." }, - "threatDescription": { - "type": "string", - "readOnly": true, - "description": "Threat description (free text)" + "triggerThreshold": { + "description": "The threshold triggers this alert rule.", + "type": "integer" } - } + }, + "type": "object" }, - "RegistryKeyEntity": { - "x-ms-discriminator-value": "RegistryKey", - "type": "object", - "description": "Represents a registry key entity.", + "SecurityAlert": { "allOf": [ { "$ref": "#/definitions/Entity" } ], + "description": "Represents a security alert entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "RegistryKey entity properties", - "$ref": "#/definitions/RegistryKeyEntityProperties" + "$ref": "#/definitions/SecurityAlertProperties", + "description": "SecurityAlert entity properties", + "x-ms-client-flatten": true } - } - }, - "RegistryKeyEntityProperties": { + }, "type": "object", - "description": "RegistryKey entity property bag.", + "x-ms-discriminator-value": "SecurityAlert" + }, + "SecurityAlertProperties": { "allOf": [ { "$ref": "#/definitions/EntityCommonProperties" } ], + "description": "SecurityAlert entity property bag.", "properties": { - "hive": { - "type": "string", - "description": "the hive that holds the registry key.", + "alertDisplayName": { + "description": "The display name of the alert.", + "readOnly": true, + "type": "string" + }, + "alertType": { + "description": "The type name of the alert.", + "readOnly": true, + "type": "string" + }, + "compromisedEntity": { + "description": "Display name of the main entity being reported on.", "readOnly": true, + "type": "string" + }, + "confidenceLevel": { + "description": "The confidence level of this alert.", "enum": [ - "HKEY_LOCAL_MACHINE", - "HKEY_CLASSES_ROOT", - "HKEY_CURRENT_CONFIG", - "HKEY_USERS", - "HKEY_CURRENT_USER_LOCAL_SETTINGS", - "HKEY_PERFORMANCE_DATA", - "HKEY_PERFORMANCE_NLSTEXT", - "HKEY_PERFORMANCE_TEXT", - "HKEY_A", - "HKEY_CURRENT_USER" + "Unknown", + "Low", + "High" ], + "readOnly": true, + "type": "string", "x-ms-enum": { - "name": "RegistryHive", "modelAsString": true, + "name": "ConfidenceLevel", "values": [ { - "value": "HKEY_LOCAL_MACHINE", - "description": "HKEY_LOCAL_MACHINE" - }, - { - "value": "HKEY_CLASSES_ROOT", - "description": "HKEY_CLASSES_ROOT" - }, - { - "value": "HKEY_CURRENT_CONFIG", - "description": "HKEY_CURRENT_CONFIG" - }, - { - "value": "HKEY_USERS", - "description": "HKEY_USERS" + "description": "Unknown confidence, the is the default value", + "value": "Unknown" }, { - "value": "HKEY_CURRENT_USER_LOCAL_SETTINGS", - "description": "HKEY_CURRENT_USER_LOCAL_SETTINGS" + "description": "Low confidence, meaning we have some doubts this is indeed malicious or part of an attack", + "value": "Low" }, { - "value": "HKEY_PERFORMANCE_DATA", - "description": "HKEY_PERFORMANCE_DATA" + "description": "High confidence that the alert is true positive malicious", + "value": "High" + } + ] + } + }, + "confidenceReasons": { + "description": "The confidence reasons", + "items": { + "description": "confidence reason item", + "properties": { + "reason": { + "description": "The reason's description", + "readOnly": true, + "type": "string" }, + "reasonType": { + "description": "The type (category) of the reason", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "confidenceScore": { + "description": "The confidence score of the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "confidenceScoreStatus": { + "description": "The confidence score calculation status, i.e. indicating if score calculation is pending for this alert, not applicable or final.", + "enum": [ + "NotApplicable", + "InProcess", + "NotFinal", + "Final" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ConfidenceScoreStatus", + "values": [ { - "value": "HKEY_PERFORMANCE_NLSTEXT", - "description": "HKEY_PERFORMANCE_NLSTEXT" + "description": "Score will not be calculated for this alert as it is not supported by virtual analyst", + "value": "NotApplicable" }, { - "value": "HKEY_PERFORMANCE_TEXT", - "description": "HKEY_PERFORMANCE_TEXT" + "description": "No score was set yet and calculation is in progress", + "value": "InProcess" }, { - "value": "HKEY_A", - "description": "HKEY_A" + "description": "Score is calculated and shown as part of the alert, but may be updated again at a later time following the processing of additional data", + "value": "NotFinal" }, { - "value": "HKEY_CURRENT_USER", - "description": "HKEY_CURRENT_USER" + "description": "Final score was calculated and available", + "value": "Final" } ] } }, - "key": { - "type": "string", - "readOnly": true, - "description": "The registry key path." - } - } - }, - "RegistryValueEntity": { - "x-ms-discriminator-value": "RegistryValue", - "type": "object", - "description": "Represents a registry value entity.", - "allOf": [ - { - "$ref": "#/definitions/Entity" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "RegistryKey entity properties", - "$ref": "#/definitions/RegistryValueEntityProperties" - } - } - }, - "RegistryValueEntityProperties": { - "type": "object", - "description": "RegistryValue entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], - "properties": { - "valueName": { - "type": "string", + "description": { + "description": "Alert description.", "readOnly": true, - "description": "The registry value name." + "type": "string" }, - "valueData": { - "type": "string", + "endTimeUtc": { + "description": "The impact end time of the alert (the time of the last event contributing to the alert).", + "format": "date-time", "readOnly": true, - "description": "String formatted representation of the value data." + "type": "string" }, - "valueType": { - "type": "string", - "description": "Specifies the data types to use when storing values in the registry, or identifies the data type of a value in the registry.", - "readOnly": true, + "intent": { + "description": "Holds the alert intent stage(s) mapping for this alert.", "enum": [ - "None", "Unknown", - "String", - "ExpandString", - "Binary", - "DWord", - "MultiString", - "QWord" + "Probing", + "Exploitation", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Execution", + "Collection", + "Exfiltration", + "CommandAndControl", + "Impact" ], + "readOnly": true, + "type": "string", "x-ms-enum": { - "name": "RegistryValueKind", "modelAsString": true, + "name": "KillChainIntent", "values": [ { - "value": "None", - "description": "None" + "description": "The default value.", + "value": "Unknown" + }, + { + "description": "Probing could be an attempt to access a certain resource regardless of a malicious intent or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt originating from outside the network in attempt to scan the target system and find a way in.", + "value": "Probing" + }, + { + "description": "Exploitation is the stage where an attacker manage to get foothold on the attacked resource. This stage is applicable not only for compute hosts, but also for resources such as user accounts, certificates etc. Adversaries will often be able to control the resource after this stage.", + "value": "Exploitation" + }, + { + "description": "Persistence is any access, action, or configuration change to a system that gives an adversary a persistent presence on that system. Adversaries will often need to maintain access to systems through interruptions such as system restarts, loss of credentials, or other failures that would require a remote access tool to restart or alternate backdoor for them to regain access.", + "value": "Persistence" + }, + { + "description": "Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. Certain tools or actions require a higher level of privilege to work and are likely necessary at many points throughout an operation. User accounts with permissions to access specific systems or perform specific functions necessary for adversaries to achieve their objective may also be considered an escalation of privilege.", + "value": "PrivilegeEscalation" + }, + { + "description": "Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. Sometimes these actions are the same as or variations of techniques in other categories that have the added benefit of subverting a particular defense or mitigation. ", + "value": "DefenseEvasion" }, { - "value": "Unknown", - "description": "Unknown value type" + "description": "Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. Adversaries will likely attempt to obtain legitimate credentials from users or administrator accounts (local system administrator or domain users with administrator access) to use within the network. With sufficient access within a network, an adversary can create accounts for later use within the environment.", + "value": "CredentialAccess" }, { - "value": "String", - "description": "String value type" + "description": "Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. When adversaries gain access to a new system, they must orient themselves to what they now have control of and what benefits operating from that system give to their current objective or overall goals during the intrusion. The operating system provides many native tools that aid in this post-compromise information-gathering phase.", + "value": "Discovery" }, { - "value": "ExpandString", - "description": "ExpandString value type" + "description": "Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. The lateral movement techniques could allow an adversary to gather information from a system without needing additional tools, such as a remote access tool. An adversary can use lateral movement for many purposes, including remote Execution of tools, pivoting to additional systems, access to specific information or files, access to additional credentials, or to cause an effect.", + "value": "LateralMovement" }, { - "value": "Binary", - "description": "Binary value type" + "description": "The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. This tactic is often used in conjunction with lateral movement to expand access to remote systems on a network.", + "value": "Execution" }, { - "value": "DWord", - "description": "DWord value type" + "description": "Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.", + "value": "Collection" }, { - "value": "MultiString", - "description": "MultiString value type" + "description": "Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.", + "value": "Exfiltration" }, { - "value": "QWord", - "description": "QWord value type" + "description": "The command and control tactic represents how adversaries communicate with systems under their control within a target network.", + "value": "CommandAndControl" + }, + { + "description": "The impact intent primary objective is to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. This would often refer to techniques such as ransom-ware, defacement, data manipulation and others.", + "value": "Impact" } ] } }, - "keyEntityId": { - "type": "string", - "readOnly": true, - "description": "The registry key entity id." - } - } - }, - "UrlEntity": { - "x-ms-discriminator-value": "Url", - "type": "object", - "description": "Represents a url entity.", - "allOf": [ - { - "$ref": "#/definitions/Entity" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Url entity properties", - "$ref": "#/definitions/UrlEntityProperties" - } - } - }, - "UrlEntityProperties": { - "type": "object", - "description": "Url entity property bag.", - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], - "properties": { - "url": { - "type": "string", - "readOnly": true, - "description": "A full URL the entity points to" - } - } - }, - "EntityExpandParameters": { - "description": "The parameters required to execute an expand operation on the given entity.", - "properties": { - "expansionId": { - "type": "string", - "format": "uuid", - "description": "The Id of the expansion to perform." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The start date filter, so the only expansion results returned are after this date." - }, - "endTime": { - "type": "string", + "processingEndTime": { + "description": "The time the alert was made available for consumption.", "format": "date-time", - "description": "The end date filter, so the only expansion results returned are before this date." - } - } - }, - "EntityExpandResponse": { - "properties": { - "value": { - "type": "object", - "description": "The expansion result values.", - "properties": { - "entities": { - "type": "array", - "items": { - "$ref": "#/definitions/Entity" - }, - "description": "Array of the expansion result entities." - } - } + "readOnly": true, + "type": "string" }, - "metaData": { - "$ref": "#/definitions/ExpansionResultsMetadata", - "description": "The metadata from the expansion operation results." - } - }, - "description": "The entity expansion result operation response." - }, - "ExpansionResultsMetadata": { - "type": "object", - "description": "Expansion result metadata.", - "properties": { - "aggregations": { - "type": "array", + "productComponentName": { + "description": "The name of a component inside the product which generated the alert.", + "readOnly": true, + "type": "string" + }, + "productName": { + "description": "The name of the product which published this alert.", + "readOnly": true, + "type": "string" + }, + "productVersion": { + "description": "The version of the product generating the alert.", + "readOnly": true, + "type": "string" + }, + "remediationSteps": { + "description": "Manual action items to take to remediate the alert.", "items": { - "$ref": "#/definitions/ExpansionResultAggregation" + "type": "string" }, - "description": "Information of the aggregated nodes in the expansion result." - } - } - }, - "ExpansionResultAggregation": { - "type": "object", - "description": "Information of a specific aggregation in the expansion result.", - "properties": { - "entityKind": { - "description": "The kind of the aggregated entity.", - "$ref": "#/definitions/EntityInnerKind" + "readOnly": true, + "type": "array" }, - "count": { - "type": "integer", - "description": "Total number of aggregations of the given kind (and aggregationType if given) in the expansion result." + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity of the alert" }, - "aggregationType": { - "type": "string", - "description": "The common type of the aggregation. (for e.g. entity field name)" + "startTimeUtc": { + "description": "The impact start time of the alert (the time of the first event contributing to the alert).", + "format": "date-time", + "readOnly": true, + "type": "string" }, - "displayName": { + "status": { + "description": "The lifecycle status of the alert.", + "enum": [ + "Unknown", + "New", + "Resolved", + "Dismissed", + "InProgress" + ], + "readOnly": true, "type": "string", - "description": "The display name of the aggregation by type." - } - }, - "required": [ - "entityKind", - "count" - ] - }, - "OfficeConsentList": { - "description": "List of all the office365 consents.", - "properties": { - "nextLink": { + "x-ms-enum": { + "modelAsString": true, + "name": "AlertStatus", + "values": [ + { + "description": "Unknown value", + "value": "Unknown" + }, + { + "description": "New alert", + "value": "New" + }, + { + "description": "Alert closed after handling", + "value": "Resolved" + }, + { + "description": "Alert dismissed as false positive", + "value": "Dismissed" + }, + { + "description": "Alert is being handled", + "value": "InProgress" + } + ] + } + }, + "systemAlertId": { + "description": "Holds the product identifier of the alert for the product.", "readOnly": true, - "description": "URL to fetch the next set of office consents.", "type": "string" }, - "value": { - "description": "Array of the consents.", - "type": "array", - "items": { - "$ref": "#/definitions/OfficeConsent" - } + "timeGenerated": { + "description": "The time the alert was generated.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "vendorName": { + "description": "The name of the vendor that raise the alert.", + "readOnly": true, + "type": "string" } }, - "required": [ - "value" - ] + "type": "object" }, - "OfficeConsent": { - "type": "object", - "description": "Consent for Office365 tenant that already made.", + "SecurityGroupEntity": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/Entity" } ], + "description": "Represents a security group entity.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Office consent properties", - "$ref": "#/definitions/OfficeConsentProperties" + "$ref": "#/definitions/SecurityGroupEntityProperties", + "description": "SecurityGroup entity properties", + "x-ms-client-flatten": true } - } - }, - "OfficeConsentProperties": { + }, "type": "object", - "description": "Consent property bag.", - "properties": { - "tenantId": { - "type": "string", - "description": "The tenantId of the Office365 with the consent." - }, - "tenantName": { - "type": "string", - "readOnly": true, - "description": "The tenant name of the Office365 with the consent." - } - } + "x-ms-discriminator-value": "SecurityGroup" }, - "Resource": { - "x-ms-azure-resource": true, - "description": "An azure resource object", + "SecurityGroupEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "SecurityGroup entity property bag.", "properties": { - "id": { - "type": "string", + "distinguishedName": { + "description": "The group distinguished name", "readOnly": true, - "description": "Azure resource Id" + "type": "string" }, - "type": { - "type": "string", + "objectGuid": { + "description": "A single-value attribute that is the unique identifier for the object, assigned by active directory.", + "format": "uuid", "readOnly": true, - "description": "Azure resource type" + "type": "string" }, - "name": { - "type": "string", + "sid": { + "description": "The SID attribute is a single-value attribute that specifies the security identifier (SID) of the group", "readOnly": true, - "description": "Azure resource name" + "type": "string" } - } + }, + "type": "object" }, "Settings": { - "type": "object", - "description": "The Setting.", - "discriminator": "kind", "allOf": [ { "$ref": "#/definitions/Resource" @@ -5069,460 +5212,288 @@ "$ref": "#/definitions/SettingsKind" } ], + "description": "The Setting.", + "discriminator": "kind", "properties": { "etag": { - "type": "string", - "description": "Etag of the alert rule." + "description": "Etag of the alert rule.", + "type": "string" } - } + }, + "type": "object" }, "SettingsKind": { - "type": "object", "description": "Describes an Azure resource with kind.", "properties": { "kind": { - "type": "string", "description": "The kind of the setting", "enum": [ "UebaSettings", "ToggleSettings" ], - "x-ms-enum": { - "name": "SettingKind", - "modelAsString": true - } - } - } - }, - "UebaSettings": { - "x-ms-discriminator-value": "UebaSettings", - "type": "object", - "description": "Represents settings for User and Entity Behavior Analytics enablement.", - "allOf": [ - { - "$ref": "#/definitions/Settings" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "User and Entity Behavior Analytics settings properties", - "$ref": "#/definitions/UebaSettingsProperties" - } - } - }, - "UebaSettingsProperties": { - "type": "object", - "description": "User and Entity Behavior Analytics settings property bag.", - "properties": { - "isEnabled": { - "type": "boolean", - "description": "Determines whether User and Entity Behavior Analytics is enabled for this workspace." - }, - "statusInMcas": { - "type": "string", - "readOnly": true, - "description": "Determines whether User and Entity Behavior Analytics is enabled from MCAS (Microsoft Cloud App Security).", - "enum": [ - "Enabled", - "Disabled" - ], - "x-ms-enum": { - "name": "StatusInMcas", - "modelAsString": true - } - }, - "atpLicenseStatus": { "type": "string", - "readOnly": true, - "description": "Determines whether the tenant has ATP (Advanced Threat Protection) license.", - "enum": [ - "Enabled", - "Disabled" - ], "x-ms-enum": { - "name": "LicenseStatus", - "modelAsString": true + "modelAsString": true, + "name": "SettingKind" } } - } + }, + "type": "object" }, - "ToggleSettings": { - "x-ms-discriminator-value": "ToggleSettings", - "type": "object", - "description": "Settings with single toggle.", + "TIDataConnector": { "allOf": [ { - "$ref": "#/definitions/Settings" + "$ref": "#/definitions/DataConnector" } ], + "description": "Represents threat intelligence data connector.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "toggle properties", - "$ref": "#/definitions/ToggleSettingsProperties" - } - } - }, - "ToggleSettingsProperties": { - "type": "object", - "description": "toggle property bag.", - "properties": { - "isEnabled": { - "type": "boolean", - "description": "Determines whether the setting is enable or disabled." + "$ref": "#/definitions/TIDataConnectorProperties", + "description": "TI (Threat Intelligence) data connector properties.", + "x-ms-client-flatten": true } - } - }, - "Aggregations": { + }, "type": "object", - "description": "The aggregation.", - "discriminator": "kind", - "allOf": [ - { - "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/AggregationsKind" - } - ] + "x-ms-discriminator-value": "ThreatIntelligence" }, - "AggregationsKind": { - "type": "object", - "description": "Describes an Azure resource with kind.", + "TIDataConnectorDataTypes": { + "description": "The available data types for TI (Threat Intelligence) data connector.", "properties": { - "kind": { - "type": "string", - "description": "The kind of the setting", - "enum": [ - "CasesAggregation" + "indicators": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } ], - "x-ms-enum": { - "name": "AggregationsKind", - "modelAsString": true - } + "description": "Data type for indicators connection.", + "type": "object" } - } + }, + "type": "object" }, - "CasesAggregation": { - "x-ms-discriminator-value": "CasesAggregation", - "type": "object", - "description": "Represents aggregations results for cases.", + "TIDataConnectorProperties": { "allOf": [ { - "$ref": "#/definitions/Aggregations" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "description": "Properties of aggregations results of cases.", - "$ref": "#/definitions/CasesAggregationProperties" + "$ref": "#/definitions/DataConnectorTenantId" } - } - }, - "CasesAggregationProperties": { - "type": "object", - "description": "Aggregative results of cases property bag.", + ], + "description": "TI (Threat Intelligence) data connector properties.", "properties": { - "aggregationBySeverity": { - "description": "Aggregations results by case severity.", - "$ref": "#/definitions/CasesAggregationBySeverityProperties" - }, - "aggregationByStatus": { - "description": "Aggregations results by case status.", - "$ref": "#/definitions/CasesAggregationByStatusProperties" + "dataTypes": { + "$ref": "#/definitions/TIDataConnectorDataTypes", + "description": "The available data types for the connector." } - } + }, + "type": "object" }, - "CasesAggregationBySeverityProperties": { - "type": "object", - "description": "Aggregative results of cases by severity property bag.", + "ThreatIntelligence": { + "description": "ThreatIntelligence property bag.", "properties": { - "totalCriticalSeverity": { - "type": "integer", + "confidence": { + "description": "Confidence (must be between 0 and 1)", + "format": "double", "readOnly": true, - "description": "Total amount of open cases with severity Critical" + "type": "number" }, - "totalHighSeverity": { - "type": "integer", + "providerName": { + "description": "Name of the provider from whom this Threat Intelligence information was received", "readOnly": true, - "description": "Total amount of open cases with severity High" + "type": "string" }, - "totalMediumSeverity": { - "type": "integer", + "reportLink": { + "description": "Report link", "readOnly": true, - "description": "Total amount of open cases with severity medium" + "type": "string" }, - "totalLowSeverity": { - "type": "integer", + "threatDescription": { + "description": "Threat description (free text)", "readOnly": true, - "description": "Total amount of open cases with severity Low" + "type": "string" }, - "totalInformationalSeverity": { - "type": "integer", + "threatName": { + "description": "Threat name (e.g. \"Jedobot malware\")", "readOnly": true, - "description": "Total amount of open cases with severity Informational" + "type": "string" + }, + "threatType": { + "description": "Threat type (e.g. \"Botnet\")", + "readOnly": true, + "type": "string" } - } + }, + "type": "object" }, - "CasesAggregationByStatusProperties": { - "type": "object", - "description": "Aggregative results of cases by status property bag.", + "ToggleSettings": { + "allOf": [ + { + "$ref": "#/definitions/Settings" + } + ], + "description": "Settings with single toggle.", "properties": { - "totalNewStatus": { - "type": "integer", - "readOnly": true, - "description": "Total amount of open cases with status New" - }, - "totalInProgressStatus": { - "type": "integer", - "readOnly": true, - "description": "Total amount of open cases with status InProgress" - }, - "totalResolvedStatus": { - "type": "integer", - "readOnly": true, - "description": "Total amount of open cases with status Resolved" - }, - "totalDismissedStatus": { - "type": "integer", - "readOnly": true, - "description": "Total amount of open cases with status Dismissed" + "properties": { + "$ref": "#/definitions/ToggleSettingsProperties", + "description": "toggle properties", + "x-ms-client-flatten": true } - } + }, + "type": "object", + "x-ms-discriminator-value": "ToggleSettings" }, - "EntityQueryList": { - "description": "List of all the entity queries.", + "ToggleSettingsProperties": { + "description": "toggle property bag.", "properties": { - "nextLink": { - "readOnly": true, - "description": "URL to fetch the next set of entity queries.", - "type": "string" - }, - "value": { - "description": "Array of entity queries.", - "type": "array", - "items": { - "$ref": "#/definitions/EntityQuery" - } + "isEnabled": { + "description": "Determines whether the setting is enable or disabled.", + "type": "boolean" } }, - "required": [ - "value" - ] + "type": "object" }, - "EntityQuery": { - "type": "object", - "description": "Specific entity query.", + "UebaSettings": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/Settings" } ], + "description": "Represents settings for User and Entity Behavior Analytics enablement.", "properties": { "properties": { - "x-ms-client-flatten": true, - "description": "Entity query properties", - "$ref": "#/definitions/EntityQueryProperties" + "$ref": "#/definitions/UebaSettingsProperties", + "description": "User and Entity Behavior Analytics settings properties", + "x-ms-client-flatten": true } - } - }, - "EntityQueryProperties": { + }, "type": "object", - "description": "Describes entity query properties", + "x-ms-discriminator-value": "UebaSettings" + }, + "UebaSettingsProperties": { + "description": "User and Entity Behavior Analytics settings property bag.", "properties": { - "queryTemplate": { + "atpLicenseStatus": { + "description": "Determines whether the tenant has ATP (Advanced Threat Protection) license.", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, "type": "string", - "description": "The template query string to be parsed and formatted" - }, - "inputEntityType": { - "$ref": "#/definitions/EntityInnerType", - "description": "The type of the query's source entity" - }, - "inputFields": { - "type": "array", - "items": { - "description": "input field", - "type": "string" - }, - "description": "List of the fields of the source entity that are required to run the query" - }, - "outputEntityTypes": { - "type": "array", - "items": { - "description": "output entity type", - "$ref": "#/definitions/EntityInnerType" - }, - "description": "List of the desired output types to be constructed from the result" + "x-ms-enum": { + "modelAsString": true, + "name": "LicenseStatus" + } }, - "dataSources": { - "type": "array", - "items": { - "description": "data source", - "type": "string" - }, - "description": "List of the data sources that are required to run the query" + "isEnabled": { + "description": "Determines whether User and Entity Behavior Analytics is enabled for this workspace.", + "type": "boolean" }, - "displayName": { + "statusInMcas": { + "description": "Determines whether User and Entity Behavior Analytics is enabled from MCAS (Microsoft Cloud App Security).", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, "type": "string", - "description": "The query display name" + "x-ms-enum": { + "modelAsString": true, + "name": "StatusInMcas" + } } - } + }, + "type": "object" }, - "EntityInnerType": { - "type": "string", - "description": "The type of the entity", - "enum": [ - "Account", - "Host", - "File", - "AzureResource", - "CloudApplication", - "DNS", - "FileHash", - "IP", - "Malware", - "Process", - "RegistryKey", - "RegistryValue", - "SecurityGroup", - "URL", - "SecurityAlert", - "HuntingBookmark" + "UrlEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } ], - "x-ms-enum": { - "name": "EntityType", - "modelAsString": true, - "values": [ - { - "value": "Account", - "description": "Entity represents account in the system." - }, - { - "value": "Host", - "description": "Entity represents host in the system." - }, - { - "value": "File", - "description": "Entity represents file in the system." - }, - { - "value": "AzureResource", - "description": "Entity represents azure resource in the system." - }, - { - "value": "CloudApplication", - "description": "Entity represents cloud application in the system." - }, - { - "value": "DNS", - "description": "Entity represents dns in the system." - }, - { - "value": "FileHash", - "description": "Entity represents file hash in the system." - }, - { - "value": "IP", - "description": "Entity represents ip in the system." - }, - { - "value": "Malware", - "description": "Entity represents malware in the system." - }, - { - "value": "Process", - "description": "Entity represents process in the system." - }, - { - "value": "RegistryKey", - "description": "Entity represents registry key in the system." - }, - { - "value": "RegistryValue", - "description": "Entity represents registry value in the system." - }, - { - "value": "SecurityGroup", - "description": "Entity represents security group in the system." - }, - { - "value": "URL", - "description": "Entity represents url in the system." - }, - { - "value": "SecurityAlert", - "description": "Entity represents security alert in the system." - }, - { - "value": "HuntingBookmark", - "description": "Entity represents HuntingBookmark in the system." - } - ] - } - } - }, - "parameters": { - "SubscriptionId": { - "name": "subscriptionId", - "in": "path", - "required": true, - "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - "type": "string", - "description": "Azure subscription ID" + "description": "Represents a url entity.", + "properties": { + "properties": { + "$ref": "#/definitions/UrlEntityProperties", + "description": "Url entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Url" }, - "ResourceGroupName": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90, - "x-ms-parameter-location": "method" + "UrlEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Url entity property bag.", + "properties": { + "url": { + "description": "A full URL the entity points to", + "readOnly": true, + "type": "string" + } + }, + "type": "object" }, - "ApiVersion": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "enum": [ - "2019-01-01-preview" + "UserInfo": { + "description": "User information that made some action", + "properties": { + "email": { + "description": "The email of the user.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the user.", + "readOnly": true, + "type": "string" + }, + "objectId": { + "description": "The object id of the user.", + "format": "uuid", + "type": "string", + "x-nullable": true + } + }, + "required": [ + "objectId" ], - "description": "API version for the operation" - }, - "OperationalInsightsResourceProvider": { - "name": "operationalInsightsResourceProvider", - "in": "path", + "type": "object" + } + }, + "parameters": { + "Action": { + "description": "The action", + "in": "body", + "name": "action", "required": true, - "type": "string", - "description": "The namespace of workspaces resource provider- Microsoft.OperationalInsights.", + "schema": { + "$ref": "#/definitions/Action" + }, "x-ms-parameter-location": "method" }, - "WorkspaceName": { - "name": "workspaceName", + "ActionId": { + "description": "Action ID", "in": "path", + "name": "actionId", "required": true, "type": "string", - "description": "The name of the workspace.", - "minLength": 1, - "maxLength": 90, "x-ms-parameter-location": "method" }, - "RuleId": { - "name": "ruleId", + "AggregationsName": { + "description": "The aggregation name. Supports - Cases", "in": "path", + "name": "aggregationsName", "required": true, "type": "string", - "description": "Alert rule ID", "x-ms-parameter-location": "method" }, "AlertRule": { - "name": "alertRule", - "in": "body", "description": "The alert rule", + "in": "body", + "name": "alertRule", "required": true, "schema": { "$ref": "#/definitions/AlertRule" @@ -5530,195 +5501,224 @@ "x-ms-parameter-location": "method" }, "AlertRuleTemplateId": { - "name": "alertRuleTemplateId", + "description": "Alert rule template ID", "in": "path", + "name": "alertRuleTemplateId", "required": true, "type": "string", - "description": "Alert rule template ID", "x-ms-parameter-location": "method" }, - "ActionId": { - "name": "actionId", - "in": "path", + "ApiVersion": { + "description": "API version for the operation", + "enum": [ + "2019-01-01-preview" + ], + "in": "query", + "name": "api-version", "required": true, - "type": "string", - "description": "Action ID", - "x-ms-parameter-location": "method" + "type": "string" }, - "Action": { - "name": "action", + "Bookmark": { + "description": "The bookmark", "in": "body", - "description": "The action", + "name": "bookmark", "required": true, "schema": { - "$ref": "#/definitions/Action" + "$ref": "#/definitions/Bookmark" }, "x-ms-parameter-location": "method" }, - "CaseId": { - "name": "caseId", + "BookmarkId": { + "description": "Bookmark ID", "in": "path", + "name": "bookmarkId", "required": true, "type": "string", - "description": "Case ID", "x-ms-parameter-location": "method" }, "Case": { - "name": "case", - "in": "body", "description": "The case", + "in": "body", + "name": "case", "required": true, "schema": { "$ref": "#/definitions/Case" }, "x-ms-parameter-location": "method" }, - "CaseCommentId": { - "name": "caseCommentId", - "in": "path", - "required": true, - "type": "string", - "description": "Case comment ID", - "x-ms-parameter-location": "method" - }, "CaseComment": { - "name": "caseComment", - "in": "body", "description": "The case comment", + "in": "body", + "name": "caseComment", "required": true, "schema": { "$ref": "#/definitions/CaseComment" }, "x-ms-parameter-location": "method" }, - "BookmarkId": { - "name": "bookmarkId", + "CaseCommentId": { + "description": "Case comment ID", "in": "path", + "name": "caseCommentId", "required": true, "type": "string", - "description": "Bookmark ID", "x-ms-parameter-location": "method" }, - "Bookmark": { - "name": "bookmark", - "in": "body", - "description": "The bookmark", + "CaseId": { + "description": "Case ID", + "in": "path", + "name": "caseId", "required": true, - "schema": { - "$ref": "#/definitions/Bookmark" - }, + "type": "string", "x-ms-parameter-location": "method" }, - "DataConnectorId": { - "name": "dataConnectorId", + "ConsentId": { + "description": "consent ID", "in": "path", + "name": "consentId", "required": true, "type": "string", - "description": "Connector ID", "x-ms-parameter-location": "method" }, "DataConnector": { - "name": "dataConnector", - "in": "body", "description": "The data connector", + "in": "body", + "name": "dataConnector", "required": true, "schema": { "$ref": "#/definitions/DataConnector" }, "x-ms-parameter-location": "method" }, - "EntityId": { - "name": "entityId", + "DataConnectorId": { + "description": "Connector ID", "in": "path", + "name": "dataConnectorId", "required": true, "type": "string", - "description": "entity ID", "x-ms-parameter-location": "method" }, "EntityExpandRequestBody": { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/EntityExpandParameters" - }, "description": "The parameters required to execute an expand operation on the given entity.", - "x-ms-parameter-location": "method" - }, - "ConsentId": { - "name": "consentId", - "in": "path", - "required": true, - "type": "string", - "description": "consent ID", - "x-ms-parameter-location": "method" - }, - "SettingsName": { - "name": "settingsName", - "in": "path", - "required": true, - "type": "string", - "description": "The setting name. Supports- Fusion, UEBA", - "x-ms-parameter-location": "method" - }, - "Settings": { - "name": "settings", "in": "body", - "description": "The setting", + "name": "parameters", "required": true, "schema": { - "$ref": "#/definitions/Settings" + "$ref": "#/definitions/EntityExpandParameters" }, "x-ms-parameter-location": "method" }, - "AggregationsName": { - "name": "aggregationsName", + "EntityId": { + "description": "entity ID", "in": "path", + "name": "entityId", "required": true, "type": "string", - "description": "The aggregation name. Supports - Cases", "x-ms-parameter-location": "method" }, "EntityQueryId": { - "name": "entityQueryId", + "description": "entity query ID", "in": "path", + "name": "entityQueryId", "required": true, "type": "string", - "description": "entity query ID", "x-ms-parameter-location": "method" }, "ODataFilter": { - "name": "$filter", + "description": "Filters the results, based on a Boolean condition. Optional.", "in": "query", + "name": "$filter", "required": false, "type": "string", - "description": "Filters the results, based on a Boolean condition. Optional.", "x-ms-parameter-location": "method" }, "ODataOrderBy": { + "description": "Sorts the results. Optional.", + "in": "query", "name": "$orderby", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataSkipToken": { + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional.", "in": "query", + "name": "$skipToken", "required": false, "type": "string", - "description": "Sorts the results. Optional.", "x-ms-parameter-location": "method" }, "ODataTop": { - "name": "$top", + "description": "Returns only the first n results. Optional.", + "format": "int32", "in": "query", + "name": "$top", "required": false, "type": "integer", - "format": "int32", - "description": "Returns only the first n results. Optional.", "x-ms-parameter-location": "method" }, - "ODataSkipToken": { - "name": "$skipToken", - "in": "query", - "required": false, + "OperationalInsightsResourceProvider": { + "description": "The namespace of workspaces resource provider- Microsoft.OperationalInsights.", + "in": "path", + "name": "operationalInsightsResourceProvider", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RuleId": { + "description": "Alert rule ID", + "in": "path", + "name": "ruleId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Settings": { + "description": "The setting", + "in": "body", + "name": "settings", + "required": true, + "schema": { + "$ref": "#/definitions/Settings" + }, + "x-ms-parameter-location": "method" + }, + "SettingsName": { + "description": "The setting name. Supports- Fusion, UEBA", + "in": "path", + "name": "settingsName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + }, + "WorkspaceName": { + "description": "The name of the workspace.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "workspaceName", + "required": true, "type": "string", - "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional.", "x-ms-parameter-location": "method" } } -} +} \ No newline at end of file From d547b7794cad660fd3cceee790e407a4d534308c Mon Sep 17 00:00:00 2001 From: ChenTanyi Date: Wed, 4 Sep 2019 12:54:57 +0800 Subject: [PATCH 086/123] Container Services: add java package 2019 08 01 (#7105) * Container Services: add java package 2019 08 01 * fix: not to remove 2019-06 tag in multiapi --- .../resource-manager/readme.java.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/specification/containerservice/resource-manager/readme.java.md b/specification/containerservice/resource-manager/readme.java.md index f91e0036361c..91bf924baddb 100644 --- a/specification/containerservice/resource-manager/readme.java.md +++ b/specification/containerservice/resource-manager/readme.java.md @@ -17,6 +17,20 @@ description: "Container Service Client" ``` yaml $(java) && $(multiapi) batch: - tag: package-2019-06 + - tag: package-2019-08 +``` + +### Tag: package-2019-08 and java + +These settings apply only when `--tag=package-2019-08` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-08' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2019_08_01 + output-folder: $(azure-libraries-for-java-folder)/containerservice/resource-manager/v2019_08_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2019-06 and java From 454b15b1a325e019606c16d96350440f7abd6d0c Mon Sep 17 00:00:00 2001 From: olterner <53471777+olterner@users.noreply.github.com> Date: Thu, 5 Sep 2019 04:18:07 +0300 Subject: [PATCH 087/123] =?UTF-8?q?Create=20swagger=20definitions=20for=20?= =?UTF-8?q?new=20Microsoft.OperationalInsights=20reso=E2=80=A6=20(#6883)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../preview/2019-08-01-preview/Clusters.json | 562 ++++++++++++++++++ .../examples/ClustersCreate.json | 61 ++ .../examples/ClustersDelete.json | 12 + .../examples/ClustersGet.json | 46 ++ .../examples/ClustersListByResourceGroup.json | 29 + .../examples/ClustersSubscriptionList.json | 28 + .../examples/ClustersUpdate.json | 29 + .../resource-manager/readme.md | 9 + 8 files changed, 776 insertions(+) create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersDelete.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json create mode 100644 specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json new file mode 100644 index 000000000000..3d54b258332e --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json @@ -0,0 +1,562 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2019-08-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/Microsoft.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersListByResourceGroup.json" + } + }, + "operationId": "Clusters_ListByResourceGroup", + "description": "Gets Log Analytics clusters in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersSubscriptionList": { + "$ref": "./examples/ClustersSubscriptionList.json" + } + }, + "operationId": "Clusters_List", + "description": "Gets the Log Analytics clusters in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/clusters/{clusterName}": { + "put": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersCreate": { + "$ref": "./examples/ClustersCreate.json" + } + }, + "operationId": "Clusters_CreateOrUpdate", + "description": "Create or update a Log Analytics cluster.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Log Analytics cluster." + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the Log Analytics cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The parameters required to create or update a Log Analytics cluster." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersDelete": { + "$ref": "./examples/ClustersDelete.json" + } + }, + "operationId": "Clusters_Delete", + "description": "Deletes a cluster instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Log Analytics cluster." + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersGet.json" + } + }, + "operationId": "Clusters_Get", + "description": "Gets a Log Analytics cluster instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Log Analytics cluster." + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersPatch": { + "$ref": "./examples/ClustersUpdate.json" + } + }, + "operationId": "Clusters_Update", + "description": "Updates a Log Analytics cluster.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the cluster." + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPatch" + }, + "description": "The parameters required to patch a Log Analytics cluster." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing cluster was successfully updated. Check provisioningStatus to see detailed status.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "clusterId": { + "type": "string", + "readOnly": true, + "description": "The ID associated with the cluster." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the cluster.", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "ProvisioningAccount" + ], + "x-ms-enum": { + "name": "EntityStatus", + "modelAsString": true + } + }, + "encryptionKeyUri": { + "type": "string", + "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + } + }, + "description": "Cluster properties." + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ClusterPatchProperties": { + "properties": { + "encryptionKeyUri": { + "type": "string", + "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + } + }, + "description": "Log Analytics cluster patch properties." + }, + "ClusterPatch": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPatchProperties", + "description": "Log Analytics cluster properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The top level Log Analytics cluster resource container.", + "x-ms-azure-resource": true + }, + "Cluster": { + "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "Log Analytics cluster properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The top level Log Analytics cluster resource container.", + "x-ms-azure-resource": true + }, + "ClusterListResult": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "A list of Log Analytics clusters." + } + }, + "description": "The list clusters operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The resource definition.", + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json new file mode 100644 index 000000000000..7b1b0ca8bda4 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "properties": { + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + }, + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersDelete.json new file mode 100644 index 000000000000..ef5a1aa640e8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json new file mode 100644 index 000000000000..bbbd3287a60c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + }, + { + "properties": { + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/clusters/southukws", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "SouthUKWS", + "type": "Microsoft.OperationalInsights/clusters", + "location": "East US" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json new file mode 100644 index 000000000000..a1ff7a25d694 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json new file mode 100644 index 000000000000..1e7b4fe07231 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json new file mode 100644 index 000000000000..4c58b3ab8e8a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "properties": { + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "tags": { + "tag1": "val1" + } + }, + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index 7096103edde5..c25ec32d025d 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -50,6 +50,15 @@ input-file: - Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json ``` +### Tag: package-2019-08-preview + +These settings apply only when `--tag=package-2019-08-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08-preview' +input-file: +- Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +``` + --- # Code Generation From d03287f017c3ba488ab819d48e621ef515c5557f Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 5 Sep 2019 01:19:20 +0000 Subject: [PATCH 088/123] regenerated all-api-versions --- specification/operationalinsights/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index c25ec32d025d..23495b016d9f 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -158,6 +158,7 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json - $(this-folder)/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json + - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json ``` From 95869c4461d72cc2c2bba489e23b9ccfcea75169 Mon Sep 17 00:00:00 2001 From: docohe <54349195+docohe@users.noreply.github.com> Date: Thu, 5 Sep 2019 04:20:38 +0300 Subject: [PATCH 089/123] Update Kusto.json with TSVE data format (#7100) --- .../Microsoft.Kusto/stable/2019-05-15/kusto.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json index c434f1c489ae..12b407ce17a5 100644 --- a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-05-15/kusto.json @@ -1861,7 +1861,8 @@ "TXT", "RAW", "SINGLEJSON", - "AVRO" + "AVRO", + "TSVE" ], "x-ms-enum": { "name": "dataFormat", From d90a1162d0880b48a72447e129c6f51af1181f83 Mon Sep 17 00:00:00 2001 From: reshantchandra <40304171+reshantchandra@users.noreply.github.com> Date: Wed, 4 Sep 2019 18:33:54 -0700 Subject: [PATCH 090/123] [Hub Generated] Review request for Microsoft.Devices to add version stable/2019-03-22 (#6932) * Adds base for updating Microsoft.Devices from version preview/2019-03-22-preview to version 2019-03-22 * Updates readme * Updates API version in new specs and examples * Adding new stable api for manual failover * adding locations property * adding locations property * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json Co-Authored-By: John Lian * Update iothub.json --- .../examples/IotHub_ManualFailover.json | 15 + .../examples/checkNameAvailability.json | 20 + .../iothub_certificatescreateorupdate.json | 46 + .../examples/iothub_certificatesdelete.json | 14 + .../examples/iothub_certverify.json | 31 + .../examples/iothub_createOrUpdate.json | 223 ++ .../examples/iothub_createconsumergroup.json | 23 + .../2019-03-22/examples/iothub_delete.json | 164 + .../examples/iothub_deleteconsumergroup.json | 13 + .../examples/iothub_exportdevices.json | 23 + .../iothub_generateverificationcode.json | 26 + .../2019-03-22/examples/iothub_get.json | 95 + .../examples/iothub_getcertificate.json | 27 + .../examples/iothub_getconsumergroup.json | 23 + .../2019-03-22/examples/iothub_getjob.json | 20 + .../2019-03-22/examples/iothub_getkey.json | 19 + .../2019-03-22/examples/iothub_getskus.json | 53 + .../examples/iothub_importdevices.json | 23 + .../2019-03-22/examples/iothub_listbyrg.json | 90 + .../examples/iothub_listbysubscription.json | 89 + .../examples/iothub_listcertificates.json | 30 + .../examples/iothub_listehgroups.json | 26 + .../2019-03-22/examples/iothub_listjobs.json | 23 + .../2019-03-22/examples/iothub_listkeys.json | 46 + .../examples/iothub_operations.json | 328 ++ .../2019-03-22/examples/iothub_patch.json | 95 + .../examples/iothub_quotametrics.json | 26 + .../iothub_routingendpointhealth.json | 24 + .../2019-03-22/examples/iothub_stats.json | 17 + .../examples/iothub_testallroutes.json | 34 + .../examples/iothub_testnewroute.json | 48 + .../2019-03-22/examples/iothub_usages.json | 25 + .../stable/2019-03-22/iothub.json | 3482 +++++++++++++++++ .../iothub/resource-manager/readme.md | 13 +- 34 files changed, 5252 insertions(+), 2 deletions(-) create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/IotHub_ManualFailover.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/checkNameAvailability.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatescreateorupdate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatesdelete.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certverify.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createOrUpdate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_delete.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_deleteconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_exportdevices.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_generateverificationcode.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getcertificate.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getconsumergroup.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getjob.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getkey.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getskus.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_importdevices.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbyrg.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbysubscription.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listcertificates.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listehgroups.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listjobs.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listkeys.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_operations.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_patch.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_quotametrics.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_routingendpointhealth.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_stats.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testallroutes.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testnewroute.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_usages.json create mode 100644 specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..7b2009339d2c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/checkNameAvailability.json new file mode 100644 index 000000000000..574bd65f94ca --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..cd334022d9f5 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + }, + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..28d1662bc72a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certverify.json new file mode 100644 index 000000000000..f51c6fa17956 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..6838ac269bd8 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createOrUpdate.json @@ -0,0 +1,223 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..839fd9b32cce --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_createconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_delete.json new file mode 100644 index 000000000000..a6b82c9bc4ea --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_delete.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..e993ba4a0f55 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..bb89a1dc5f90 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..933cb04172e5 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json new file mode 100644 index 000000000000..cda76940083b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ] + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..2ed48e615be9 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getcertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..839fd9b32cce --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getjob.json new file mode 100644 index 000000000000..979fd909d6e8 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getkey.json new file mode 100644 index 000000000000..aa9c74398d8b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getskus.json new file mode 100644 index 000000000000..bcb9d7dbe8f7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_importdevices.json new file mode 100644 index 000000000000..bf560e8546d2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..c5ceffcbf48b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbyrg.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..09f0d92d4d35 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listbysubscription.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..10d320385e81 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listcertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..869ef9c80647 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listjobs.json new file mode 100644 index 000000000000..182079ce90c6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listkeys.json new file mode 100644 index 000000000000..fa44c739d6ed --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "DinqxWW+s814W2Pc3dLxleelksqSYGy8Jfymt8J7a4c=", + "secondaryKey": "5G8KgJ9Wx2T0f6HRIn25TgYcFmJnBSivawNaHssiP9Y=", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "o/9gPc0oD8LY/r2lRurgl9U/sKFcL2c/tmFLKAiz+e0=", + "secondaryKey": "YOeBMHnYP95vH+ykR8OeapnhS6W8raMsXOdNFwqg4lg=", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "h2d4mPxy6jPCWX6mO+katV9QPNJivzt4aFq0iGVc1A8=", + "secondaryKey": "3TdcalZNTB7BZHl88LGsG1Z5T6+ElEODunrs1vylwGg=", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "tyNRcaI38fXL+gQTjCmrVZGTP4YFF7uACk7pppWLWzY=", + "secondaryKey": "6P6DXOp0W3HO5/IotzcPS1kx7PHiOdesaND07Im5cYI=", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_operations.json new file mode 100644 index 000000000000..209f27a1757c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2019-03-22" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_patch.json new file mode 100644 index 000000000000..d84e8512f1b6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_patch.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..f91580c5e1ea --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..2a9af9299d67 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_routingendpointhealth.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..2b35263aab0f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testallroutes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": "App Properties", + "systemProperties": "System Properties" + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..66dd3da11d59 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_testnewroute.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": "App Properties", + "systemProperties": "System Properties" + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_usages.json new file mode 100644 index 000000000000..2cf476eda800 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-03-22", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json new file mode 100644 index 000000000000..a2ec904f0a06 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json @@ -0,0 +1,3482 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-03-22", + "title": "iotHubClient", + "description": "Use this API to manage the IoT hubs in your Azure subscription.", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "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.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/iothub_operations.json" + } + }, + "operationId": "Operations_List", + "description": "Lists all of the available IoT Hub REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of an IoT hub", + "description": "Get the non-security related metadata of an IoT hub.", + "operationId": "IotHubResource_Get", + "x-ms-examples": { + "IotHubResource_Get": { + "$ref": "./examples/iothub_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT hub. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of an IoT hub.", + "description": "Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manually initiate a failover for the IoT Hub to its secondary region", + "description": "Manually initiate a failover for the IoT Hub to its secondary region. To learn more, see https://aka.ms/manualfailover", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "Name of the IoT hub to failover", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be the Azure paired region. Get the value from the secondary location in the locations property. To learn more, see https://aka.ms/manualfailover/region", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "Name of the resource group containing the IoT hub resource", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running manual failover operation for the IoT hub completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "connectionString", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "The name of the Azure region", + "type": "string" + }, + "role": { + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index b15fc166cff9..b93f0fdc25ac 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-preview-2019-03 +tag: package-2019-03 ``` +### Tag: package-2019-03 + +These settings apply only when `--tag=package-2019-03` is specified on the command line. + +```yaml $(tag) == 'package-2019-03' +input-file: + - Microsoft.Devices/stable/2019-03-22/iothub.json +``` ### Tag: package-preview-2019-03 These settings apply only when `--tag=package-preview-2019-03` is specified on the command line. -```yaml $(tag) == 'package-preview-2019-03' +``` yaml $(tag) == 'package-preview-2019-03' input-file: - Microsoft.Devices/preview/2019-03-22-preview/iothub.json ``` + ### Tag: package-2018-12-preview These settings apply only when `--tag=package-2018-12-preview` is specified on the command line. From 072ea8fb52622ebcdf172db0ba0be037cb770c8c Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 5 Sep 2019 01:35:01 +0000 Subject: [PATCH 091/123] regenerated all-api-versions --- specification/iothub/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index b93f0fdc25ac..04f252228599 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -157,6 +157,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Devices/stable/2019-03-22/iothub.json - $(this-folder)/Microsoft.Devices/preview/2019-03-22-preview/iothub.json - $(this-folder)/Microsoft.Devices/preview/2018-12-01-preview/iothub.json - $(this-folder)/Microsoft.Devices/stable/2018-04-01/iothub.json From 36db3ffa7b4479e67c1b600823d17170391c4a0b Mon Sep 17 00:00:00 2001 From: Jack Lichwa <52512203+jlichwa@users.noreply.github.com> Date: Wed, 4 Sep 2019 18:51:07 -0700 Subject: [PATCH 092/123] Create KeyVault.json (#6975) --- .../stable/2018-01-01/KeyVault.json | 317 ++++++++++++++++++ specification/eventgrid/data-plane/readme.md | 3 +- 2 files changed, 319 insertions(+), 1 deletion(-) create mode 100644 specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json diff --git a/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json new file mode 100644 index 000000000000..b28d21486e57 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json @@ -0,0 +1,317 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-01", + "title": "Schema of Azure Key Vault events published to Azure Event Grid", + "description": "Describes the schema of the Azure Key Vault events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent." + }, + "paths": {}, + "definitions": { + "KeyVaultCertificateNewVersionCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an CertificateNewVersionCreated event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultCertificateNearExpiryEventData": { + "description": "Schema of the Data property of an EventGridEvent for an CertificateNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultCertificateExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an CertificateExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultKeyNewVersionCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyNewVersionCreated event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultKeyNearExpiryEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultKeyExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultSecretNewVersionCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretNewVersionCreated event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultSecretNearExpiryEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + }, + "KeyVaultSecretExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" + } + } + } + } +} \ No newline at end of file diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index 7eab6e07b842..80aa086e0b01 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -55,6 +55,7 @@ input-file: - Microsoft.Maps/stable/2018-01-01/Maps.json - Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json - Microsoft.SignalRService/stable/2018-01-01/SignalRService.json +- Microsoft.KeyVault/stable/2018-01-01/KeyVault.json ``` --- @@ -133,7 +134,7 @@ input-file: - $(this-folder)/Microsoft.Maps/stable/2018-01-01/Maps.json - $(this-folder)/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json - $(this-folder)/Microsoft.SignalRService/stable/2018-01-01/SignalRService.json - + - $(this-folder)/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json ``` If there are files that should not be in the `all-api-versions` set, From 1cf40364e6a4456ad2f6360656864b1eed11cf0b Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 5 Sep 2019 01:52:24 +0000 Subject: [PATCH 093/123] regenerated all-api-versions --- specification/eventgrid/data-plane/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index 80aa086e0b01..b530b170746f 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -135,6 +135,7 @@ input-file: - $(this-folder)/Microsoft.AppConfiguration/stable/2018-01-01/AppConfiguration.json - $(this-folder)/Microsoft.SignalRService/stable/2018-01-01/SignalRService.json - $(this-folder)/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json + ``` If there are files that should not be in the `all-api-versions` set, From 9df89926e0ea6dfccf9cf87a415f8cf5372396c3 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 5 Sep 2019 02:55:21 -0400 Subject: [PATCH 094/123] chore: jsonfmt iothub (#7126) --- .../stable/2019-03-22/examples/iothub_get.json | 10 +++++----- .../Microsoft.Devices/stable/2019-03-22/iothub.json | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json index cda76940083b..2a504587dae1 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/examples/iothub_get.json @@ -75,14 +75,14 @@ "features": "None", "locations": [ { - "location": "West US", - "role": "primary" + "location": "West US", + "role": "primary" }, { - "location": "East US", - "role": "secondary" + "location": "East US", + "role": "secondary" } - ] + ] }, "sku": { "name": "S1", diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json index a2ec904f0a06..ec82d40d0470 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json @@ -3419,15 +3419,15 @@ "description": "Public representation of one of the locations where a resource is provisioned.", "type": "object", "properties": { - "location": { - "description": "The name of the Azure region", + "location": { + "description": "The name of the Azure region", "type": "string" }, "role": { "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", "enum": [ - "primary", - "secondary" + "primary", + "secondary" ], "type": "string", "x-ms-enum": { From f155bcf6a4af4c81b5a44d2a38538e50e07d76e8 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 5 Sep 2019 02:55:57 -0400 Subject: [PATCH 095/123] chore: jsonfmt securityinsights/ (#7128) --- .../preview/2019-01-01-preview/SecurityInsights.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index 09193229b02f..544974958663 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -5721,4 +5721,4 @@ "x-ms-parameter-location": "method" } } -} \ No newline at end of file +} From ac7327727267b91f7094a3d7acc856587cd2e8db Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 5 Sep 2019 02:56:49 -0400 Subject: [PATCH 096/123] chore: jsonfmt operationalinsights (#7127) --- .../preview/2019-08-01-preview/Clusters.json | 2 +- .../preview/2019-08-01-preview/examples/ClustersUpdate.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json index 3d54b258332e..19d29fd98e50 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json @@ -448,7 +448,7 @@ }, "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/Resource" } ], "description": "The top level Log Analytics cluster resource container.", diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json index 4c58b3ab8e8a..35a4720af359 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json @@ -16,9 +16,9 @@ "responses": { "200": { "body": { - "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" - }, + "properties": { + "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + }, "location": "australiasoutheast", "tags": { "tag1": "val1" From a4123e69e6306788d2538d807f0e14283cacda8d Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 5 Sep 2019 02:57:20 -0400 Subject: [PATCH 097/123] chore: jsonfmt eventgrid (#7125) --- .../stable/2018-01-01/KeyVault.json | 526 +++++++++--------- 1 file changed, 263 insertions(+), 263 deletions(-) diff --git a/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json index b28d21486e57..b49ea347e927 100644 --- a/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json +++ b/specification/eventgrid/data-plane/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json @@ -42,276 +42,276 @@ } }, "KeyVaultCertificateNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an CertificateNearExpiry event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + "description": "Schema of the Data property of an EventGridEvent for an CertificateNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultCertificateExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an CertificateExpired event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultCertificateExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an CertificateExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultKeyNewVersionCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyNewVersionCreated event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultKeyNewVersionCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyNewVersionCreated event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultKeyNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyNearExpiry event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultKeyNearExpiryEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultKeyExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an KeyExpired event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultKeyExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an KeyExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultSecretNewVersionCreatedEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretNewVersionCreated event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultSecretNewVersionCreatedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretNewVersionCreated event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultSecretNearExpiryEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretNearExpiry event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultSecretNearExpiryEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretNearExpiry event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } - }, - "KeyVaultSecretExpiredEventData": { - "description": "Schema of the Data property of an EventGridEvent for an SecretExpired event.", - "type": "object", - "properties": { - "id": { - "description": "The id of the object that triggered this event.", - "type": "string" - }, - "vaultName": { - "description": "Key vault name of the object that triggered this event.", - "type": "string" - }, - "objectType": { - "description": "The type of the object that triggered this event", - "type": "string" - }, - "objectName": { - "description": "The name of the object that triggered this event", - "type": "string" - }, - "version": { - "description": "The version of the object that triggered this event", - "type": "string" - }, - "nbf": { - "description": "Not before date of the object that triggered this event", - "type": "number" - }, - "exp": { - "description": "The expiration date of the object that triggered this event", - "type": "number" - } + } + }, + "KeyVaultSecretExpiredEventData": { + "description": "Schema of the Data property of an EventGridEvent for an SecretExpired event.", + "type": "object", + "properties": { + "id": { + "description": "The id of the object that triggered this event.", + "type": "string" + }, + "vaultName": { + "description": "Key vault name of the object that triggered this event.", + "type": "string" + }, + "objectType": { + "description": "The type of the object that triggered this event", + "type": "string" + }, + "objectName": { + "description": "The name of the object that triggered this event", + "type": "string" + }, + "version": { + "description": "The version of the object that triggered this event", + "type": "string" + }, + "nbf": { + "description": "Not before date of the object that triggered this event", + "type": "number" + }, + "exp": { + "description": "The expiration date of the object that triggered this event", + "type": "number" } } } -} \ No newline at end of file + } +} From 35c2154a1cf13c3e2cdc3076e52817cab1279238 Mon Sep 17 00:00:00 2001 From: Arik Olsh <47111029+arolshan@users.noreply.github.com> Date: Thu, 5 Sep 2019 22:21:08 +0300 Subject: [PATCH 098/123] Microsoft.Insights Log Analytics Query Pack Resource (#6992) * add swaggers * add search examples * Update readme.md * Update QueryPackQueries_API.json * resourceName to queryPackName * Update QueryPackQueries_API.json * update null to null * add to examples * add nullable and remove etag * fix validation issues * Update QueryPacks_API.json * better naming * more fixes * fix json * add 203 example * fix update tags example * fix validation * Update QueryPackQueries_API.json * Update QueryPackQueriesSearch.json * fix validations * Update QueryPackQueries_API.json * Update QueryPackQueries_API.json * fixes after review * fixes after code review * naming and mismatch --- .../QueryPackQueries_API.json | 477 ++++++++++++++++++ .../2019-09-01-preview/QueryPacks_API.json | 406 +++++++++++++++ .../examples/QueryPackQueriesDelete.json | 13 + .../examples/QueryPackQueriesGet.json | 26 + .../examples/QueryPackQueriesList.json | 74 +++ .../examples/QueryPackQueriesPut.json | 40 ++ .../examples/QueryPackQueriesSearch.json | 71 +++ .../examples/QueryPacksCreate.json | 29 ++ .../examples/QueryPacksDelete.json | 12 + .../examples/QueryPacksGet.json | 25 + .../examples/QueryPacksList.json | 41 ++ .../QueryPacksListByResourceGroup.json | 42 ++ .../examples/QueryPacksUpdate.json | 34 ++ .../examples/QueryPacksUpdateTagsOnly.json | 34 ++ .../resource-manager/readme.md | 13 + 15 files changed, 1337 insertions(+) create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesDelete.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesGet.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesList.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksCreate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksDelete.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksGet.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksList.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksListByResourceGroup.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdate.json create mode 100644 specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdateTagsOnly.json diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json new file mode 100644 index 000000000000..bd7b97ad4a6d --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json @@ -0,0 +1,477 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics Query Packs", + "description": "Azure Log Analytics API reference for management of saved Queries within Query Packs.", + "version": "2019-09-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/microsoft.insights/QueryPacks/{queryPackName}/queries": { + "get": { + "description": "Gets a list of Queries defined within a Log Analytics QueryPack.", + "operationId": "Queries_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/QueryPackNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MaxItemCountParameter" + }, + { + "$ref": "#/parameters/IncludeBodyParameter" + }, + { + "$ref": "#/parameters/ContinuationTokenParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "A list containing 0 or more queries contained within the Log Analytics QueryPack.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQueryListResult" + } + } + }, + "x-ms-examples": { + "QueryList": { + "$ref": "./examples/QueryPackQueriesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/QueryPacks/{queryPackName}/queries/search": { + "post": { + "description": "Search a list of Queries defined within a Log Analytics QueryPack according to given search properties.", + "operationId": "Queries_Search", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/QueryPackNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/MaxItemCountParameter" + }, + { + "$ref": "#/parameters/IncludeBodyParameter" + }, + { + "$ref": "#/parameters/ContinuationTokenParameter" + }, + { + "name": "QuerySearchProperties", + "description": "Properties by which to search queries in the given Log Analytics QueryPack.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQuerySearchProperties" + } + } + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "A list containing 0 or more queries contained within the Log Analytics QueryPack.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQueryListResult" + } + } + }, + "x-ms-examples": { + "QuerySearch": { + "$ref": "./examples/QueryPackQueriesSearch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/QueryPacks/{queryPackName}/queries/{queryId}": { + "get": { + "description": "Gets a specific Log Analytics Query defined within a Log Analytics QueryPack.", + "operationId": "Queries_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/QueryPackNameParameter" + }, + { + "$ref": "#/parameters/QueryIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "A single query contained within the Log Analytics QueryPack.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQuery" + } + } + }, + "x-ms-examples": { + "QueryGet": { + "$ref": "./examples/QueryPackQueriesGet.json" + } + } + }, + "put": { + "description": "Adds or Updates a specific Query within a Log Analytics QueryPack.", + "operationId": "Queries_Put", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/QueryPackNameParameter" + }, + { + "$ref": "#/parameters/QueryIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "QueryPayload", + "description": "Properties that need to be specified to create a new query and add it to a Log Analytics QueryPack.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQuery" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "The new or updated query contained within the Log Analytics QueryPack.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackQuery" + } + } + }, + "x-ms-examples": { + "QueryPut": { + "$ref": "./examples/QueryPackQueriesPut.json" + } + } + }, + "delete": { + "description": "Deletes a specific Query defined within an Log Analytics QueryPack.", + "operationId": "Queries_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/QueryPackNameParameter" + }, + { + "$ref": "#/parameters/QueryIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "The query has been successfully removed from the Log Analytics QueryPack" + }, + "204": { + "description": "The specified query or associated QueryPack does not exist." + } + }, + "x-ms-examples": { + "QueryDelete": { + "$ref": "./examples/QueryPackQueriesDelete.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Describe the format of an Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "AzureResourceProperties": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Azure resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + } + }, + "description": "An Azure resource QueryPack-Query object" + }, + "LogAnalyticsQueryPackQuery": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Log Analytics QueryPack-Query resource.", + "$ref": "#/definitions/LogAnalyticsQueryPackQueryProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AzureResourceProperties" + } + ], + "description": "A Log Analytics QueryPack-Query definition." + }, + "LogAnalyticsQueryPackQueryProperties": { + "description": "Properties that define an Log Analytics QueryPack-Query resource.", + "properties": { + "queryId": { + "type": "string", + "description": "The unique ID of your application. This field cannot be changed.", + "readOnly": true + }, + "displayName": { + "type": "string", + "readOnly": false, + "description": "Unique name for your Query." + }, + "timeCreated": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Log Analytics Query, in ISO 8601 format.", + "format": "date-time" + }, + "timeModified": { + "type": "string", + "readOnly": true, + "description": "Last modified date of the Log Analytics Query, in ISO 8601 format.", + "format": "date-time" + }, + "author": { + "type": "string", + "readOnly": true, + "description": "Object Id of user creating the query." + }, + "description": { + "type": "string", + "readOnly": false, + "description": "Description of the query." + }, + "body": { + "type": "string", + "readOnly": false, + "description": "Body of the query." + }, + "linkedResourceId": { + "type": "string", + "readOnly": false, + "description": "Resource id associated with the query." + }, + "categories": { + "description": "Categories associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "Resource Types associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "labels": { + "description": "Labels associated with the query.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": ["body", "displayName"] + }, + "LogAnalyticsQueryPackQuerySearchProperties": { + "description": "Properties that define an Log Analytics QueryPack-Query search properties.", + "properties": { + "categories": { + "description": "Categories associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "Resource Types associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "labels": { + "description": "Labels associated with the query.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LogAnalyticsQueryPackQueryListResult": { + "description": "Describes the list of Log Analytics QueryPack-Query resources.", + "required": ["value"], + "properties": { + "value": { + "type": "array", + "description": "List of Log Analytics QueryPack Query definitions.", + "items": { + "$ref": "#/definitions/LogAnalyticsQueryPackQuery" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Log Analytics QueryPack definitions if too many QueryPack-Queries where returned in the result set." + } + } + } + }, + "parameters": { + "QueryPackNameParameter": { + "name": "queryPackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Log Analytics QueryPack resource.", + "x-ms-parameter-location": "method" + }, + "QueryIdParameter": { + "name": "queryId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of a specific query defined in the Log Analytics QueryPack", + "x-ms-parameter-location": "method" + }, + "IncludeBodyParameter": { + "name": "includeBody", + "in": "query", + "required": false, + "type": "boolean", + "description": "Flag indicating whether or not to return the body of each applicable query. If false, only return the query information.", + "x-ms-parameter-location": "method" + }, + "MaxItemCountParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "description": "Maximum items returned in page.", + "x-ms-parameter-location": "method" + }, + "ContinuationTokenParameter": { + "name": "$skipToken", + "in": "query", + "required": false, + "type": "string", + "description": "Base64 encoded token used to fetch the next page of items. Default is null.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json new file mode 100644 index 000000000000..6f8238e92d5a --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics Query Packs", + "description": "Azure Log Analytics API reference for Query Packs management.", + "version": "2019-09-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.Insights/queryPacks": { + "get": { + "description": "Gets a list of all Log Analytics QueryPacks within a subscription.", + "operationId": "QueryPacks_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "A list containing 0 or more Log Analytics QueryPack definitions.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackListResult" + } + } + }, + "x-ms-examples": { + "QueryPacksList.json": { + "$ref": "./examples/QueryPacksList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/queryPacks": { + "get": { + "description": "Gets a list of Log Analytics QueryPacks within a resource group.", + "operationId": "QueryPacks_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "A list containing 0 or more Log Analytics QueryPack definitions.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPackListResult" + } + } + }, + "x-ms-examples": { + "QueryPackListByResourceGroup": { + "$ref": "./examples/QueryPacksListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/queryPacks/{queryPackName}": { + "delete": { + "description": "Deletes a Log Analytics QueryPack.", + "operationId": "QueryPacks_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request when deleting a Log Analytics QueryPack." + }, + "204": { + "description": "The specified QueryPack does not exist." + } + }, + "x-ms-examples": { + "QueryPacksDelete": { + "$ref": "./examples/QueryPacksDelete.json" + } + } + }, + "get": { + "description": "Returns a Log Analytics QueryPack.", + "operationId": "QueryPacks_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "An Log Analytics QueryPack definition.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPack" + } + } + }, + "x-ms-examples": { + "QueryPackGet": { + "$ref": "./examples/QueryPacksGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Log Analytics QueryPack. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "QueryPacks_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "LogAnalyticsQueryPackPayload", + "description": "Properties that need to be specified to create or update a Log Analytics QueryPack.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPack" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request when creating or updating a Log Analytics QueryPack. The updated QueryPack is returned.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPack" + } + } + }, + "x-ms-examples": { + "QueryPackCreate": { + "$ref": "./examples/QueryPacksCreate.json" + }, + "QueryPackUpdate": { + "$ref": "./examples/QueryPacksUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing QueryPack's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "QueryPacks_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "QueryPackTags", + "description": "Updated tag information to set into the QueryPack instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updating the Log Analytics QueryPack's tags was successful. QueryPack tags are updated and returned with the rest of the QueryPack's object properties.", + "schema": { + "$ref": "#/definitions/LogAnalyticsQueryPack" + } + } + }, + "x-ms-examples": { + "QueryPackUpdateTagsOnly": { + "$ref": "./examples/QueryPacksUpdateTagsOnly.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Describe the format of an Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "QueryPacksResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": ["create", "read"] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": ["location"], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a QueryPack instance." + }, + "LogAnalyticsQueryPack": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define a Log Analytics QueryPack resource.", + "$ref": "#/definitions/LogAnalyticsQueryPackProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/QueryPacksResource" + } + ], + "required": ["properties"], + "description": "An Log Analytics QueryPack definition." + }, + "LogAnalyticsQueryPackProperties": { + "description": "Properties that define a Log Analytics QueryPack resource.", + "properties": { + "queryPackId": { + "type": "string", + "description": "The unique ID of your application. This field cannot be changed.", + "readOnly": true + }, + "timeCreated": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Log Analytics QueryPack, in ISO 8601 format.", + "format": "date-time" + }, + "timeModified": { + "type": "string", + "readOnly": true, + "description": "Last modified date of the Log Analytics QueryPack, in ISO 8601 format.", + "format": "date-time" + }, + "provisioningState": { + "type": "string", + "description": "Current state of this QueryPack: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + } + } + }, + "LogAnalyticsQueryPackListResult": { + "description": "Describes the list of Log Analytics QueryPack resources.", + "required": ["value"], + "properties": { + "value": { + "type": "array", + "description": "List of Log Analytics QueryPack definitions.", + "items": { + "$ref": "#/definitions/LogAnalyticsQueryPack" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Log Analytics QueryPack definitions if too many QueryPacks where returned in the result set." + } + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "queryPackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Log Analytics QueryPack resource.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesDelete.json new file mode 100644 index 000000000000..f2efa8ef8cc2 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "queryId": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesGet.json new file mode 100644 index 000000000000..61da55706aa9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "queryId": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "name": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "displayName": "Exceptions - New in the last 24 hours", + "queryId": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "body": "let newExceptionsTimeRange = 1d;\nlet timeRangeToCheckBefore = 7d;\nexceptions\n| where timestamp < ago(timeRangeToCheckBefore)\n| summarize count() by problemId\n| join kind= rightanti (\nexceptions\n| where timestamp >= ago(newExceptionsTimeRange)\n| extend stack = tostring(details[0].rawStack)\n| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by problemId \n) on problemId \n| order by count_ desc\n", + "timeModified": "2018-02-14T13:13:19.3381394Z", + "timeCreated": "2018-02-12T11:44:39.2980634Z", + "description": "Thie query fetcges the recent exceptions from the last 24 hours" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesList.json new file mode 100644 index 000000000000..0c26a5ef427b --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesList.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "includeBody": true + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/4337bb16-d6fe-4ff7-97cf-59df25941476", + "name": "4337bb16-d6fe-4ff7-97cf-59df25941476", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "4337bb16-d6fe-4ff7-97cf-59df25941476", + "timeCreated": "2019-08-15T10:29:56.1030254Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:29:56.1030254Z", + "displayName": "Heartbeat_1", + "description": "Thie query takes 10 entries of heartbeat", + "body": "heartbeat | take 10" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "name": "bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "timeCreated": "2019-08-15T10:30:26.7943629Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:26.7943629Z", + "displayName": "Heartbeat_2", + "description": "Thie query takes 10 entries of heartbeat", + "body": "heartbeat | take 10" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "name": "8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "timeCreated": "2019-08-15T10:30:29.4505584Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:29.4505584Z", + "displayName": "Heartbeat_3", + "description": "Thie query takes 10 entries of heartbeat", + "body": "heartbeat | take 10" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/a5a9010e-e4b7-45ad-8b14-09d7e6082819", + "name": "a5a9010e-e4b7-45ad-8b14-09d7e6082819", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "a5a9010e-e4b7-45ad-8b14-09d7e6082819", + "timeCreated": "2019-08-15T10:30:32.5742324Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:32.5742324Z", + "displayName": "Heartbeat_4", + "description": "Thie query takes 10 entries of heartbeat", + "body": "heartbeat | take 10" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json new file mode 100644 index 000000000000..cbc7a015529b --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "queryId": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "QueryPayload": { + "properties": { + "displayName": "Exceptions - New in the last 24 hours", + "description": "my description", + "body": "let newExceptionsTimeRange = 1d;\nlet timeRangeToCheckBefore = 7d;\nexceptions\n| where timestamp < ago(timeRangeToCheckBefore)\n| summarize count() by problemId\n| join kind= rightanti (\nexceptions\n| where timestamp >= ago(newExceptionsTimeRange)\n| extend stack = tostring(details[0].rawStack)\n| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by problemId \n) on problemId \n| order by count_ desc\n", + "categories": ["analytics"], + "labels": ["my-label", "my-other-label"], + "linkedResourceId": "/subscriptions/a51967b5-271e-4f12-810e-e7fa20c8828d/resourceGroups/FoodHere/providers/Microsoft.KeyVault/vaults/FoodHere" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "name": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "a449f8af-8e64-4b3a-9b16-5a7165ff98c4", + "timeCreated": "2019-08-15T10:30:32.5742324Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:32.5742324Z", + "displayName": "Exceptions - New in the last 24 hours", + "description": "my description", + "body": "let newExceptionsTimeRange = 1d;\nlet timeRangeToCheckBefore = 7d;\nexceptions\n| where timestamp < ago(timeRangeToCheckBefore)\n| summarize count() by problemId\n| join kind= rightanti (\nexceptions\n| where timestamp >= ago(newExceptionsTimeRange)\n| extend stack = tostring(details[0].rawStack)\n| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by problemId \n) on problemId \n| order by count_ desc\n", + "categories": ["analytics"], + "labels": ["my-label", "my-other-label"], + "linkedResourceId": "/subscriptions/a51967b5-271e-4f12-810e-e7fa20c8828d/resourceGroups/FoodHere/providers/Microsoft.KeyVault/vaults/FoodHere" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json new file mode 100644 index 000000000000..33339b9e0ef9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "includeBody": true, + "$top": 3, + "QuerySearchProperties": { + "categories": ["other", "analytics"], + "labels": ["my-label"] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/4337bb16-d6fe-4ff7-97cf-59df25941476", + "name": "4337bb16-d6fe-4ff7-97cf-59df25941476", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "4337bb16-d6fe-4ff7-97cf-59df25941476", + "timeCreated": "2019-08-15T10:29:56.1030254Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:29:56.1030254Z", + "displayName": "Heartbeat_1", + "description": "Thie query takes 10 entries of heartbeat 0", + "body": "Heartbeat | take 1", + "categories": ["other"], + "labels": ["my-label"] + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "name": "bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "bf015bf7-be70-49c2-8d52-4cce85c42ef1", + "timeCreated": "2019-08-15T10:30:26.7943629Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:26.7943629Z", + "displayName": "Heartbeat_2", + "description": "Thie query takes 10 entries of heartbeat 1", + "body": "Heartbeat | take 1", + "categories": ["analytics"], + "labels": ["my-label"] + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack/queries/8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "name": "8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "type": "microsoft.insights/querypacks/queries", + "properties": { + "queryId": "8d91c6ca-9c56-49c6-b3ae-112a68871acd", + "timeCreated": "2019-08-15T10:30:29.4505584Z", + "author": "1809f206-263a-46f7-942d-4572c156b7e7", + "timeModified": "2019-08-15T10:30:29.4505584Z", + "displayName": "Heartbeat_3", + "description": "Thie query takes 10 entries of heartbeat 2", + "body": "Heartbeat | take 1", + "categories": ["other", "analytics"], + "labels": ["my-label"] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksCreate.json new file mode 100644 index 000000000000..cb4f9591d04e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksCreate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "LogAnalyticsQueryPackPayload": { + "location": "South Central US", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": {}, + "properties": { + "queryPackId": "d1c8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-08-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksDelete.json new file mode 100644 index 000000000000..e534f2c9108f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksGet.json new file mode 100644 index 000000000000..1be0eb4eddd3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "southcentralus", + "tags": {}, + "properties": { + "queryPackId": "d1c8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-08-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksList.json new file mode 100644 index 000000000000..c18bfae3a590 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": {}, + "properties": { + "queryPackId": "d1c8fc00-2b68-441e-8f9b-ded8748dc6aa", + "timeCreated": "2019-08-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-other-resource-group/providers/microsoft.insights/querypacks/my-other-querypack", + "name": "my-other-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": {}, + "properties": { + "queryPackId": "aac8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-06-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksListByResourceGroup.json new file mode 100644 index 000000000000..09baa2c935a5 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksListByResourceGroup.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": {}, + "properties": { + "queryPackId": "d1c8fc00-2b68-441e-8f9b-ded8748dc6aa", + "timeCreated": "2019-08-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-other-querypack", + "name": "my-other-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": {}, + "properties": { + "queryPackId": "aac8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-06-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdate.json new file mode 100644 index 000000000000..58d5341b52cc --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "LogAnalyticsQueryPackPayload": { + "location": "South Central US", + "tags": { + "Tag1": "Value1" + }, + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "queryPackId": "aac8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-06-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdateTagsOnly.json new file mode 100644 index 000000000000..cdfcfdd9cba4 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPacksUpdateTagsOnly.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-09-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "queryPackName": "my-querypack", + "QueryPackTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/querypacks/my-querypack", + "name": "my-querypack", + "type": "microsoft.insights/querypacks", + "location": "South Central US", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "queryPackId": "aac8fc00-2b68-441e-8f9b-ded8748dc635", + "timeCreated": "2019-06-04T12:37:56.8543652Z", + "timeModified": "2019-08-04T12:37:56.8543652Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 0c8cbd2445aa..0c522e949bb6 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -285,6 +285,17 @@ These settings apply only when `--tag=package-2018-05-01-preview` is specified o input-file: - Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json ``` + +### Tag: package-2019-09-01-preview + +These settings apply only when `--tag=package-2019-09-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09-01-preview' +input-file: +- Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json +- Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json +``` + --- # Code Generation @@ -395,6 +406,8 @@ input-file: - $(this-folder)/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json - $(this-folder)/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json - $(this-folder)/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json + - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json + - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json ``` From df118006164af427f4d441c20e9a570c28505876 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Thu, 5 Sep 2019 19:22:43 +0000 Subject: [PATCH 099/123] regenerated all-api-versions --- specification/applicationinsights/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 0c522e949bb6..d9c8f32b0150 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -406,8 +406,8 @@ input-file: - $(this-folder)/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json - $(this-folder)/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json - $(this-folder)/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json + - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json ``` From 4e9951a1111748e1ab38933d025aaa78156c3fcb Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Thu, 5 Sep 2019 22:55:50 -0400 Subject: [PATCH 100/123] fix: cSpell failure for TSVE (#7132) --- custom-words.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/custom-words.txt b/custom-words.txt index a55779efd30b..fad3038ed8e5 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1436,6 +1436,7 @@ translatortext trendingtopics triggeredwebjobs triggerruns +TSVE Turbonomic Txns Typeless From 35ae8d5033c2d94a284373664df91b8fd3f33521 Mon Sep 17 00:00:00 2001 From: Anthony Kunnel Jose Date: Thu, 5 Sep 2019 20:13:15 -0700 Subject: [PATCH 101/123] Add change feed properties to 2019-04-01 Storage. (#7049) Add change feed properties to Storage Blob Services. --- .../Microsoft.Storage/stable/2019-04-01/blob.json | 13 +++++++++++++ .../stable/2019-04-01/examples/BlobServicesGet.json | 5 ++++- .../2019-04-01/examples/BlobServicesList.json | 5 ++++- .../stable/2019-04-01/examples/BlobServicesPut.json | 12 +++++++++--- 4 files changed, 30 insertions(+), 5 deletions(-) diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/blob.json index 55437064c5a7..2e07ab435efb 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/blob.json @@ -1144,6 +1144,10 @@ "automaticSnapshotPolicyEnabled": { "type": "boolean", "description": "Automatic Snapshot is enabled if set to true." + }, + "changeFeed": { + "$ref": "#/definitions/ChangeFeed", + "description": "The blob service properties for change feed events." } }, "x-ms-client-flatten": true, @@ -1170,6 +1174,15 @@ } } }, + "ChangeFeed": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether change feed event logging is enabled for the Blob service." + } + }, + "description": "The blob service properties for change feed events." + }, "DeleteRetentionPolicy": { "properties": { "enabled": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesGet.json index 9b03d54608e3..bcd9076a794e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesGet.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesGet.json @@ -80,7 +80,10 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } } } } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesList.json index 9ee20d70725b..124690f0d950 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesList.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesList.json @@ -81,7 +81,10 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } } } ] diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json index 45231ea77eef..f3fd9e8070a0 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json @@ -74,8 +74,11 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true - } + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } + } } }, "responses": { @@ -151,7 +154,10 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true + "automaticSnapshotPolicyEnabled": true, + "changeFeed": { + "enabled": true + } } } } From e3fa2c05a467f498f1bda7d9052b4bce03be44c6 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Fri, 6 Sep 2019 01:15:46 -0400 Subject: [PATCH 102/123] chore: jsonfmt storage (#7138) --- .../stable/2019-04-01/examples/BlobServicesPut.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json index f3fd9e8070a0..34166bf1db3a 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/examples/BlobServicesPut.json @@ -78,7 +78,7 @@ "changeFeed": { "enabled": true } - } + } } }, "responses": { From b92dda5961d95de9c7beeb1df008b43a57b4a29b Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Fri, 6 Sep 2019 04:50:57 -0400 Subject: [PATCH 103/123] chore: jsonfmt applicationinsights (#7137) --- .../QueryPackQueries_API.json | 29 +++++++++++----- .../2019-09-01-preview/QueryPacks_API.json | 33 +++++++++++++----- .../examples/QueryPackQueriesPut.json | 18 +++++++--- .../examples/QueryPackQueriesSearch.json | 34 ++++++++++++++----- 4 files changed, 86 insertions(+), 28 deletions(-) diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json index bd7b97ad4a6d..2c08716f3512 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json @@ -6,12 +6,20 @@ "version": "2019-09-01-preview" }, "host": "management.azure.com", - "schemes": ["https"], - "consumes": ["application/json"], - "produces": ["application/json"], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "security": [ { - "azure_auth": ["user_impersonation"] + "azure_auth": [ + "user_impersonation" + ] } ], "securityDefinitions": { @@ -53,7 +61,7 @@ "$ref": "#/parameters/ContinuationTokenParameter" } ], - "x-ms-pageable": { + "x-ms-pageable": { "nextLinkName": "nextLink" }, "responses": { @@ -113,7 +121,7 @@ } } ], - "x-ms-pageable": { + "x-ms-pageable": { "nextLinkName": "nextLink" }, "responses": { @@ -386,7 +394,10 @@ } } }, - "required": ["body", "displayName"] + "required": [ + "body", + "displayName" + ] }, "LogAnalyticsQueryPackQuerySearchProperties": { "description": "Properties that define an Log Analytics QueryPack-Query search properties.", @@ -416,7 +427,9 @@ }, "LogAnalyticsQueryPackQueryListResult": { "description": "Describes the list of Log Analytics QueryPack-Query resources.", - "required": ["value"], + "required": [ + "value" + ], "properties": { "value": { "type": "array", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json index 6f8238e92d5a..a97fc63cbb71 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json @@ -6,12 +6,20 @@ "version": "2019-09-01-preview" }, "host": "management.azure.com", - "schemes": ["https"], - "consumes": ["application/json"], - "produces": ["application/json"], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "security": [ { - "azure_auth": ["user_impersonation"] + "azure_auth": [ + "user_impersonation" + ] } ], "securityDefinitions": { @@ -308,7 +316,10 @@ "location": { "type": "string", "description": "Resource location", - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "tags": { "additionalProperties": { @@ -317,7 +328,9 @@ "description": "Resource tags" } }, - "required": ["location"], + "required": [ + "location" + ], "x-ms-azure-resource": true, "description": "An azure resource object" }, @@ -345,7 +358,9 @@ "$ref": "#/definitions/QueryPacksResource" } ], - "required": ["properties"], + "required": [ + "properties" + ], "description": "An Log Analytics QueryPack definition." }, "LogAnalyticsQueryPackProperties": { @@ -377,7 +392,9 @@ }, "LogAnalyticsQueryPackListResult": { "description": "Describes the list of Log Analytics QueryPack resources.", - "required": ["value"], + "required": [ + "value" + ], "properties": { "value": { "type": "array", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json index cbc7a015529b..b221fca2f9c8 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesPut.json @@ -10,8 +10,13 @@ "displayName": "Exceptions - New in the last 24 hours", "description": "my description", "body": "let newExceptionsTimeRange = 1d;\nlet timeRangeToCheckBefore = 7d;\nexceptions\n| where timestamp < ago(timeRangeToCheckBefore)\n| summarize count() by problemId\n| join kind= rightanti (\nexceptions\n| where timestamp >= ago(newExceptionsTimeRange)\n| extend stack = tostring(details[0].rawStack)\n| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by problemId \n) on problemId \n| order by count_ desc\n", - "categories": ["analytics"], - "labels": ["my-label", "my-other-label"], + "categories": [ + "analytics" + ], + "labels": [ + "my-label", + "my-other-label" + ], "linkedResourceId": "/subscriptions/a51967b5-271e-4f12-810e-e7fa20c8828d/resourceGroups/FoodHere/providers/Microsoft.KeyVault/vaults/FoodHere" } } @@ -30,8 +35,13 @@ "displayName": "Exceptions - New in the last 24 hours", "description": "my description", "body": "let newExceptionsTimeRange = 1d;\nlet timeRangeToCheckBefore = 7d;\nexceptions\n| where timestamp < ago(timeRangeToCheckBefore)\n| summarize count() by problemId\n| join kind= rightanti (\nexceptions\n| where timestamp >= ago(newExceptionsTimeRange)\n| extend stack = tostring(details[0].rawStack)\n| summarize count(), dcount(user_AuthenticatedId), min(timestamp), max(timestamp), any(stack) by problemId \n) on problemId \n| order by count_ desc\n", - "categories": ["analytics"], - "labels": ["my-label", "my-other-label"], + "categories": [ + "analytics" + ], + "labels": [ + "my-label", + "my-other-label" + ], "linkedResourceId": "/subscriptions/a51967b5-271e-4f12-810e-e7fa20c8828d/resourceGroups/FoodHere/providers/Microsoft.KeyVault/vaults/FoodHere" } } diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json index 33339b9e0ef9..d4755074a3b8 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-09-01-preview/examples/QueryPackQueriesSearch.json @@ -7,8 +7,13 @@ "includeBody": true, "$top": 3, "QuerySearchProperties": { - "categories": ["other", "analytics"], - "labels": ["my-label"] + "categories": [ + "other", + "analytics" + ], + "labels": [ + "my-label" + ] } }, "responses": { @@ -27,8 +32,12 @@ "displayName": "Heartbeat_1", "description": "Thie query takes 10 entries of heartbeat 0", "body": "Heartbeat | take 1", - "categories": ["other"], - "labels": ["my-label"] + "categories": [ + "other" + ], + "labels": [ + "my-label" + ] } }, { @@ -43,8 +52,12 @@ "displayName": "Heartbeat_2", "description": "Thie query takes 10 entries of heartbeat 1", "body": "Heartbeat | take 1", - "categories": ["analytics"], - "labels": ["my-label"] + "categories": [ + "analytics" + ], + "labels": [ + "my-label" + ] } }, { @@ -59,8 +72,13 @@ "displayName": "Heartbeat_3", "description": "Thie query takes 10 entries of heartbeat 2", "body": "Heartbeat | take 1", - "categories": ["other", "analytics"], - "labels": ["my-label"] + "categories": [ + "other", + "analytics" + ], + "labels": [ + "my-label" + ] } } ], From c09e541b0ce51cd998f83e2faadd493e3f7451ba Mon Sep 17 00:00:00 2001 From: Leonard Francis Date: Fri, 6 Sep 2019 16:43:03 +0000 Subject: [PATCH 104/123] New API version 2019-07-01 for ANF (#7020) * ANF-169 add 2019-07-01 swagger Initial checkin is with the base 2019-06-01 swagger. * ANF-169 add 2019-07-01 swagger * ANF-169 add 2019-07-01 API version * Update netapp.json --- .../examples/Accounts_CreateOrUpdate.json | 30 + .../2019-07-01/examples/Accounts_Delete.json | 12 + .../2019-07-01/examples/Accounts_Get.json | 18 + .../2019-07-01/examples/Accounts_List.json | 21 + .../2019-07-01/examples/Accounts_Update.json | 20 + .../examples/CheckFilePathAvailability.json | 19 + .../examples/CheckNameAvailability.json | 19 + .../examples/MountTargets_List.json | 33 + .../examples/Pools_CreateOrUpdate.json | 41 + .../2019-07-01/examples/Pools_Delete.json | 13 + .../stable/2019-07-01/examples/Pools_Get.json | 22 + .../2019-07-01/examples/Pools_List.json | 25 + .../2019-07-01/examples/Pools_Update.json | 24 + .../2019-07-01/examples/Snapshots_Create.json | 28 + .../2019-07-01/examples/Snapshots_Delete.json | 16 + .../2019-07-01/examples/Snapshots_Get.json | 24 + .../2019-07-01/examples/Snapshots_List.json | 27 + .../2019-07-01/examples/Snapshots_Update.json | 26 + .../examples/Volumes_CreateOrUpdate.json | 48 + .../2019-07-01/examples/Volumes_Delete.json | 14 + .../2019-07-01/examples/Volumes_Get.json | 25 + .../2019-07-01/examples/Volumes_List.json | 28 + .../2019-07-01/examples/Volumes_Update.json | 27 + .../stable/2019-07-01/netapp.json | 2355 +++++++++++++++++ .../netapp/resource-manager/readme.go.md | 10 + .../netapp/resource-manager/readme.java.md | 16 + .../netapp/resource-manager/readme.md | 11 +- 27 files changed, 2951 insertions(+), 1 deletion(-) create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_CreateOrUpdate.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Delete.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_List.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Update.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckFilePathAvailability.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckNameAvailability.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/MountTargets_List.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_CreateOrUpdate.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Delete.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Get.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_List.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Update.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Create.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Delete.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Get.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_List.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Update.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_CreateOrUpdate.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Delete.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Get.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_List.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Update.json create mode 100644 specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_CreateOrUpdate.json new file mode 100644 index 000000000000..23b886874e54 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_CreateOrUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "api-version": "2019-07-01", + "body": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Delete.json new file mode 100644 index 000000000000..02e5f9dcdff8 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "api-version": "2019-07-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json new file mode 100644 index 000000000000..09d61b067dc0 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "api-version": "2019-05-01" + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Created" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_List.json new file mode 100644 index 000000000000..420d52e4bc14 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_List.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus", + "properties": { + "provisioningState": "Created" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Update.json new file mode 100644 index 000000000000..a339211b0eed --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Update.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "api-version": "2019-07-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckFilePathAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckFilePathAvailability.json new file mode 100644 index 000000000000..07a82007b19a --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckFilePathAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "location": "eastus", + "api-version": "2019-07-01", + "body": { + "name": "my-exact-filepth", + "type": "netAppAccount/capacityPools/volume", + "resourceGroup": "myrg" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckNameAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..c4f861e24e16 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "location": "eastus", + "api-version": "2019-07-01", + "body": { + "name": "accName", + "type": "netAppAccount", + "resourceGroup": "myrg" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/MountTargets_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/MountTargets_List.json new file mode 100644 index 000000000000..135cee712e5a --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/MountTargets_List.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus", + "properties": { + "endIp": "1.2.3.4", + "mountTargetId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "startIp": "1.2.3.4", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "subnet": "1.2.3.4", + "netmask": "255.255.255.0", + "ipAddress": "1.2.3.4", + "gateway": "1.2.3.4", + "smbServerFqdn": "fullyqualified.domainname.com", + "provisioningState": "Created" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_CreateOrUpdate.json new file mode 100644 index 000000000000..314995cbcaaf --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_CreateOrUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "api-version": "2019-07-01", + "body": { + "location": "eastus", + "properties": { + "size": 4398046511104, + "serviceLevel": "Premium" + } + } + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Created", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "201": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Created", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Delete.json new file mode 100644 index 000000000000..5d521e774da5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "api-version": "2019-07-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Get.json new file mode 100644 index 000000000000..114854dae1a7 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Created", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_List.json new file mode 100644 index 000000000000..1dfa390d4c7f --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus", + "properties": { + "provisioningState": "Created", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Update.json new file mode 100644 index 000000000000..eb6bc16169ac --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Pools_Update.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "api-version": "2019-07-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "provisioningState": "Created", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Create.json new file mode 100644 index 000000000000..aa15a7c3cfe5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Create.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "snapshotName": "snapshotName", + "api-version": "2019-07-01", + "body": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Created" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Delete.json new file mode 100644 index 000000000000..d3a9c516244c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "snapshotName": "snapshotName", + "api-version": "2019-07-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Get.json new file mode 100644 index 000000000000..259b2291f651 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "snapshotName": "snapshotName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Created" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_List.json new file mode 100644 index 000000000000..c05bb76975b3 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Created" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Update.json new file mode 100644 index 000000000000..2bee6a23f8e7 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Snapshots_Update.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "snapshotName": "snapshotName", + "api-version": "2019-07-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Created" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_CreateOrUpdate.json new file mode 100644 index 000000000000..a02103f2ffaf --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_CreateOrUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01", + "body": { + "location": "eastus", + "properties": { + "serviceLevel": "Premium", + "creationToken": "my-unique-file-path", + "usageThreshold": 107374182400, + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Created", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "201": { + "body": { + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Created", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Delete.json new file mode 100644 index 000000000000..902afd17fd4d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Get.json new file mode 100644 index 000000000000..25634dbaff00 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Created", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_List.json new file mode 100644 index 000000000000..d48101b88c0f --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Created", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Update.json new file mode 100644 index 000000000000..259affa8416e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Volumes_Update.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "accountName": "accountName", + "poolName": "poolName", + "volumeName": "volumeName", + "api-version": "2019-07-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Created", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json new file mode 100644 index 000000000000..ece379cb0215 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json @@ -0,0 +1,2355 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft NetApp", + "description": "Microsoft NetApp Azure Resource Provider specification", + "version": "2019-07-01", + "x-ms-code-generation-settings": { + "name": "AzureNetAppFilesManagementClient" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "host": "management.azure.com", + "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.NetApp/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Describes the Resource Provider", + "description": "Lists all of the available Microsoft.NetApp Rest API operations", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkNameAvailability": { + "post": { + "summary": "Check resource name availability", + "description": "Check if a resource name is available.", + "operationId": "CheckNameAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "examples/CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkFilePathAvailability": { + "post": { + "summary": "Check file path availability", + "description": "Check if a file path is available.", + "operationId": "CheckFilePathAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "File path availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckFilePathAvailability": { + "$ref": "examples/CheckFilePathAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts": { + "get": { + "summary": "Describe all NetApp Accounts in a resource group", + "description": "List and describe all NetApp accounts in the resource group", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_List": { + "$ref": "examples/Accounts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}": { + "get": { + "summary": "Describe a NetApp Account", + "description": "Get the NetApp account", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Get": { + "$ref": "examples/Accounts_Get.json" + } + } + }, + "put": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_CreateOrUpdate", + "summary": "Create or update a NetApp account", + "description": "Create or update the specified NetApp account within the resource group", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "201": { + "description": "Account created", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Accounts_CreateOrUpdate": { + "$ref": "examples/Accounts_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Delete", + "summary": "Delete a NetApp account", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "Delete the specified NetApp account", + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Accounts_Delete": { + "$ref": "examples/Accounts_Delete.json" + } + } + }, + "patch": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Update", + "summary": "Update a NetApp account", + "description": "Patch the specified NetApp account", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccountPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Update": { + "$ref": "examples/Accounts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools": { + "get": { + "summary": "Describe all Capacity Pools", + "description": "List all capacity pools in the NetApp Account", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPoolList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_List": { + "$ref": "examples/Pools_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}": { + "get": { + "summary": "Describe a Capacity Pool", + "description": "Get details of the specified capacity pool", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_Get": { + "$ref": "examples/Pools_Get.json" + } + } + }, + "put": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_CreateOrUpdate", + "summary": "Create or Update the specified capacity pool within the resource group", + "description": "Create or Update a capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - pool updated", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "201": { + "description": "Pool created", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pools_CreateOrUpdate": { + "$ref": "examples/Pools_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Update", + "summary": "Update a capacity pool", + "description": "Patch the specified capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPoolPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_Update": { + "$ref": "examples/Pools_Update.json" + } + } + }, + "delete": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Delete", + "summary": "Delete a capacity pool", + "description": "Delete the specified capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pools_Delete": { + "$ref": "examples/Pools_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes": { + "get": { + "summary": "Describe all volumes", + "description": "List all volumes within the capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "Volumes" + ], + "operationId": "Volumes_List", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_List": { + "$ref": "examples/Volumes_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}": { + "get": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Get", + "summary": "Describe a volume", + "description": "Get the details of the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_Get": { + "$ref": "examples/Volumes_Get.json" + } + } + }, + "put": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_CreateOrUpdate", + "summary": "Create or Update a volume", + "description": "Create or update the specified volume within the capacity pool", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volume" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok - volume updated", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "201": { + "description": "Volume created", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_CreateOrUpdate": { + "$ref": "examples/Volumes_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Update", + "summary": "Update a volume", + "description": "Patch the specified volume", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumePatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_Update": { + "$ref": "examples/Volumes_Update.json" + } + } + }, + "delete": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Delete", + "summary": "Delete a volume", + "description": "Delete the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_Delete": { + "$ref": "examples/Volumes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/mountTargets": { + "get": { + "tags": [ + "MountTargets" + ], + "operationId": "MountTargets_List", + "summary": "Describe all mount targets", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "List all mount targets associated with the volume", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/mountTargetList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "MountTargets_List": { + "$ref": "examples/MountTargets_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "summary": "Describe all snapshots", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "List all snapshots associated with the volume", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "examples/Snapshots_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "summary": "Describe a snapshot", + "description": "Get details of the specified snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_Get": { + "$ref": "examples/Snapshots_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Create", + "summary": "Create a snapshot", + "description": "Create the specified snapshot within the given volume", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Snapshot created", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Snapshots_Create": { + "$ref": "examples/Snapshots_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "summary": "Update a snapshot", + "description": "Patch a snapshot", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_Update": { + "$ref": "examples/Snapshots_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "summary": "Delete a snapshot", + "description": "Delete snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Snapshots_Delete": { + "$ref": "examples/Snapshots_Delete.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Cloud Volume operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Microsoft.NetApp REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft NetApp.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "ResourceNameAvailability": { + "description": "Information regarding availability of a resource name.", + "type": "object", + "properties": { + "isAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "description": "If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "netAppAccountList": { + "description": "List of NetApp account resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Multiple NetApp accounts", + "items": { + "$ref": "#/definitions/netAppAccount" + } + } + } + }, + "netAppAccount": { + "description": "NetApp account resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "netAppAccountPatch": { + "description": "NetApp account patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "accountProperties": { + "description": "NetApp account properties", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "activeDirectories": { + "description": "Active Directories", + "type": "array", + "items": { + "$ref": "#/definitions/activeDirectory" + } + } + } + }, + "activeDirectory": { + "description": "Active Directory", + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "description": "Id of the Active Directory" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + }, + "password": { + "type": "string", + "description": "Plain text password of Active Directory domain administrator" + }, + "domain": { + "type": "string", + "description": "Name of the Active Directory domain" + }, + "dns": { + "type": "string", + "description": "Comma separated list of DNS server IP addresses for the Active Directory domain" + }, + "status": { + "type": "string", + "description": "Status of the Active Directory" + }, + "smbServerName": { + "type": "string", + "description": "NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes" + }, + "organizationalUnit": { + "type": "string", + "description": "The Organizational Unit (OU) within the Windows Active Directory" + } + } + }, + "capacityPoolList": { + "description": "List of capacity pool resources", + "type": "object", + "properties": { + "value": { + "description": "List of Capacity pools", + "type": "array", + "items": { + "$ref": "#/definitions/capacityPool" + } + } + } + }, + "capacityPool": { + "description": "Capacity pool resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolProperties", + "x-ms-client-flatten": true + } + } + }, + "poolProperties": { + "description": "Pool properties", + "type": "object", + "required": [ + "size", + "serviceLevel" + ], + "properties": { + "poolId": { + "title": "poolId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Pool", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "capacityPoolPatch": { + "description": "Capacity pool patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolPatchProperties", + "x-ms-client-flatten": true + } + } + }, + "poolPatchProperties": { + "description": "Patchable pool properties", + "type": "object", + "properties": { + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000, + "default": 4398046511104 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + } + } + }, + "volumeList": { + "description": "List of volume resources", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "$ref": "#/definitions/volume" + } + } + } + }, + "volume": { + "description": "Volume resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Volume properties", + "$ref": "#/definitions/volumeProperties", + "x-ms-client-flatten": true + } + } + }, + "resourceTags": { + "description": "Resource tags", + "type": "object" + }, + "volumeProperties": { + "description": "Volume properties", + "type": "object", + "required": [ + "creationToken", + "usageThreshold", + "subnetId" + ], + "properties": { + "fileSystemId": { + "title": "FileSystem ID", + "type": "string", + "readOnly": true, + "description": "Unique FileSystem Identifier.", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "creationToken": { + "title": "Creation Token or File Path", + "type": "string", + "description": "A unique file path for the volume. Used when creating mount targets", + "minimum": 16, + "maximum": 40, + "example": "some-amazing-filepath" + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "protocolTypes": { + "title": "protocolTypes", + "description": "Set of protocol types", + "type": "array", + "items": { + "type": "string" + }, + "example": [ "NFSv3", "NFSv4.1" ] + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "snapshotId": { + "title": "Snapshot ID", + "type": "string", + "description": "UUID v4 or resource identifier used to identify the Snapshot.", + "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}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "baremetalTenantId": { + "title": "Baremetal Tenant ID", + "type": "string", + "readOnly": true, + "description": "Unique Baremetal Tenant Identifier.", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9560acf5-4e3a-12e7-9bdb-02007cca7779" + }, + "subnetId": { + "type": "string", + "description": "The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes" + }, + "mountTargets": { + "title": "mountTargets", + "description": "List of mount targets", + "items": { + "$ref": "#/definitions/mountTargetList" + } + } + } + }, + "exportPolicyRule": { + "description": "Volume Export Policy Rule", + "type": "object", + "properties": { + "ruleIndex": { + "type": "integer", + "description": "Order index" + }, + "unixReadOnly": { + "type": "boolean", + "description": "Read only access" + }, + "unixReadWrite": { + "type": "boolean", + "description": "Read and write access" + }, + "cifs": { + "type": "boolean", + "description": "Allows CIFS protocol" + }, + "nfsv3": { + "type": "boolean", + "description": "Allows NFSv3 protocol" + }, + "nfsv41": { + "type": "boolean", + "description": "Allows NFSv4.1 protocol" + }, + "allowedClients": { + "type": "string", + "description": "Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names" + } + } + }, + "volumePatch": { + "description": "Volume patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Patchable volume properties", + "$ref": "#/definitions/volumePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "volumePatchProperties": { + "description": "Patchable volume properties", + "type": "object", + "properties": { + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + } + } + }, + "mountTargetList": { + "description": "List of Mount Targets", + "type": "object", + "properties": { + "value": { + "description": "A list of Mount targets", + "type": "array", + "items": { + "$ref": "#/definitions/mountTarget" + } + } + } + }, + "mountTarget": { + "description": "Mount Target", + "type": "object", + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + }, + "properties": { + "description": "Mount Target Properties", + "$ref": "#/definitions/mountTargetProperties", + "x-ms-client-flatten": true + } + } + }, + "mountTargetProperties": { + "description": "Mount target properties", + "type": "object", + "required": [ + "fileSystemId" + ], + "properties": { + "mountTargetId": { + "title": "mountTargetId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the MountTarget", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the MountTarget", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "ipAddress": { + "title": "ipAddress", + "description": "The mount target's IPv4 address", + "type": "string", + "readOnly": true, + "example": "1.2.3.4" + }, + "subnet": { + "title": "subnet", + "type": "string", + "description": "The subnet", + "example": "1.2.3.4" + }, + "startIp": { + "title": "startIp", + "description": "The start of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "endIp": { + "title": "endIp", + "description": "The end of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "gateway": { + "title": "gateway", + "description": "The gateway of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "netmask": { + "title": "netmask", + "description": "The netmask of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "255.255.255.0" + }, + "smbServerFqdn": { + "title": "smbServerFQDN", + "description": "The SMB server's Fully Qualified Domain Name, FQDN", + "type": "string", + "example": "fullyqualified.domainname.com" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "snapshotsList": { + "description": "List of Snapshots", + "type": "object", + "properties": { + "value": { + "description": "A list of Snapshots", + "type": "array", + "items": { + "$ref": "#/definitions/snapshot" + } + } + } + }, + "snapshot": { + "description": "Snapshot of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + }, + "properties": { + "description": "Snapshot Properties", + "$ref": "#/definitions/snapshotProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPatch": { + "description": "Snapshot patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + } + } + }, + "snapshotProperties": { + "description": "Snapshot properties", + "type": "object", + "properties": { + "snapshotId": { + "title": "snapshotId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Snapshot", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the FileSystem", + "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}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "created": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the snapshot", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "location": { + "name": "location", + "description": "The location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroup": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "AccountName": { + "name": "accountName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the NetApp account", + "x-ms-parameter-location": "method" + }, + "PoolName": { + "name": "poolName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the capacity pool", + "x-ms-parameter-location": "method" + }, + "VolumeName": { + "name": "volumeName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the volume", + "x-ms-parameter-location": "method" + }, + "MountTargetName": { + "name": "mountTargetName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotName": { + "name": "snapshotName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "description": "Version of the API to be used with the client request.", + "in": "query", + "type": "string", + "required": true, + "default": "2019-07-01" + } + } +} diff --git a/specification/netapp/resource-manager/readme.go.md b/specification/netapp/resource-manager/readme.go.md index 63aad6e6522c..3560088fb6e9 100644 --- a/specification/netapp/resource-manager/readme.go.md +++ b/specification/netapp/resource-manager/readme.go.md @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-netapp-2019-07-01 - tag: package-netapp-2019-06-01 - tag: package-netapp-2019-05-01 - tag: package-2017-08-15 ``` +### Tag: package-netapp-2019-07-01 and go + +These settings apply only when `--tag=package-netapp-2019-07-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-netapp-2019-07-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-07-01/$(namespace) +``` + ### Tag: package-netapp-2019-06-01 and go These settings apply only when `--tag=package-netapp-2019-06-01 --go` is specified on the command line. diff --git a/specification/netapp/resource-manager/readme.java.md b/specification/netapp/resource-manager/readme.java.md index 0828cd306fe1..b7ed1d61a3de 100644 --- a/specification/netapp/resource-manager/readme.java.md +++ b/specification/netapp/resource-manager/readme.java.md @@ -16,7 +16,23 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-netapp ``` yaml $(java) && $(multiapi) batch: + - tag: package-netapp-2019-07-01 - tag: package-netapp-2019-06-01 + - tag: package-netapp-2019-05-01 + - tag: package-2017-08-15 +``` + +### Tag: package-netapp-2019-07-01 and java + +These settings apply only when `--tag=package-netapp-2019-07-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-netapp-2019-07-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.netapp.v2019_07_01 + output-folder: $(azure-libraries-for-java-folder)/netapp/resource-manager/v2019_07_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-netapp-2019-06-01 and java diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index 6796843d49c3..7c3fd4e30605 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -28,7 +28,16 @@ These are the global settings for the Azure NetApp Files API. title: NetAppManagementClient description: Microsoft NetApp Azure Resource Provider specification openapi-type: arm -tag: package-netapp-2019-06-01 +tag: package-netapp-2019-07-01 +``` + +### Tag: package-netapp-2019-07-01 + +These settings apply only when `--tag=package-netapp-2019-07-01` is specified on the command line. + +``` yaml $(tag) == 'package-netapp-2019-07-01' +input-file: +- Microsoft.NetApp/stable/2019-07-01/netapp.json ``` ### Tag: package-netapp-2019-06-01 From 8a02736ee4e89d8115d4ed5d2001e8c8d78ca878 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Fri, 6 Sep 2019 16:45:24 +0000 Subject: [PATCH 105/123] regenerated all-api-versions --- specification/netapp/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index 7c3fd4e30605..0072c2a6e37f 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -119,6 +119,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.NetApp/stable/2019-07-01/netapp.json - $(this-folder)/Microsoft.NetApp/stable/2019-06-01/netapp.json - $(this-folder)/Microsoft.NetApp/stable/2019-05-01/netapp.json - $(this-folder)/Microsoft.NetApp/preview/2017-08-15/netapp.json From e558b6dfec0c042c2cf3781525f80a457572aa2b Mon Sep 17 00:00:00 2001 From: Zhenfeng Date: Fri, 6 Sep 2019 18:08:06 -0700 Subject: [PATCH 106/123] Fix typo in put managementPolicy response (#7144) --- .../Microsoft.Storage/stable/2019-04-01/storage.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json index 44666d5baaee..42bedc81e988 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json @@ -689,7 +689,7 @@ ], "responses": { "200": { - "description": "OK -- Get managementpolicy successfully.", + "description": "OK -- Put managementpolicy successfully.", "schema": { "$ref": "#/definitions/ManagementPolicy" } From a7411f4556eea4597bc42bb619f01a9faff9450c Mon Sep 17 00:00:00 2001 From: Anirban Sarkar <33848291+asarkar84@users.noreply.github.com> Date: Sat, 7 Sep 2019 19:33:51 -0700 Subject: [PATCH 107/123] =?UTF-8?q?Billing=20RP=20spec=20changes=20for=20l?= =?UTF-8?q?istInvoiceSectionsWithCreateSubscription=E2=80=A6=20(#6964)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Billing RP spec changes for listInvoiceSectionsWithCreateSubscriptionPermission API * Updated the operation id * Added x-ms-pageable * Added next link * Deleted unused file ProductCancelByBillingAccount * Incorporated review comments Incorporated review comments --- .../preview/2019-10-01-preview/billing.json | 133 ++++++++++++------ ...ceSectionsListWithCreateSubPermission.json | 30 ++++ .../ProductCancelByBillingAccount.json | 19 --- 3 files changed, 120 insertions(+), 62 deletions(-) create mode 100644 specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json delete mode 100644 specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductCancelByBillingAccount.json diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index 3c45280353c8..a2135901457b 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -158,6 +158,45 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/listInvoiceSectionsWithCreateSubscriptionPermission": { + "post": { + "tags": [ + "BillingAccounts" + ], + "x-ms-examples": { + "InvoiceSectionsListWithCreateSubPermission": { + "$ref": "./examples/InvoiceSectionsListWithCreateSubPermission.json" + } + }, + "operationId": "BillingAccounts_ListInvoiceSectionsByCreateSubscriptionPermission", + "description": "Lists all invoice sections with create subscription permission for a user.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/InvoiceSectionListWithCreateSubPermissionResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/paymentMethods": { "get": { "tags": [ @@ -2591,7 +2630,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingProperty": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingProperty/default": { "get": { "tags": [ "BillingProperties" @@ -2630,48 +2669,6 @@ } } }, - "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/products/{productName}/updateAutoRenew": { - "post": { - "tags": [ - "Products" - ], - "operationId": "Products_UpdateAutoRenewByBillingAccount", - "description": "Cancel auto renew for product by product id and billing account name", - "x-ms-examples": { - "ProductsCancelByBillingAccount": { - "$ref": "./examples/ProductCancelByBillingAccount.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/billingAccountNameParameter" - }, - { - "$ref": "#/parameters/productNameParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/updateAutoRenewRequestParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/UpdateAutoRenewOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/products/{productName}/updateAutoRenew": { "post": { "tags": [ @@ -5571,6 +5568,56 @@ } } }, + "InvoiceSectionListWithCreateSubPermissionResult": { + "type": "object", + "description": "Result of listing invoice section properties with create subscription permission.", + "properties": { + "value": { + "description": "The list of invoice section properties with create subscription permission.", + "type": "array", + "items": { + "$ref": "#/definitions/InvoiceSectionWithCreateSubPermission" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "InvoiceSectionWithCreateSubPermission": { + "description": "Invoice section properties with create subscription permission.", + "properties": { + "invoiceSectionId": { + "description": "Invoice Section Id.", + "type": "string", + "readOnly": true + }, + "invoiceSectionDisplayName": { + "description": "Invoice Section display name.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "Billing profile Id.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "Billing profile display name.", + "type": "string", + "readOnly": true + }, + "enabledAzurePlans": { + "description": "Enabled azure plans for the associated billing profile.", + "type": "array", + "items": { + "$ref": "#/definitions/AzurePlan" + } + } + } + }, "AzurePlan": { "description": "Details about the azure plan.", "properties": { diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json new file mode 100644 index 000000000000..dfc97353d0d6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "billingAccountName": "{billingAccountName}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "invoiceSection1", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", + "billingProfileDisplayName": "Contoso operations billing", + "enabledAzurePlans": [ + { + "skuId": "0001", + "skuDescription": "Microsoft Azure Plan" + }, + { + "skuId": "0002", + "skuDescription": "Microsoft Azure Plan for DevTest" + } + ] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductCancelByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductCancelByBillingAccount.json deleted file mode 100644 index f644c52ce463..000000000000 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductCancelByBillingAccount.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "parameters": { - "api-version": "2019-10-01-preview", - "billingAccountName": "{billingAccountName}", - "productName": "{productName}", - "body": { - "autoRenew": "false" - } - }, - "responses": { - "200": { - "body": { - "properties": { - "endDate": "2018-05-01T17:32:28Z" - } - } - } - } -} From 868a2dcdd4c06bac0716f0b3c7d2bfea37fa78c1 Mon Sep 17 00:00:00 2001 From: Chuang <54572251+xccc-msft@users.noreply.github.com> Date: Sun, 8 Sep 2019 11:33:25 +0800 Subject: [PATCH 108/123] Resources: update readme.java.md file for package-2019-06 (#7136) * add Java readme for resources * move Java section to readme.java.md * Resources: update readme.java.md file * Resources: update readme.java.md file * Resources: update args in readme.java.md --- .../resources/resource-manager/readme.java.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/specification/resources/resource-manager/readme.java.md b/specification/resources/resource-manager/readme.java.md index e9efe358eded..5079f2effce2 100644 --- a/specification/resources/resource-manager/readme.java.md +++ b/specification/resources/resource-manager/readme.java.md @@ -18,6 +18,7 @@ Generate all API versions currently shipped for this package ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-06 - tag: package-features-2015-12 - tag: package-locks-2016-09 - tag: package-policy-2019-06 @@ -36,6 +37,19 @@ batch: - tag: package-subscriptions-2016-06 ``` +### Tag: package-2019-06 and java + +These settings apply only when `--tag=package-2019-06 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_06_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-features-2015-12 and java These settings apply only when `--tag=package-features-2015-12 --java` is specified on the command line. @@ -247,7 +261,7 @@ generate-interface: true ### Tag: package-subscriptions-2018-06 and java -These settings apply only when `--tag=package-subscriptions-2018-06--java` is specified on the command line. +These settings apply only when `--tag=package-subscriptions-2018-06 --java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. ``` yaml $(tag) == 'package-subscriptions-2018-06' && $(java) && $(multiapi) @@ -260,7 +274,7 @@ generate-interface: true ### Tag: package-subscriptions-2016-06 and java -These settings apply only when `--tag=package-subscriptions-2016-06--java` is specified on the command line. +These settings apply only when `--tag=package-subscriptions-2016-06 --java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. ``` yaml $(tag) == 'package-subscriptions-2016-06' && $(java) && $(multiapi) From 968fcb5117b649f4e0cdb1dd7476c08ced2feb7c Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 8 Sep 2019 21:30:29 -0400 Subject: [PATCH 109/123] chore: jsonfmt netapp (#7148) --- .../stable/2019-07-01/examples/Accounts_Get.json | 8 ++++---- .../Microsoft.NetApp/stable/2019-07-01/netapp.json | 5 ++++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json index 09d61b067dc0..8d66e1d9a64b 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/examples/Accounts_Get.json @@ -8,10 +8,10 @@ "responses": { "200": { "body": { - "location": "eastus", - "properties": { - "provisioningState": "Created" - } + "location": "eastus", + "properties": { + "provisioningState": "Created" + } } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json index ece379cb0215..ea1fa7b7abc2 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json @@ -1878,7 +1878,10 @@ "items": { "type": "string" }, - "example": [ "NFSv3", "NFSv4.1" ] + "example": [ + "NFSv3", + "NFSv4.1" + ] }, "provisioningState": { "type": "string", From 5c0a27ed2b2048cfcfea5f201bc3bb2d62dd75b7 Mon Sep 17 00:00:00 2001 From: Yuyang Dong Date: Sun, 8 Sep 2019 19:33:43 -0700 Subject: [PATCH 110/123] Update ARM resource properties in Microsoft.Update.Admin (#7118) --- .../preview/2016-05-01/Updates.json | 36 ++++++------------- 1 file changed, 10 insertions(+), 26 deletions(-) diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json index de18b01300b7..b1416f114472 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json @@ -161,11 +161,6 @@ "UpdateModel": { "description": "Properties of an update.", "properties": { - "dateAvailable": { - "description": "Date uploaded by provider.", - "type": "string", - "format": "date-time" - }, "installedDate": { "description": "Date update was installed.", "type": "string", @@ -187,6 +182,10 @@ "description": "The minimum version required to install.", "type": "string" }, + "minOemVersionRequired": { + "description": "The minimum OEM version required to install.", + "type": "string" + }, "packagePath": { "description": "Path to the update package.", "type": "string" @@ -196,7 +195,7 @@ "type": "integer", "format": "int64" }, - "updateName": { + "displayName": { "description": "Name of the update.", "type": "string" }, @@ -204,17 +203,13 @@ "description": "Version of the update.", "type": "string" }, - "updateOemFile": { + "oemVersion": { "description": "OEM version of the update.", "type": "string" }, "publisher": { "description": "Publisher of the update.", "type": "string" - }, - "packageType": { - "description": "Describes the components that will be updated.", - "$ref": "#/definitions/PackageType" } } }, @@ -235,19 +230,6 @@ } } }, - "PackageType": { - "description": "Describes the components that will be updated.", - "type": "string", - "enum": [ - "Microsoft", - "Oem", - "Combined" - ], - "x-ms-enum": { - "name": "PackageType", - "modelAsString": true - } - }, "UpdateState": { "description": "State of the update.", "type": "string", @@ -256,9 +238,11 @@ "Obsolete", "Ready", "NotApplicableBecauseAnotherUpdateIsInProgress", + "Preparing", + "Installing", "Installed", - "Failed", - "Installing" + "PreparationFailed", + "InstallationFailed" ], "x-ms-enum": { "name": "UpdateState", From 8b8549f53c2c7ae80320695e036f99894ec7916f Mon Sep 17 00:00:00 2001 From: Arcturus Date: Mon, 9 Sep 2019 14:08:24 +0800 Subject: [PATCH 111/123] Add version 2018-06-preview version to readme.go in sql (#7150) * Add version 2018-06-preview version to readme.go * Quick fix --- specification/sql/resource-manager/readme.go.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/specification/sql/resource-manager/readme.go.md b/specification/sql/resource-manager/readme.go.md index f815a5f970c0..af27dada7e7d 100644 --- a/specification/sql/resource-manager/readme.go.md +++ b/specification/sql/resource-manager/readme.go.md @@ -15,12 +15,22 @@ From api-version 2017-10 and onwards, only pure package versions should be used. ``` yaml $(go) && $(multiapi) batch: + - tag: package-pure-2018-06-preview - tag: package-pure-2017-10-preview - tag: package-2017-03-preview - tag: package-2015-05-preview - tag: package-2014-04 ``` +#### Tag: package-pure-2018-06-preview and go + +These settings apply only when `--tag=package-pure-2018-06-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-pure-2018-06-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-06-01-preview/$(namespace) +``` + #### Tag: package-pure-2017-10-preview and go These settings apply only when `--tag=package-2017-10-preview --go` is specified on the command line. From 7297c6088fddb7550676c214592fcc7cfbc3a3a7 Mon Sep 17 00:00:00 2001 From: Amol Shintre Date: Sun, 8 Sep 2019 23:27:01 -0700 Subject: [PATCH 112/123] Add VMScaleSet ScaleIn Policy (#7034) * Add VMScaleSet ScaleIn Policy Adds VMScaleSet ScaleIn policy that is supported with the 2019-03-01 header but not included in Swagger * Update compute.json Fix whitespacing * Update compute.json Fix whitespace * Update compute.json Fix indentation * Fix indentation Fix indentation --- .../stable/2019-03-01/compute.json | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index e1fa0878ba79..2a7fc2438abc 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -7531,6 +7531,27 @@ }, "description": "The configuration parameters used while performing a rolling upgrade." }, + "ScaleInPolicy": { + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Default", + "OldestVM", + "NewestVM" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetScaleInRules", + "modelAsString": true + } + }, + "description": "The rules to be followed when scaling-in a virtual machine scale set.

Possible values are:

**Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

**OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

**NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

" + } + }, + "description": "Describes a scale-in policy for a virtual machine scale set." + }, "ImageOSDisk": { "properties": { "osType": { @@ -8664,6 +8685,10 @@ "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -8689,6 +8714,10 @@ "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." } }, "description": "Describes the properties of a Virtual Machine Scale Set." From 3aa66e474c0fa0ecdc0ee1cae072ef7ce287dc1f Mon Sep 17 00:00:00 2001 From: hagba <48715560+hagba@users.noreply.github.com> Date: Mon, 9 Sep 2019 09:28:14 +0300 Subject: [PATCH 113/123] Improve API documentation and add DeviceSecurityGroups to stable API (#7047) * Set IoTSecuritySolutions & IoTSecuritySolutionAnalytics API as stable * Set IoTSecuritySolutions & IoTSecuritySolutionAnalytics API as stable * remove example from file names * remove paging support from IoTSecurityDeviceRecommendationsList * remove paging from IoTSecurityAlertedDevicesList * SecuritySolution documentation updates * Fix operations naming * move devicesecuritygrups to stabe * Change in analytic from IoT to Iot * 4. Separate the aggregated alerts and recommendation operation to another swagger * Improve documentation sections * Security solution - set tags to HTTP verb * Security solution - changed tags to IotSecuritySolution * Revert "Security solution - changed tags to IotSecuritySolution" This reverts commit 6dffac6fc1863740a84a4651ab5fd0afd502fc38. * Revert "Security solution - set tags to HTTP verb" This reverts commit ba76ba6ac2fbd1c15aa4761880d638bdcf447c2c. * fix documentation * fix syntax * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json Co-Authored-By: Nick Schonning * Update specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json Co-Authored-By: Nick Schonning * solution/solutions inconsistency * Nested properties in PATCH api swagger * In PATCH, specify 'properties' field * Updated PUT operation name to CreateOrUpdate * Simplify array definition of analytics model * fix spaces * remove duplicate inheritence of CustomAlertRule * fix example validation error * fix ruleType Enum * Adds suppression to readme --- .../2019-08-01/deviceSecurityGroups.json | 559 ++++++++++++++++++ .../DeleteDeviceSecurityGroups_example.json | 11 + .../GetDeviceSecurityGroups_example.json | 192 ++++++ .../ListDeviceSecurityGroups_example.json | 195 ++++++ .../PutDeviceSecurityGroups_example.json | 387 ++++++++++++ .../CreateIoTSecuritySolution.json | 2 +- .../GetIoTSecuritySolutionsList.json | 8 +- .../GetIoTSecuritySolutionsListByIotHub.json | 2 +- ...IoTSecuritySolutionsListByIotHubAndRg.json | 2 +- .../GetIoTSecuritySolutionsListByRg.json | 4 +- .../UpdateIoTSecuritySolution.json | 2 +- ...ecuritySolutionsSecurityAnalyticsList.json | 6 +- .../iotSecuritySolutionAnalytics.json | 230 ++++--- .../2019-08-01/iotSecuritySolutions.json | 95 +-- .../security/resource-manager/readme.md | 36 +- 15 files changed, 1531 insertions(+), 200 deletions(-) create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json create mode 100644 specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json new file mode 100644 index 000000000000..7214aad87283 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json @@ -0,0 +1,559 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2019-08-01" + }, + "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": { + "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups": { + "get": { + "x-ms-examples": { + "List all device security groups for the specified IoT Hub resource": { + "$ref": "./examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json" + } + }, + "tags": [ + "DeviceSecurityGroups" + ], + "description": "Use this method get the list of device security groups for the specified IoT Hub resource.", + "operationId": "DeviceSecurityGroups_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DeviceSecurityGroupList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}": { + "get": { + "x-ms-examples": { + "Get a device security group for the specified IoT Hub resource": { + "$ref": "./examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json" + } + }, + "tags": [ + "DeviceSecurityGroups" + ], + "description": "Use this method to get the device security group for the specified IoT Hub resource.", + "operationId": "DeviceSecurityGroups_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/DeviceSecurityGroupName" + } + ], + "responses": { + "200": { + "description": "Successful request to get device security group.", + "schema": { + "$ref": "#/definitions/DeviceSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create or update a device security group for the specified IoT hub resource": { + "$ref": "./examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json" + } + }, + "tags": [ + "DeviceSecurityGroups" + ], + "description": "Use this method to creates or updates the device security group on a specified IoT Hub resource.", + "operationId": "DeviceSecurityGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/DeviceSecurityGroupName" + }, + { + "$ref": "#/parameters/DeviceSecurityGroup" + } + ], + "responses": { + "200": { + "description": "Security group was updated.", + "schema": { + "$ref": "#/definitions/DeviceSecurityGroup" + } + }, + "201": { + "description": "Security group was created.", + "schema": { + "$ref": "#/definitions/DeviceSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a device security group for the specified IoT Hub resource": { + "$ref": "./examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json" + } + }, + "tags": [ + "DeviceSecurityGroups" + ], + "description": "User this method to deletes the device security group.", + "operationId": "DeviceSecurityGroups_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/DeviceSecurityGroupName" + } + ], + "responses": { + "200": { + "description": "Device security group has been deleted." + }, + "204": { + "description": "Device security group does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeviceSecurityGroupList": { + "type": "object", + "readOnly": true, + "description": "List of device security groups", + "properties": { + "value": { + "type": "array", + "description": "List of device security group objects", + "items": { + "$ref": "#/definitions/DeviceSecurityGroup" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "DeviceSecurityGroup": { + "type": "object", + "description": "The device security group resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Device Security group data", + "$ref": "#/definitions/DeviceSecurityGroupProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "DeviceSecurityGroupProperties": { + "type": "object", + "description": "describes properties of a security group.", + "properties": { + "thresholdRules": { + "type": "array", + "description": "The list of custom alert threshold rules.", + "items": { + "type": "object", + "$ref": "#/definitions/ThresholdCustomAlertRule" + } + }, + "timeWindowRules": { + "type": "array", + "description": "The list of custom alert time-window rules.", + "items": { + "type": "object", + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + }, + "allowlistRules": { + "type": "array", + "description": "The allow-list custom alert rules.", + "items": { + "type": "object", + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + }, + "denylistRules": { + "type": "array", + "description": "The deny-list custom alert rules.", + "items": { + "type": "object", + "$ref": "#/definitions/DenylistCustomAlertRule" + } + } + } + }, + "CustomAlertRule": { + "type": "object", + "description": "A custom alert rule.", + "properties": { + "displayName": { + "type": "string", + "readOnly": true, + "description": "The display name of the custom alert." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the custom alert." + }, + "isEnabled": { + "type": "boolean", + "description": "Status of the custom alert." + }, + "ruleType": { + "type": "string", + "description": "The type of the custom alert rule." + } + }, + "required": [ + "isEnabled", + "ruleType" + ] + }, + "ListCustomAlertRule": { + "type": "object", + "description": "A List custom alert rule.", + "allOf": [ + { + "$ref": "#/definitions/CustomAlertRule" + } + ], + "properties": { + "valueType": { + "type": "string", + "description": "The value type of the items in the list.", + "enum": [ + "IpCidr", + "String" + ], + "readOnly": true, + "x-ms-enum": { + "name": "valueType", + "modelAsString": true, + "values": [ + { + "value": "IpCidr", + "description": "An IP range in CIDR format (e.g. '192.168.0.1/8')." + }, + { + "value": "String", + "description": "Any string value." + } + ] + } + } + } + }, + "AllowlistCustomAlertRule": { + "type": "object", + "description": "A custom alert rule that checks if a value (depends on the custom alert type) is allowed.", + "allOf": [ + { + "$ref": "#/definitions/ListCustomAlertRule" + } + ], + "properties": { + "allowlistValues": { + "type": "array", + "description": "The values to allow. The format of the values depends on the rule type.", + "items": { + "type": "string" + } + }, + "ruleType": { + "type": "string", + "description": "The type of the custom alert rule.", + "enum": [ + "ConnectionToIpNotAllowed", + "LocalUserNotAllowed", + "ProcessNotAllowed" + ], + "x-ms-enum": { + "name": "AllowListRuleType", + "modelAsString": true, + "values": [ + { + "value": "ConnectionToIpNotAllowed", + "description": "Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation." + }, + { + "value": "LocalUserNotAllowed", + "description": "Login by a local user that isn't allowed. Allow list consists of login names to allow." + }, + { + "value": "ProcessNotAllowed", + "description": "Execution of a process that isn't allowed. Allow list consists of process names to allow." + } + ] + } + } + }, + "required": [ + "allowlistValues" + ] + }, + "DenylistCustomAlertRule": { + "type": "object", + "description": "A custom alert rule that checks if a value (depends on the custom alert type) is denied.", + "allOf": [ + { + "$ref": "#/definitions/ListCustomAlertRule" + } + ], + "properties": { + "denylistValues": { + "type": "array", + "description": "The values to deny. The format of the values depends on the rule type.", + "items": { + "type": "string" + } + } + }, + "required": [ + "denylistValues" + ] + }, + "ThresholdCustomAlertRule": { + "type": "object", + "description": "A custom alert rule that checks if a value (depends on the custom alert type) is within the given range.", + "allOf": [ + { + "$ref": "#/definitions/CustomAlertRule" + } + ], + "properties": { + "minThreshold": { + "type": "integer", + "description": "The minimum threshold." + }, + "maxThreshold": { + "type": "integer", + "description": "The maximum threshold." + } + }, + "required": [ + "minThreshold", + "maxThreshold" + ] + }, + "TimeWindowCustomAlertRule": { + "type": "object", + "description": "A custom alert rule that checks if the number of activities (depends on the custom alert type) in a time window is within the given range.", + "allOf": [ + { + "$ref": "#/definitions/ThresholdCustomAlertRule" + } + ], + "properties": { + "timeWindowSize": { + "type": "string", + "description": "The time window size in iso8601 format.", + "format": "duration" + }, + "ruleType": { + "type": "string", + "description": "The type of the custom alert rule.", + "enum": [ + "ActiveConnectionsNotInAllowedRange", + "AmqpC2DMessagesNotInAllowedRange", + "MqttC2DMessagesNotInAllowedRange", + "HttpC2DMessagesNotInAllowedRange", + "AmqpC2DRejectedMessagesNotInAllowedRange", + "MqttC2DRejectedMessagesNotInAllowedRange", + "HttpC2DRejectedMessagesNotInAllowedRange", + "AmqpD2CMessagesNotInAllowedRange", + "MqttD2CMessagesNotInAllowedRange", + "HttpD2CMessagesNotInAllowedRange", + "DirectMethodInvokesNotInAllowedRange", + "FailedLocalLoginsNotInAllowedRange", + "FileUploadsNotInAllowedRange", + "QueuePurgesNotInAllowedRange", + "TwinUpdatesNotInAllowedRange", + "UnauthorizedOperationsNotInAllowedRange" + ], + "x-ms-enum": { + "name": "ThresholdRuleType", + "modelAsString": true, + "values": [ + { + "value": "ActiveConnectionsNotInAllowedRange", + "description": "Number of active connections is not in allowed range." + }, + { + "value": "AmqpC2DMessagesNotInAllowedRange", + "description": "Number of cloud to device messages (AMQP protocol) is not in allowed range." + }, + { + "value": "MqttC2DMessagesNotInAllowedRange", + "description": "Number of cloud to device messages (MQTT protocol) is not in allowed range." + }, + { + "value": "HttpC2DMessagesNotInAllowedRange", + "description": "Number of cloud to device messages (HTTP protocol) is not in allowed range." + }, + { + "value": "AmqpC2DRejectedMessagesNotInAllowedRange", + "description": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range." + }, + { + "value": "MqttC2DRejectedMessagesNotInAllowedRange", + "description": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range." + }, + { + "value": "HttpC2DRejectedMessagesNotInAllowedRange", + "description": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range." + }, + { + "value": "AmqpD2CMessagesNotInAllowedRange", + "description": "Number of device to cloud messages (AMQP protocol) is not in allowed range." + }, + { + "value": "MqttD2CMessagesNotInAllowedRange", + "description": "Number of device to cloud messages (MQTT protocol) is not in allowed range." + }, + { + "value": "HttpD2CMessagesNotInAllowedRange", + "description": "Number of device to cloud messages (HTTP protocol) is not in allowed range." + }, + { + "value": "DirectMethodInvokesNotInAllowedRange", + "description": "Number of direct method invokes is not in allowed range." + }, + { + "value": "FailedLocalLoginsNotInAllowedRange", + "description": "Number of failed local logins is not in allowed range." + }, + { + "value": "FileUploadsNotInAllowedRange", + "description": "Number of file uploads is not in allowed range." + }, + { + "value": "QueuePurgesNotInAllowedRange", + "description": "Number of device queue purges is not in allowed range." + }, + { + "value": "TwinUpdatesNotInAllowedRange", + "description": "Number of twin updates is not in allowed range." + }, + { + "value": "UnauthorizedOperationsNotInAllowedRange", + "description": "Number of unauthorized operations is not in allowed range." + } + ] + } + } + }, + "required": [ + "timeWindowSize" + ] + } + }, + "parameters": { + "DeviceSecurityGroupName": { + "name": "deviceSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the device security group. Note that the name of the device security group is case insensitive.", + "x-ms-parameter-location": "method" + }, + "DeviceSecurityGroup": { + "name": "deviceSecurityGroup", + "in": "body", + "required": true, + "description": "Security group object.", + "schema": { + "$ref": "#/definitions/DeviceSecurityGroup" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json new file mode 100644 index 000000000000..6c1a5793cf32 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", + "deviceSecurityGroupName": "samplesecuritygroup" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json new file mode 100644 index 000000000000..4c39347600f5 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", + "deviceSecurityGroupName": "samplesecuritygroup" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", + "name": "samplesecuritygroup", + "type": "Microsoft.Security/deviceSecurityGroups", + "properties": { + "thresholdRules": [], + "timeWindowRules": [ + { + "ruleType": "ActiveConnectionsNotInAllowedRange", + "displayName": "Number of active connections is not in allowed range", + "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "DirectMethodInvokesNotInAllowedRange", + "displayName": "Number of direct method invokes is not in allowed range", + "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FailedLocalLoginsNotInAllowedRange", + "displayName": "Number of failed local logins is not in allowed range", + "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FileUploadsNotInAllowedRange", + "displayName": "Number of file uploads is not in allowed range", + "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "QueuePurgesNotInAllowedRange", + "displayName": "Number of device queue purges is not in allowed range", + "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "TwinUpdatesNotInAllowedRange", + "displayName": "Number of twin updates is not in allowed range", + "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "UnauthorizedOperationsNotInAllowedRange", + "displayName": "Number of unauthorized operations is not in allowed range", + "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + } + ], + "allowlistRules": [ + { + "ruleType": "ConnectionToIpNotAllowed", + "displayName": "Outbound connection to an ip that isn't allowed", + "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", + "isEnabled": false, + "valueType": "IpCidr", + "allowlistValues": [] + }, + { + "ruleType": "LocalUserNotAllowed", + "displayName": "Login by a local user that isn't allowed", + "description": "Get an alert when a local user that isn't allowed logins to the device", + "isEnabled": false, + "valueType": "String", + "allowlistValues": [] + }, + { + "ruleType": "ProcessNotAllowed", + "displayName": "Execution of a process that isn't allowed", + "description": "Get an alert when a process that isn't allowed is executed", + "isEnabled": false, + "valueType": "String", + "allowlistValues": [] + } + ], + "denylistRules": [] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json new file mode 100644 index 000000000000..e22d46969358 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json @@ -0,0 +1,195 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", + "name": "samplesecuritygroup", + "type": "Microsoft.Security/deviceSecurityGroups", + "properties": { + "thresholdRules": [], + "timeWindowRules": [ + { + "ruleType": "ActiveConnectionsNotInAllowedRange", + "displayName": "Number of active connections is not in allowed range", + "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "DirectMethodInvokesNotInAllowedRange", + "displayName": "Number of direct method invokes is not in allowed range", + "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FailedLocalLoginsNotInAllowedRange", + "displayName": "Number of failed local logins is not in allowed range", + "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FileUploadsNotInAllowedRange", + "displayName": "Number of file uploads is not in allowed range", + "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "QueuePurgesNotInAllowedRange", + "displayName": "Number of device queue purges is not in allowed range", + "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "TwinUpdatesNotInAllowedRange", + "displayName": "Number of twin updates is not in allowed range", + "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "UnauthorizedOperationsNotInAllowedRange", + "displayName": "Number of unauthorized operations is not in allowed range", + "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + } + ], + "allowlistRules": [ + { + "ruleType": "ConnectionToIpNotAllowed", + "displayName": "Outbound connection to an ip that isn't allowed", + "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", + "isEnabled": false, + "valueType": "IpCidr", + "allowlistValues": [] + }, + { + "ruleType": "LocalUserNotAllowed", + "displayName": "Login by a local user that isn't allowed", + "description": "Get an alert when a local user that isn't allowed logins to the device", + "isEnabled": false, + "valueType": "String", + "allowlistValues": [] + }, + { + "ruleType": "ProcessNotAllowed", + "displayName": "Execution of a process that isn't allowed", + "description": "Get an alert when a process that isn't allowed is executed", + "isEnabled": false, + "valueType": "String", + "allowlistValues": [] + } + ], + "denylistRules": [] + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json new file mode 100644 index 000000000000..fee633534ef2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json @@ -0,0 +1,387 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", + "deviceSecurityGroupName": "samplesecuritygroup", + "deviceSecurityGroup": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", + "name": "samplesecuritygroup", + "type": "Microsoft.Security/deviceSecurityGroups", + "properties": { + "timeWindowRules": [ + { + "ruleType": "ActiveConnectionsNotInAllowedRange", + "displayName": "Number of active connections is not in allowed range", + "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", + "isEnabled": true, + "minThreshold": 0, + "maxThreshold": 30, + "timeWindowSize": "PT05M" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", + "name": "samplesecuritygroup", + "type": "Microsoft.Security/deviceSecurityGroups", + "properties": { + "thresholdRules": [], + "timeWindowRules": [ + { + "ruleType": "ActiveConnectionsNotInAllowedRange", + "displayName": "Number of active connections is not in allowed range", + "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", + "isEnabled": true, + "minThreshold": 0, + "maxThreshold": 30, + "timeWindowSize": "PT05M" + }, + { + "ruleType": "AmqpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "DirectMethodInvokesNotInAllowedRange", + "displayName": "Number of direct method invokes is not in allowed range", + "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FailedLocalLoginsNotInAllowedRange", + "displayName": "Number of failed local logins is not in allowed range", + "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FileUploadsNotInAllowedRange", + "displayName": "Number of file uploads is not in allowed range", + "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "QueuePurgesNotInAllowedRange", + "displayName": "Number of device queue purges is not in allowed range", + "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "TwinUpdatesNotInAllowedRange", + "displayName": "Number of twin updates is not in allowed range", + "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "UnauthorizedOperationsNotInAllowedRange", + "displayName": "Number of unauthorized operations is not in allowed range", + "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + } + ], + "allowlistRules": [ + { + "ruleType": "ConnectionToIpNotAllowed", + "displayName": "Outbound connection to an ip that isn't allowed", + "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", + "isEnabled": false, + "allowlistValues": [] + }, + { + "ruleType": "LocalUserNotAllowed", + "displayName": "Login by a local user that isn't allowed", + "description": "Get an alert when a local user that isn't allowed logins to the device", + "isEnabled": false, + "allowlistValues": [] + }, + { + "ruleType": "ProcessNotAllowed", + "displayName": "Execution of a process that isn't allowed", + "description": "Get an alert when a process that isn't allowed is executed", + "isEnabled": false, + "allowlistValues": [] + } + ], + "denylistRules": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", + "name": "samplesecuritygroup", + "type": "Microsoft.Security/deviceSecurityGroups", + "properties": { + "thresholdRules": [], + "timeWindowRules": [ + { + "ruleType": "ActiveConnectionsNotInAllowedRange", + "displayName": "Number of active connections is not in allowed range", + "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", + "isEnabled": true, + "minThreshold": 0, + "maxThreshold": 30, + "timeWindowSize": "PT05M" + }, + { + "ruleType": "AmqpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DMessagesNotInAllowedRange", + "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", + "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "AmqpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "MqttD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "HttpD2CMessagesNotInAllowedRange", + "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", + "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "DirectMethodInvokesNotInAllowedRange", + "displayName": "Number of direct method invokes is not in allowed range", + "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FailedLocalLoginsNotInAllowedRange", + "displayName": "Number of failed local logins is not in allowed range", + "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "FileUploadsNotInAllowedRange", + "displayName": "Number of file uploads is not in allowed range", + "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "QueuePurgesNotInAllowedRange", + "displayName": "Number of device queue purges is not in allowed range", + "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "TwinUpdatesNotInAllowedRange", + "displayName": "Number of twin updates is not in allowed range", + "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + }, + { + "ruleType": "UnauthorizedOperationsNotInAllowedRange", + "displayName": "Number of unauthorized operations is not in allowed range", + "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", + "isEnabled": false, + "minThreshold": 0, + "maxThreshold": 0, + "timeWindowSize": "PT15M" + } + ], + "allowlistRules": [ + { + "ruleType": "ConnectionToIpNotAllowed", + "displayName": "Outbound connection to an ip that isn't allowed", + "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", + "isEnabled": false, + "allowlistValues": [] + }, + { + "ruleType": "LocalUserNotAllowed", + "displayName": "Login by a local user that isn't allowed", + "description": "Get an alert when a local user that isn't allowed logins to the device", + "isEnabled": false, + "allowlistValues": [] + }, + { + "ruleType": "ProcessNotAllowed", + "displayName": "Execution of a process that isn't allowed", + "description": "Get an alert when a process that isn't allowed is executed", + "isEnabled": false, + "allowlistValues": [] + } + ], + "denylistRules": [] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json index c022e8f1680e..70b99f07679a 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json @@ -173,7 +173,7 @@ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735", "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" ], - "recommendationsConfiguration": [ + "recommendationsConfiguration": [ { "recommendationType": "IoT_ACRAuthentication", "name": "Service Principal Not Used with ACR", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json index d9caa82fd4ad..a1f086805d86 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json @@ -16,8 +16,8 @@ "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", - "export": [], - "disabledDataSources": [], + "export": [ ], + "disabledDataSources": [ ], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" @@ -121,14 +121,14 @@ "name": "sec-solution", "location": "East Us", "type": "Microsoft.Security/IoTSecuritySolutions", - "tags": {}, + "tags": { }, "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", "export": [ "RawEvents" ], - "disabledDataSources": [], + "disabledDataSources": [ ], "displayName": "Second Solution", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/IotHubSecond" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json index 47b84ec5cbd3..c8e79dce066e 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json @@ -20,7 +20,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [], + "disabledDataSources": [ ], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json index 1e6565f1e1f3..8c5ae9396b5f 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json @@ -21,7 +21,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [], + "disabledDataSources": [ ], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json index 1f1ab218ec5e..91a826fcd064 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json @@ -17,8 +17,8 @@ "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", - "export": [], - "disabledDataSources": [], + "export": [ ], + "disabledDataSources": [ ], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json index ba1c8a30c391..1124a2cd860f 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json @@ -44,7 +44,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [], + "disabledDataSources": [ ], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json index 099649b79f64..aa75fced7adf 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json @@ -56,17 +56,17 @@ { "alertDisplayName": "Custom Alert - number of device to cloud messages in AMQP protocol is not in the allowed range", "reportedSeverity": "Low", - "devicesCount": 200 + "alertsCount": 200 }, { "alertDisplayName": "Custom Alert - execution of a process that is not allowed", "reportedSeverity": "Medium", - "devicesCount": 170 + "alertsCount": 170 }, { "alertDisplayName": "Successful Bruteforce", "reportedSeverity": "Low", - "devicesCount": 150 + "alertsCount": 150 } ], "mostPrevalentDeviceRecommendations": [ diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json index a75f7f1ee3a4..2c3040c60c52 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json @@ -37,15 +37,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get Security Solution Analytics": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "IoT Security Solution Analytics" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalytics_GetAll", + "description": "Use this method to get IoT security Analytics metrics in an array.", + "operationId": "IotSecuritySolutionAnalytics_List", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -79,15 +79,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get Security Solution Analytics": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "IoT Security Solution Analytics" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalytics_GetDefault", + "description": "Use this method to get IoT Security Analytics metrics.", + "operationId": "IotSecuritySolutionAnalytics_Get", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -121,15 +121,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get the aggregated alert list of yours IoT Security solution": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "Aggregated Alert" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalyticsAggregatedAlerts_List", + "description": "Use this method to get the aggregated alert list of yours IoT Security solution.", + "operationId": "IotSecuritySolutionsAnalyticsAggregatedAlert_List", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -146,7 +146,7 @@ { "name": "$top", "in": "query", - "description": "The number of results to retrieve.", + "description": "Number of results to retrieve.", "required": false, "type": "integer" } @@ -173,15 +173,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get the aggregated security analytics alert of yours IoT Security solution. This aggregation is performed by alert name": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "Aggregated Alert" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalyticsAggregatedAlert_Get", + "description": "Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name.", + "operationId": "IotSecuritySolutionsAnalyticsAggregatedAlert_Get", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -218,15 +218,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}/dismiss": { "post": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Dismiss an aggregated IoT Security Solution Alert": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "Aggregated Alert" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalyticsAggregatedAlert_Dismiss", + "description": "Use this method to dismiss an aggregated IoT Security Solution Alert.", + "operationId": "IotSecuritySolutionsAnalyticsAggregatedAlert_Dismiss", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -246,7 +246,7 @@ ], "responses": { "200": { - "description": "Dismissed" + "description": "This aggregate alert is permanently dismissed." }, "default": { "description": "Error response describing why the operation failed.", @@ -260,15 +260,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations/{aggregatedRecommendationName}": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get the aggregated security analytics recommendation of yours IoT Security solution": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "Aggregated Recommendation" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalyticsRecommendation_Get", + "description": "Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name.", + "operationId": "IotSecuritySolutionsAnalyticsRecommendation_Get", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -305,15 +305,15 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations": { "get": { "x-ms-examples": { - "Get Security Solutions Analytics": { + "Get the list of aggregated security analytics recommendations of yours IoT Security solution": { "$ref": "./examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json" } }, "tags": [ - "IoT Security Solutions Analytics" + "Aggregated Recommendation" ], - "description": "Security Analytics of a security solution", - "operationId": "IoTSecuritySolutionsAnalyticsRecommendations_List", + "description": "Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution.", + "operationId": "IotSecuritySolutionsAnalyticsRecommendation_List", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -330,7 +330,7 @@ { "name": "$top", "in": "query", - "description": "The number of results to retrieve.", + "description": "Number of results to retrieve.", "required": false, "type": "integer" } @@ -358,25 +358,25 @@ "definitions": { "IoTSeverityMetrics": { "type": "object", - "description": "Severity metrics", + "description": "IoT Security solution analytics severity metrics.", "properties": { "high": { "type": "integer", - "description": "count of high severity items" + "description": "Count of high severity alerts/recommendations." }, "medium": { "type": "integer", - "description": "count of medium severity items" + "description": "Count of medium severity alerts/recommendations." }, "low": { "type": "integer", - "description": "count of low severity items" + "description": "Count of low severity alerts/recommendations." } } }, "IoTSecuritySolutionAnalyticsModel": { "type": "object", - "description": "Security Analytics of a security solution", + "description": "Security analytics of your IoT Security solution", "properties": { "properties": { "x-ms-client-flatten": true, @@ -391,21 +391,21 @@ ] }, "IoTSecuritySolutionAnalyticsModelProperties": { - "description": "Security Analytics of a security solution properties", + "description": "Security analytics properties of your IoT Security solution", "properties": { "metrics": { "type": "object", "$ref": "#/definitions/IoTSeverityMetrics", - "description": "Security Analytics of a security solution", + "description": "Security analytics of your IoT Security solution.", "readOnly": true }, "unhealthyDeviceCount": { "type": "integer", "readOnly": true, - "description": "number of unhealthy devices" + "description": "Number of unhealthy devices within your IoT Security solution." }, "devicesMetrics": { - "description": "The list of devices metrics by the aggregated date.", + "description": "List of device metrics by the aggregation date.", "type": "array", "readOnly": true, "items": { @@ -413,42 +413,42 @@ "date": { "type": "string", "format": "date-time", - "description": "the date of the metrics" + "description": "Aggregation of IoT Security solution device alert metrics by date." }, "devicesMetrics": { "type": "object", "$ref": "#/definitions/IoTSeverityMetrics", - "description": "devices alerts count by severity." + "description": "Device alert count by severity." } } } }, "topAlertedDevices": { - "description": "The list of top 3 devices with the most attacked.", + "description": "List of the 3 devices with the most alerts.", "type": "object", "$ref": "#/definitions/IoTSecurityAlertedDevicesList" }, "mostPrevalentDeviceAlerts": { - "description": "The list of most prevalent 3 alerts.", + "description": "List of the 3 most prevalent device alerts.", "type": "object", "$ref": "#/definitions/IoTSecurityDeviceAlertsList" }, "mostPrevalentDeviceRecommendations": { - "description": "The list of most prevalent 3 recommendations.", + "description": "List of the 3 most prevalent device recommendations.", "type": "object", "$ref": "#/definitions/IoTSecurityDeviceRecommendationsList" } } }, "IoTSecuritySolutionAnalyticsModelList": { - "description": "List of Security Analytics of a security solution", + "description": "List of Security analytics of your IoT Security solution", "required": [ "value" ], "properties": { "value": { "type": "array", - "description": "List of Security Analytics of a security solution", + "description": "List of Security analytics of your IoT Security solution", "items": { "$ref": "#/definitions/IoTSecuritySolutionAnalyticsModel" } @@ -456,19 +456,19 @@ "nextLink": { "readOnly": true, "type": "string", - "description": "The URI to fetch the next page." + "description": "When there is too much alert data for one page, use this URI to fetch the next page." } } }, "IoTSecurityAggregatedAlertList": { - "description": "List of IoT aggregated security alerts", + "description": "List of IoT Security solution aggregated alert data.", "required": [ "value" ], "properties": { "value": { "type": "array", - "description": "List of aggregated alerts data", + "description": "List of aggregated alerts data.", "items": { "$ref": "#/definitions/IoTSecurityAggregatedAlert" } @@ -476,19 +476,19 @@ "nextLink": { "readOnly": true, "type": "string", - "description": "The URI to fetch the next page." + "description": "When there is too much alert data for one page, use this URI to fetch the next page." } } }, "IoTSecurityAggregatedRecommendationList": { - "description": "List of IoT aggregated security recommendations", + "description": "List of IoT Security solution aggregated recommendations.", "required": [ "value" ], "properties": { "value": { "type": "array", - "description": "List of aggregated alerts data", + "description": "List of aggregated recommendations data.", "items": { "$ref": "#/definitions/IoTSecurityAggregatedRecommendation" } @@ -496,58 +496,30 @@ "nextLink": { "readOnly": true, "type": "string", - "description": "The URI to fetch the next page." + "description": "When there is too much alert data for one page, use this URI to fetch the next page." } } }, "IoTSecurityAlertedDevicesList": { - "description": "List of devices with the count of raised alerts", - "required": [ - "value" - ], - "properties": { - "value": { + "description": "List of devices with open alerts including the count of alerts per device.", "type": "array", - "description": "List of aggregated alerts data", "items": { "$ref": "#/definitions/IoTSecurityAlertedDevice" } - } - } - }, + }, + "IoTSecurityDeviceAlertsList": { "description": "List of alerts with the count of raised alerts", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "array", - "description": "List of top alerts data", - "items": { - "$ref": "#/definitions/IoTSecurityDeviceAlert" - } - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URI to fetch the next page." - } + "type": "array", + "items": { + "$ref": "#/definitions/IoTSecurityDeviceAlert" } }, "IoTSecurityDeviceRecommendationsList": { - "description": "List of recommendations with the count of devices", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "array", - "description": "List of aggregated recommendation data", - "items": { - "$ref": "#/definitions/IoTSecurityDeviceRecommendation" - } - } + "description": "List of aggregated recommendation data, per recommendation type, per device.", + "type": "array", + "items": { + "$ref": "#/definitions/IoTSecurityDeviceRecommendation" } }, "IoTSecurityAggregatedAlert": { @@ -556,7 +528,7 @@ "properties": { "properties": { "x-ms-client-flatten": true, - "description": "Security Solution Aggregated Alert data", + "description": "IoT Security solution aggregated alert details.", "$ref": "#/definitions/IoTSecurityAggregatedAlertProperties" } }, @@ -571,28 +543,28 @@ }, "IoTSecurityAggregatedAlertProperties": { "type": "object", - "description": "Security Solution Aggregated Alert data", + "description": "IoT Security solution aggregated alert details.", "properties": { "alertType": { "readOnly": true, "type": "string", - "description": "Name of the alert type" + "description": "Name of the alert type." }, "alertDisplayName": { "readOnly": true, "type": "string", - "description": "Display name of the alert type" + "description": "Display name of the alert type." }, "aggregatedDateUtc": { "readOnly": true, "type": "string", "format": "date", - "description": "The date the incidents were detected by the vendor" + "description": "Date of detection." }, "vendorName": { "readOnly": true, "type": "string", - "description": "Name of the vendor that discovered the incident" + "description": "Name of the organization that raised the alert." }, "reportedSeverity": { "readOnly": true, @@ -621,48 +593,48 @@ } ] }, - "description": "Estimated severity of this alert" + "description": "Assessed alert severity." }, "remediationSteps": { "readOnly": true, "type": "string", - "description": "Recommended steps for remediation" + "description": "Recommended steps for remediation." }, "description": { "readOnly": true, "type": "string", - "description": "Description of the incident and what it means" + "description": "Description of the suspected vulnerability and meaning." }, "count": { "readOnly": true, "type": "integer", - "description": "Occurrence number of the alert within the aggregated date" + "description": "Number of alerts occurrences within the aggregated time window." }, "effectedResourceType": { "readOnly": true, "type": "string", - "description": "Azure resource ID of the resource that got the alerts" + "description": "Azure resource ID of the resource that received the alerts." }, "systemSource": { "readOnly": true, "type": "string", - "description": "The type of the alerted resource (Azure, Non-Azure)" + "description": "The type of the alerted resource (Azure, Non-Azure)." }, "actionTaken": { "readOnly": true, "type": "string", - "description": "The action that was taken as a response to the alert (Active, Blocked etc.)" + "description": "IoT Security solution alert response." }, "logAnalyticsQuery": { "readOnly": true, "type": "string", - "description": "query in log analytics to get the list of affected devices/alerts" + "description": "Log analytics query for getting the list of affected devices/alerts." } } }, "IoTSecurityAggregatedRecommendation": { "type": "object", - "description": "Security Solution Recommendation Information", + "description": "IoT Security solution recommendation information.", "properties": { "properties": { "x-ms-client-flatten": true, @@ -681,11 +653,11 @@ }, "IoTSecurityAggregatedRecommendationProperties": { "type": "object", - "description": "Security Solution Recommendation Information", + "description": "IoT Security solution aggregated recommendation information", "properties": { "recommendationName": { "type": "string", - "description": "Name of the recommendation" + "description": "Name of the recommendation." }, "recommendationDisplayName": { "readOnly": true, @@ -695,17 +667,17 @@ "description": { "readOnly": true, "type": "string", - "description": "Description of the incident and what it means" + "description": "Description of the suspected vulnerability and meaning." }, "recommendationTypeId": { - "description": "The recommendation-type GUID.", + "description": "Recommendation-type GUID.", "type": "string", "readOnly": true }, "detectedBy": { "readOnly": true, "type": "string", - "description": "Name of the vendor that discovered the issue" + "description": "Name of the organization that made the recommendation." }, "remediationSteps": { "readOnly": true, @@ -739,44 +711,44 @@ } ] }, - "description": "Estimated severity of this recommendation" + "description": "Assessed recommendation severity." }, "healthyDevices": { "readOnly": true, "type": "integer", - "description": "the number of the healthy devices within the solution" + "description": "Number of healthy devices within the IoT Security solution." }, "unhealthyDeviceCount": { "readOnly": true, "type": "integer", - "description": "the number of the unhealthy devices within the solution" + "description": "Number of unhealthy devices within the IoT Security solution." }, "logAnalyticsQuery": { "readOnly": true, "type": "string", - "description": "query in log analytics to get the list of affected devices/alerts" + "description": "Log analytics query for getting the list of affected devices/alerts." } } }, "IoTSecurityAlertedDevice": { "type": "object", - "description": "Statistic information about the number of alerts per device during the last period", + "description": "Statistical information about the number of alerts per device during last set number of days.", "properties": { "deviceId": { "readOnly": true, "type": "string", - "description": "Name of the alert type" + "description": "Device identifier." }, "alertsCount": { "readOnly": true, "type": "integer", - "description": "the number of alerts raised for this device" + "description": "Number of alerts raised for this device." } } }, "IoTSecurityDeviceAlert": { "type": "object", - "description": "Statistic information about the number of alerts per alert type during the last period", + "description": "Statistical information about the number of alerts per alert type during last set number of days", "properties": { "alertDisplayName": { "readOnly": true, @@ -810,23 +782,23 @@ } ] }, - "description": "Estimated severity of this alert" + "description": "Assessed Alert severity." }, "alertsCount": { "readOnly": true, "type": "integer", - "description": "the number of alerts raised for this alert type" + "description": "Number of alerts raised for this alert type." } } }, "IoTSecurityDeviceRecommendation": { "type": "object", - "description": "Statistic information about the number of recommendations per recommendation type", + "description": "Statistical information about the number of recommendations per device, per recommendation type.", "properties": { "recommendationDisplayName": { "readOnly": true, "type": "string", - "description": "Display name of the recommendation" + "description": "Display name of the recommendation." }, "reportedSeverity": { "readOnly": true, @@ -855,12 +827,12 @@ } ] }, - "description": "Estimated severity of this recommendation" + "description": "Assessed recommendation severity." }, "devicesCount": { "readOnly": true, "type": "integer", - "description": "the number of device with this recommendation" + "description": "Number of devices with this recommendation." } } }, @@ -882,7 +854,7 @@ "name": "solutionName", "in": "path", "required": true, - "description": "The solution manager name", + "description": "The name of the IoT Security solution.", "type": "string", "x-ms-parameter-location": "method" }, @@ -890,7 +862,7 @@ "name": "aggregatedAlertName", "in": "path", "required": true, - "description": "Identifier of the aggregated alert", + "description": "Identifier of the aggregated alert.", "type": "string", "x-ms-parameter-location": "method" }, @@ -898,7 +870,7 @@ "name": "aggregatedRecommendationName", "in": "path", "required": true, - "description": "Identifier of the aggregated recommendation", + "description": "Name of the recommendation aggregated for this query.", "type": "string", "x-ms-parameter-location": "method" } diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json index b900a72474fc..3d211d1cb3ba 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json @@ -37,18 +37,18 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.Security/iotSecuritySolutions": { "get": { "x-ms-examples": { - "Get Security Solutions list": { + "List IoT Security solutions by subscription": { "$ref": "./examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json" }, - "Get Security Solutions list By IotHub": { + "List IoT Security solutions by IoT Hub": { "$ref": "./examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "List of security solutions", - "operationId": "IoTSecuritySolutions_List", + "description": "Use this method to get the list of IoT Security solutions by subscription.", + "operationId": "IotSecuritySolution_ListBySubscription", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -82,18 +82,18 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions": { "get": { "x-ms-examples": { - "Get Security Solutions list": { + "List IoT Security solutions by resource group": { "$ref": "./examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json" }, - "Get Security Solutions list By IotHub": { + "List IoT Security solutions by resource group and IoT Hub": { "$ref": "./examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "List of security solutions", - "operationId": "IoTSecuritySolutionsResourceGroup_List", + "description": "Use this method to get the list IoT Security solutions organized by resource group.", + "operationId": "IotSecuritySolution_ListByResourceGroup", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -130,14 +130,14 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}": { "get": { "x-ms-examples": { - "Get an iot security solution": { + "Get a IoT security solution": { "$ref": "./examples/IoTSecuritySolutions/GetIoTSecuritySolution.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "Details of a specific iot security solution", + "description": "User this method to get details of a specific IoT Security solution based on solution name", "operationId": "IotSecuritySolution_Get", "parameters": [ { @@ -170,15 +170,15 @@ }, "put": { "x-ms-examples": { - "Create an iot security solution": { + "Create or update a IoT security solution": { "$ref": "./examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "Create new solution manager", - "operationId": "IotSecuritySolution_Create", + "description": "Use this method to create or update yours IoT Security solution", + "operationId": "IotSecuritySolution_CreateOrUpdate", "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -219,14 +219,14 @@ }, "patch": { "x-ms-examples": { - "Update an iot security solution": { + "Use this method to update existing IoT Security solution": { "$ref": "./examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "update existing Security Solution tags or user defined resources. To update other fields use the CreateOrUpdate method", + "description": "Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method.", "operationId": "IotSecuritySolution_Update", "parameters": [ { @@ -262,14 +262,14 @@ }, "delete": { "x-ms-examples": { - "Create an iot security solution": { + "Delete an IoT security solution": { "$ref": "./examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json" } }, "tags": [ - "IoT Security Solutions" + "IoT Security Solution" ], - "description": "Create new solution manager", + "description": "Use this method to delete yours IoT Security solution", "operationId": "IotSecuritySolution_Delete", "parameters": [ { @@ -287,10 +287,10 @@ ], "responses": { "200": { - "description": "Security Solution deleted" + "description": "Security Solution deleted." }, "204": { - "description": "Security Solution was not exists" + "description": "Security Solution does not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -316,14 +316,14 @@ "description": "A container holding only the Tags for a resource, allowing the user to update the tags." }, "IoTSecuritySolutionsList": { - "description": "List of iot solutions", + "description": "List of IoT Security solutions.", "required": [ "value" ], "properties": { "value": { "type": "array", - "description": "List of security solutions", + "description": "List of IoT Security solutions", "items": { "$ref": "#/definitions/IoTSecuritySolutionModel" } @@ -337,7 +337,7 @@ }, "IoTSecuritySolutionModel": { "type": "object", - "description": "Security Solution", + "description": "IoT Security solution configuration and resource information.", "properties": { "location": { "type": "string", @@ -358,6 +358,18 @@ } ] }, + "UpdateIoTSecuritySolutionProperties": { + "type": "object", + "description": "Update Security Solution setting data", + "properties": { + "userDefinedResources": { + "$ref": "#/definitions/UserDefinedResourcesProperties" + }, + "recommendationsConfiguration": { + "$ref": "#/definitions/RecommendationConfigurationList" + } + } + }, "IoTSecuritySolutionProperties": { "type": "object", "description": "Security Solution setting data", @@ -377,7 +389,7 @@ "Disabled" ], "default": "Enabled", - "description": "Security solution status", + "description": "Status of the IoT Security solution.", "x-ms-enum": { "name": "SecuritySolutionStatus", "modelAsString": true @@ -401,7 +413,7 @@ ] } }, - "description": "List of additional export to workspace data options" + "description": "List of additional options for exporting to workspace data." }, "disabledDataSources": { "type": "array", @@ -453,7 +465,7 @@ }, "UserDefinedResourcesProperties": { "type": "object", - "description": "Properties of the solution's user defined resources.", + "description": "Properties of the IoT Security solution's user defined resources.", "properties": { "query": { "type": "string", @@ -477,11 +489,11 @@ }, "RecommendationConfigurationProperties": { "type": "object", - "description": "Recommendation configuration", + "description": "The type of IoT Security recommendation.", "properties": { "recommendationType": { "type": "string", - "description": "The recommendation type.", + "description": "The type of IoT Security recommendation.", "enum": [ "IoT_ACRAuthentication", "IoT_AgentSendsUnutilizedMessages", @@ -582,7 +594,7 @@ "Enabled" ], "default": "Enabled", - "description": "Recommendation status. The recommendation is not generated when the status is disabled", + "description": "Recommendation status. When the recommendation status is disabled recommendations are not generated.", "x-ms-enum": { "name": "RecommendationConfigStatus", "modelAsString": true @@ -596,7 +608,7 @@ }, "RecommendationConfigurationList": { "type": "array", - "description": "List of recommendation configuration", + "description": "List of the configuration status for each recommendation type.", "items": { "$ref": "#/definitions/RecommendationConfigurationProperties" } @@ -604,11 +616,10 @@ "UpdateIotSecuritySolutionData": { "type": "object", "properties": { - "userDefinedResources": { - "$ref": "#/definitions/UserDefinedResourcesProperties" - }, - "recommendationsConfiguration": { - "$ref": "#/definitions/RecommendationConfigurationList" + "properties": { + "x-ms-client-flatten": true, + "description": "Security Solution data", + "$ref": "#/definitions/UpdateIoTSecuritySolutionProperties" } }, "allOf": [ @@ -623,7 +634,7 @@ "name": "solutionName", "in": "path", "required": true, - "description": "The solution manager name", + "description": "The name of the IoT Security solution.", "type": "string", "x-ms-parameter-location": "method" }, @@ -641,7 +652,7 @@ "name": "$filter", "in": "query", "required": false, - "description": "filter the Security Solution with OData syntax. supporting filter by iotHubs", + "description": "Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs.", "type": "string", "x-ms-parameter-location": "method" }, diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 8b10436b7c67..18e530eae96d 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -22,19 +22,23 @@ To see additional help and options, run: ## Suppression -```yaml +``` yaml directive: - suppress: ValidFormats from: securityContacts.json where: $.definitions.SecurityContactProperties.properties.email.format reason: email format is allowed + - suppress: PageableOperation + from: iotSecuritySolutionAnalytics.json + where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels"].get' + reason: The list returns limited number of items ``` ### Basic Information These are the global settings for the Security API. -```yaml +``` yaml title: SecurityCenter description: API spec for Microsoft.Security (Azure Security Center) resource provider openapi-type: arm @@ -49,7 +53,7 @@ The following packages may be composed from multiple api-versions. These settings apply only when `--tag=package-composite-v1` is specified on the command line. -```yaml $(tag) == 'package-composite-v1' +``` yaml $(tag) == 'package-composite-v1' input-file: - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - Microsoft.Security/preview/2017-08-01-preview/pricings.json @@ -82,7 +86,7 @@ override-info: These settings apply only when `--tag=package-composite-v2` is specified on the command line. -```yaml $(tag) == 'package-composite-v2' +``` yaml $(tag) == 'package-composite-v2' input-file: - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - Microsoft.Security/stable/2018-06-01/pricings.json @@ -117,12 +121,13 @@ override-info: These settings apply only when `--tag=package-composite-v3` is specified on the command line. -```yaml $(tag) == 'package-composite-v3' +``` yaml $(tag) == 'package-composite-v3' input-file: - Microsoft.Security/stable/2017-08-01/complianceResults.json - Microsoft.Security/stable/2018-06-01/pricings.json - Microsoft.Security/stable/2019-01-01/alerts.json - Microsoft.Security/stable/2019-01-01/settings.json +- Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json - Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json @@ -152,7 +157,7 @@ override-info: These settings apply only when `--tag=package-2015-06-preview-only` is specified on the command line. -```yaml $(tag) == 'package-2015-06-preview-only' +``` yaml $(tag) == 'package-2015-06-preview-only' input-file: - Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - Microsoft.Security/preview/2015-06-01-preview/alerts.json @@ -175,7 +180,7 @@ override-info: These settings apply only when `--tag=package-2017-08-preview-only` is specified on the command line. -```yaml $(tag) == 'package-2017-08-preview-only' +``` yaml $(tag) == 'package-2017-08-preview-only' input-file: - Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json - Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json @@ -198,7 +203,7 @@ override-info: These settings apply only when `--tag=package-2019-01-preview-only` is specified on the command line. -```yaml $(tag) == 'package-2019-01-preview-only' +``` yaml $(tag) == 'package-2019-01-preview-only' input-file: - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json @@ -212,7 +217,7 @@ override-info: These settings apply only when `--tag=package-2017-08-only` is specified on the command line. -```yaml $(tag) == 'package-2017-08-only' +``` yaml $(tag) == 'package-2017-08-only' input-file: - Microsoft.Security/stable/2017-08-01/complianceResults.json @@ -225,7 +230,7 @@ override-info: These settings apply only when `--tag=package-2018-06-only` is specified on the command line. -```yaml $(tag) == 'package-2018-06-only' +``` yaml $(tag) == 'package-2018-06-only' input-file: - Microsoft.Security/stable/2018-06-01/pricings.json @@ -238,7 +243,7 @@ override-info: These settings apply only when `--tag=package-2019-01-only` is specified on the command line. -```yaml $(tag) == 'package-2019-01-only' +``` yaml $(tag) == 'package-2019-01-only' input-file: - Microsoft.Security/stable/2019-01-01/alerts.json - Microsoft.Security/stable/2019-01-01/settings.json @@ -252,7 +257,7 @@ override-info: These settings apply only when `--tag=package-2019-08-only` is specified on the command line. -```yaml $(tag) == 'package-2019-08-only' +``` yaml $(tag) == 'package-2019-08-only' input-file: - Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json @@ -271,7 +276,7 @@ override-info: 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-net - repo: azure-sdk-for-go @@ -304,7 +309,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.ruby.md](./readme.ruby.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -349,11 +354,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - From 729ced72378d25588d6eb3c4862f23ae90534158 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Mon, 9 Sep 2019 06:31:00 +0000 Subject: [PATCH 114/123] regenerated all-api-versions --- specification/security/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 18e530eae96d..2acf3895b01f 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -348,6 +348,7 @@ input-file: - $(this-folder)/Microsoft.Security/stable/2019-01-01/alerts.json - $(this-folder)/Microsoft.Security/stable/2017-08-01/complianceResults.json - $(this-folder)/Microsoft.Security/stable/2019-01-01/settings.json + - $(this-folder)/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json From db796b68521d21ac94124a1875906eee76e98d54 Mon Sep 17 00:00:00 2001 From: Phoenix He Date: Mon, 9 Sep 2019 14:44:19 +0800 Subject: [PATCH 115/123] Add ModelValidation to pipeline (#7152) --- azure-pipelines.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index a1ee6e6fef43..92fd803d6604 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -16,6 +16,7 @@ jobs: - template: .azure-pipelines/Syntax.yml - template: .azure-pipelines/Semantic.yml - template: .azure-pipelines/Avocado.yml +- template: .azure-pipelines/ModelValidation.yml - template: .azure-pipelines/BreakingChange.yml - template: .azure-pipelines/LintDiff.yml - template: .azure-pipelines/SwaggerToSDK.yml From c54f3677dc3c8ec02d9be8c03efea692a20ed15a Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 10 Sep 2019 09:29:14 +0800 Subject: [PATCH 116/123] adding tag 2019-06 to python (#7158) --- specification/resources/resource-manager/readme.md | 9 +++++++++ .../resources/resource-manager/readme.python.md | 12 ++++++++++++ 2 files changed, 21 insertions(+) diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index aa73db63b301..24140d72a4fd 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -325,6 +325,15 @@ input-file: - Microsoft.Resources/stable/2015-11-01/resources.json ``` +### Tag: package-subscriptions-2019-06 + +These settings apply only when `--tag=package-subscriptions-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-subscriptions-2019-06' +input-file: +- Microsoft.Resources/stable/2019-06-01/subscriptions.json +``` + ### Tag: package-subscriptions-2018-06 These settings apply only when `--tag=package-subscriptions-2018-06` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index 99f59b17746e..34d22a7cc70d 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -44,6 +44,7 @@ batch: - tag: package-resources-2017-05 - tag: package-resources-2016-09 - tag: package-resources-2016-02 + - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 ``` @@ -301,6 +302,17 @@ python: output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_02_01 ``` +### Tag: package-subscriptions-2019-06 and python + +These settings apply only when `--tag=package-subscriptions-2019-06 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-06' && $(python) +python: + namespace: azure.mgmt.resource.subscriptions.v2019_06_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_06_01 +``` + ### Tag: package-subscriptions-2018-06 and python These settings apply only when `--tag=package-subscriptions-2018-06 --python` is specified on the command line. From 7ebeb34fd3d1e9368c3e93356bd72cf7451eb392 Mon Sep 17 00:00:00 2001 From: mdo98 Date: Mon, 9 Sep 2019 19:22:56 -0700 Subject: [PATCH 117/123] [DataFactory] Update Databricks linked service swagger related to warm pools. (#7162) --- .../2018-06-01/entityTypes/LinkedService.json | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index 12b90c896c65..511e67689dc6 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -4971,19 +4971,23 @@ }, "existingClusterId": { "type": "object", - "description": "The id of an existing cluster that will be used for all runs of this job. Type: string (or Expression with resultType string)." + "description": "The id of an existing interactive cluster that will be used for all runs of this activity. Type: string (or Expression with resultType string)." + }, + "instancePoolId": { + "type": "object", + "description": "The id of an existing instance pool that will be used for all runs of this activity. Type: string (or Expression with resultType string)." }, "newClusterVersion": { "type": "object", - "description": "The Spark version of new cluster. Type: string (or Expression with resultType string)." + "description": "If not using an existing interactive cluster, this specifies the Spark version of a new job cluster or instance pool nodes created for each run of this activity. Required if instancePoolId is specified. Type: string (or Expression with resultType string)." }, "newClusterNumOfWorker": { "type": "object", - "description": "Number of worker nodes that new cluster should have. A string formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 as min and 10 as max. Type: string (or Expression with resultType string)." + "description": "If not using an existing interactive cluster, this specifies the number of worker nodes to use for the new job cluster or instance pool. For new job clusters, this a string-formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 (min) to 10 (max). For instance pools, this is a string-formatted Int32, and can only specify a fixed number of worker nodes, such as '2'. Required if newClusterVersion is specified. Type: string (or Expression with resultType string)." }, "newClusterNodeType": { "type": "object", - "description": "The node types of new cluster. Type: string (or Expression with resultType string)." + "description": "The node type of the new job cluster. This property is required if newClusterVersion is specified and instancePoolId is not specified. If instancePoolId is specified, this property is ignored. Type: string (or Expression with resultType string)." }, "newClusterSparkConf": { "description": "A set of optional, user-specified Spark configuration key-value pairs.", @@ -5002,7 +5006,7 @@ } }, "newClusterCustomTags": { - "description": "Additional tags for cluster resources.", + "description": "Additional tags for cluster resources. This property is ignored in instance pool configurations.", "type": "object", "additionalProperties": { "type": "object", @@ -5011,7 +5015,7 @@ }, "newClusterDriverNodeType": { "type": "object", - "description": "The driver node type for the new cluster. Type: string (or Expression with resultType string)." + "description": "The driver node type for the new job cluster. This property is ignored in instance pool configurations. Type: string (or Expression with resultType string)." }, "newClusterInitScripts": { "type": "object", @@ -5019,7 +5023,7 @@ }, "newClusterEnableElasticDisk": { "type": "object", - "description": "Enable the elastic disk on the new cluster. Type: boolean (or Expression with resultType boolean)." + "description": "Enable the elastic disk on the new cluster. This property is now ignored, and takes the default elastic disk behavior in Databricks (elastic disks are always enabled). Type: boolean (or Expression with resultType boolean)." }, "encryptedCredential": { "type": "object", From 72a5775ddc1c98f32d71aa72c1de4bd389946f94 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Tue, 10 Sep 2019 01:20:55 -0400 Subject: [PATCH 118/123] chore: jsonfmt security (#7165) --- .../CreateIoTSecuritySolution.json | 2 +- .../GetIoTSecuritySolutionsList.json | 8 ++++---- .../GetIoTSecuritySolutionsListByIotHub.json | 2 +- .../GetIoTSecuritySolutionsListByIotHubAndRg.json | 2 +- .../GetIoTSecuritySolutionsListByRg.json | 4 ++-- .../UpdateIoTSecuritySolution.json | 2 +- .../2019-08-01/iotSecuritySolutionAnalytics.json | 11 +++++------ .../stable/2019-08-01/iotSecuritySolutions.json | 12 ++++++------ 8 files changed, 21 insertions(+), 22 deletions(-) diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json index 70b99f07679a..c022e8f1680e 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json @@ -173,7 +173,7 @@ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735", "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" ], - "recommendationsConfiguration": [ + "recommendationsConfiguration": [ { "recommendationType": "IoT_ACRAuthentication", "name": "Service Principal Not Used with ACR", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json index a1f086805d86..d9caa82fd4ad 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json @@ -16,8 +16,8 @@ "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", - "export": [ ], - "disabledDataSources": [ ], + "export": [], + "disabledDataSources": [], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" @@ -121,14 +121,14 @@ "name": "sec-solution", "location": "East Us", "type": "Microsoft.Security/IoTSecuritySolutions", - "tags": { }, + "tags": {}, "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", "export": [ "RawEvents" ], - "disabledDataSources": [ ], + "disabledDataSources": [], "displayName": "Second Solution", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/IotHubSecond" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json index c8e79dce066e..47b84ec5cbd3 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json @@ -20,7 +20,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [ ], + "disabledDataSources": [], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json index 8c5ae9396b5f..1e6565f1e1f3 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json @@ -21,7 +21,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [ ], + "disabledDataSources": [], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json index 91a826fcd064..1f1ab218ec5e 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json @@ -17,8 +17,8 @@ "properties": { "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", "status": "Enabled", - "export": [ ], - "disabledDataSources": [ ], + "export": [], + "disabledDataSources": [], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json index 1124a2cd860f..ba1c8a30c391 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json @@ -44,7 +44,7 @@ "export": [ "RawEvents" ], - "disabledDataSources": [ ], + "disabledDataSources": [], "displayName": "Solution Default", "iotHubs": [ "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json index 2c3040c60c52..96f234b8a9bf 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json @@ -502,12 +502,11 @@ }, "IoTSecurityAlertedDevicesList": { "description": "List of devices with open alerts including the count of alerts per device.", - "type": "array", - "items": { - "$ref": "#/definitions/IoTSecurityAlertedDevice" - } - }, - + "type": "array", + "items": { + "$ref": "#/definitions/IoTSecurityAlertedDevice" + } + }, "IoTSecurityDeviceAlertsList": { "description": "List of alerts with the count of raised alerts", "type": "array", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json index 3d211d1cb3ba..89152b58deb0 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json @@ -358,18 +358,18 @@ } ] }, - "UpdateIoTSecuritySolutionProperties": { - "type": "object", + "UpdateIoTSecuritySolutionProperties": { + "type": "object", "description": "Update Security Solution setting data", "properties": { - "userDefinedResources": { + "userDefinedResources": { "$ref": "#/definitions/UserDefinedResourcesProperties" }, "recommendationsConfiguration": { "$ref": "#/definitions/RecommendationConfigurationList" } - } - }, + } + }, "IoTSecuritySolutionProperties": { "type": "object", "description": "Security Solution setting data", @@ -616,7 +616,7 @@ "UpdateIotSecuritySolutionData": { "type": "object", "properties": { - "properties": { + "properties": { "x-ms-client-flatten": true, "description": "Security Solution data", "$ref": "#/definitions/UpdateIoTSecuritySolutionProperties" From abda0b03ada618bc17486d03672acf26514da4a2 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Tue, 10 Sep 2019 01:21:21 -0400 Subject: [PATCH 119/123] chore: jsonfmt compute (#7164) --- .../stable/2019-03-01/compute.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 2a7fc2438abc..d80c365fb052 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -7541,14 +7541,14 @@ "Default", "OldestVM", "NewestVM" - ], - "x-ms-enum": { - "name": "VirtualMachineScaleSetScaleInRules", - "modelAsString": true - } - }, - "description": "The rules to be followed when scaling-in a virtual machine scale set.

Possible values are:

**Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

**OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

**NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

" - } + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetScaleInRules", + "modelAsString": true + } + }, + "description": "The rules to be followed when scaling-in a virtual machine scale set.

Possible values are:

**Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

**OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

**NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

" + } }, "description": "Describes a scale-in policy for a virtual machine scale set." }, From d5807d53a70da3724def1e6248b6882167867c99 Mon Sep 17 00:00:00 2001 From: Zim Kalinowski Date: Tue, 10 Sep 2019 14:21:08 +0800 Subject: [PATCH 120/123] added missing packages to compute release (#7166) --- specification/compute/resource-manager/readme.md | 10 ++++++++++ .../compute/resource-manager/readme.python.md | 1 + 2 files changed, 11 insertions(+) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index c1b299be432b..2d93aff01922 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -210,6 +210,15 @@ input-file: - Microsoft.ContainerService/stable/2017-01-31/containerService.json ``` +### Tag: package-2019-07-01-only + +These settings apply only when `--tag=package-2019-07-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-07-01-only' +input-file: +- Microsoft.Compute/stable/2019-07-01/gallery.json +``` + ### Tag: package-2019-03-01 These settings apply only when `--tag=package-2019-03-01` is specified on the command line. @@ -242,6 +251,7 @@ input-file: - Microsoft.Compute/stable/2019-03-01/compute.json - Microsoft.Compute/stable/2019-03-01/runCommands.json - Microsoft.Compute/stable/2019-03-01/gallery.json +- Microsoft.Compute/stable/2019-03-01/disk.json ``` ### Tag: package-2018-10-01-Disks diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md index 26708410a727..b94f758031eb 100644 --- a/specification/compute/resource-manager/readme.python.md +++ b/specification/compute/resource-manager/readme.python.md @@ -18,6 +18,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2019-07-01-only - tag: package-2019-04-01-only - tag: package-2019-03-01-only - tag: package-2018-10-01-only From 4322d98bc9f67a84b227ce9504983e84cc4893a6 Mon Sep 17 00:00:00 2001 From: Ray Chen Date: Tue, 10 Sep 2019 14:51:12 +0800 Subject: [PATCH 121/123] Enalbe new modelvalidation run in pre-production. (#7168) --- .../package-lock.json | 107 +++++++----------- .azure-pipelines-preproduction/package.json | 2 +- preproduction-azure-pipelines.yml | 1 + 3 files changed, 45 insertions(+), 65 deletions(-) diff --git a/.azure-pipelines-preproduction/package-lock.json b/.azure-pipelines-preproduction/package-lock.json index 868605f56898..741489043b83 100644 --- a/.azure-pipelines-preproduction/package-lock.json +++ b/.azure-pipelines-preproduction/package-lock.json @@ -88,9 +88,9 @@ } }, "@azure/rest-api-specs-scripts": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.5.0.tgz", - "integrity": "sha512-UJ7IF1P1/j3N64WNUdazc1Sutna+mqfuoBAuzAhDu9Gwunkjbo0cx2UVmcdwctHJ81OnjWRak1so0Rsn2hPVOg==", + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.5.1.tgz", + "integrity": "sha512-Nwi4jsHMVG1Pd3hJAh5D8JxTlx6PaDpYNfDrQSG3QAvVwE5n+MK9SmHL47akDfhKJQibuPompKwgw55Gy23Reg==", "dev": true, "requires": { "@azure/avocado": "^0.4.1", @@ -100,7 +100,7 @@ "fs-extra": "^7.0.1", "glob": "^7.1.3", "js-yaml": "^3.13.1", - "oav": "^0.18.1", + "oav": "^0.19.6", "request": "^2.88.0" }, "dependencies": { @@ -151,21 +151,19 @@ "dev": true }, "@octokit/endpoint": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.3.2.tgz", - "integrity": "sha512-gRjteEM9I6f4D8vtwU2iGUTn9RX/AJ0SVXiqBUEuYEWVGGAVjSXdT0oNmghH5lvQNWs8mwt6ZaultuG6yXivNw==", + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.3.5.tgz", + "integrity": "sha512-f8KqzIrnzPLiezDsZZPB+K8v8YSv6aKFl7eOu59O46lmlW4HagWl1U6NWl6LmT8d1w7NsKBI3paVtzcnRGO1gw==", "dev": true, "requires": { - "deepmerge": "4.0.0", "is-plain-object": "^3.0.0", - "universal-user-agent": "^3.0.0", - "url-template": "^2.0.8" + "universal-user-agent": "^4.0.0" } }, "@octokit/request": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.0.2.tgz", - "integrity": "sha512-z1BQr43g4kOL4ZrIVBMHwi68Yg9VbkRUyuAgqCp1rU3vbYa69+2gIld/+gHclw15bJWQnhqqyEb7h5a5EqgZ0A==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.1.0.tgz", + "integrity": "sha512-I15T9PwjFs4tbWyhtFU2Kq7WDPidYMvRB7spmxoQRZfxSmiqullG+Nz+KbSmpkfnlvHwTr1e31R5WReFRKMXjg==", "dev": true, "requires": { "@octokit/endpoint": "^5.1.0", @@ -174,7 +172,7 @@ "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", "once": "^1.4.0", - "universal-user-agent": "^3.0.0" + "universal-user-agent": "^4.0.0" } }, "@octokit/request-error": { @@ -188,9 +186,9 @@ } }, "@octokit/rest": { - "version": "16.28.7", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.28.7.tgz", - "integrity": "sha512-cznFSLEhh22XD3XeqJw51OLSfyL2fcFKUO+v2Ep9MTAFfFLS1cK1Zwd1yEgQJmJoDnj4/vv3+fGGZweG+xsbIA==", + "version": "16.28.9", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.28.9.tgz", + "integrity": "sha512-IKGnX+Tvzt7XHhs8f4ajqxyJvYAMNX5nWfoJm4CQj8LZToMiaJgutf5KxxpxoC3y5w7JTJpW5rnWnF4TsIvCLA==", "dev": true, "requires": { "@octokit/request": "^5.0.0", @@ -204,8 +202,7 @@ "lodash.uniq": "^4.5.0", "octokit-pagination-methods": "^1.1.0", "once": "^1.4.0", - "universal-user-agent": "^3.0.0", - "url-template": "^2.0.8" + "universal-user-agent": "^4.0.0" } }, "@ts-common/add-position": { @@ -373,6 +370,12 @@ "integrity": "sha512-SGGAhXLHDx+PK4YLNcNGa6goPf9XRWQNAUUbffkwVGGXIxmDKWyGGL4inzq2sPmExu431Ekb9aEMn9BkPqEYFA==", "dev": true }, + "@types/jsonpath": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@types/jsonpath/-/jsonpath-0.2.0.tgz", + "integrity": "sha512-v7qlPA0VpKUlEdhghbDqRoKMxFB3h3Ch688TApBJ6v+XLDdvWCGLJIYiPKGZnS6MAOie+IorCfNYVHOPIHSWwQ==", + "dev": true + }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", @@ -1473,12 +1476,6 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, - "deepmerge": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.0.0.tgz", - "integrity": "sha512-YZ1rOP5+kHor4hMAH+HRQnBQHg+wvS1un1hAOuIcxcBy0hzcUf6Jg2a1w65kpoOUnurOfZbERwjI1TfZxNjcww==", - "dev": true - }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -2229,9 +2226,9 @@ "dev": true }, "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.0.tgz", + "integrity": "sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw==", "dev": true, "requires": { "neo-async": "^2.6.0", @@ -3582,21 +3579,22 @@ "dev": true }, "oav": { - "version": "0.18.6", - "resolved": "https://registry.npmjs.org/oav/-/oav-0.18.6.tgz", - "integrity": "sha512-qDMtwnEMZOCdqonzxR7ICbYcSsLkzXpcrZQHsFN9EgGXKUJ9cwPwV2zEba1+fk6WsW/id79cZWfFT0y3XBxiuA==", + "version": "0.19.6", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.19.6.tgz", + "integrity": "sha512-JAATj7YPAm7v7ciPNn3MlnHHsd6GrTPyOJRqW6adWzUg2UQ8zor4jJuotNmsCes5Xq01MqbYOnTEwc/U+or2XA==", "dev": true, "requires": { "@azure/openapi-markdown": "^0.9.0", "@microsoft.azure/autorest-extension-base": "1.0.13", "@ts-common/commonmark-to-markdown": "^1.2.0", - "@ts-common/iterator": "^0.3.1", - "@ts-common/json": "^0.3.0", - "@ts-common/json-parser": "^0.7.0", + "@ts-common/iterator": "^0.3.6", + "@ts-common/json": "^0.3.1", + "@ts-common/json-parser": "^0.8.0", "@ts-common/property-set": "^0.1.0", "@ts-common/source-map": "^0.5.0", "@ts-common/string-map": "^0.3.0", "@ts-common/virtual-fs": "^0.2.0", + "@types/jsonpath": "^0.2.0", "commonmark": "^0.29.0", "glob": "^5.0.15", "globby": "^9.2.0", @@ -3614,24 +3612,11 @@ "vscode-jsonrpc": "^3.6.2", "winston": "^3.2.1", "yargs": "^6.6.0", - "yasway": "^1.8.3", + "yasway": "^1.8.4", "yuml2svg": "^4.2.1", "z-schema": "^4.1.0" }, "dependencies": { - "@ts-common/json-parser": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.7.2.tgz", - "integrity": "sha512-Rb0bA/maGzfjA7ZegDvfDABF+vz2norftJX80aTOLb88gLd2+SnD6gYVg3nZH9FpA5/34JXFDvMs4Fb5GuPoew==", - "dev": true, - "requires": { - "@ts-common/iterator": "^0.3.4", - "@ts-common/json": "^0.3.1", - "@ts-common/source-map": "^0.5.0", - "@ts-common/string-map": "^0.3.0", - "tslib": "^1.9.3" - } - }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -4186,9 +4171,9 @@ "dev": true }, "psl": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", - "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", + "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==", "dev": true }, "pump": { @@ -5176,12 +5161,12 @@ } }, "universal-user-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-3.0.0.tgz", - "integrity": "sha512-T3siHThqoj5X0benA5H0qcDnrKGXzU8TKoX15x/tQHw1hQBvIEBHjxQ2klizYsqBOO/Q+WuxoQUihadeeqDnoA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.0.tgz", + "integrity": "sha512-eM8knLpev67iBDizr/YtqkJsF3GK8gzDc6st/WKzrTuPtcsOKW/0IdL4cnMBsU69pOx0otavLWBDGTwg+dB0aA==", "dev": true, "requires": { - "os-name": "^3.0.0" + "os-name": "^3.1.0" } }, "universalify": { @@ -5251,12 +5236,6 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, - "url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha1-/FZaPMy/93MMd19WQflVV5FDnyE=", - "dev": true - }, "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", @@ -5700,9 +5679,9 @@ } }, "yasway": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.3.tgz", - "integrity": "sha512-4cBs1eK6HiEe8AvwRNztRdWQnvkuermxRfFVRekk2y/fpna99AQ5b9ByDY/hwWkW80bGipAXoDMI3Ifqol2+tg==", + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.4.tgz", + "integrity": "sha512-Oo6dFvmazhQU6ceazUm59BVraptSXTDhvpW2K14DcpgeyTAyUUpJjuE7HJ4qyF+Ci6blIaQq9mOVHj8pCFhEjQ==", "dev": true, "requires": { "@ts-common/json": "^0.3.0", diff --git a/.azure-pipelines-preproduction/package.json b/.azure-pipelines-preproduction/package.json index 16d902361c0a..06f6d448d064 100644 --- a/.azure-pipelines-preproduction/package.json +++ b/.azure-pipelines-preproduction/package.json @@ -11,7 +11,7 @@ "license": "MIT", "devDependencies": { "@azure/avocado": "^0.6.0", - "@azure/rest-api-specs-scripts": "^0.5.0", + "@azure/rest-api-specs-scripts": "^0.5.1", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", "@ts-common/iterator": "^0.3.6", diff --git a/preproduction-azure-pipelines.yml b/preproduction-azure-pipelines.yml index 6f6ae83a177a..a9f50e6353e8 100644 --- a/preproduction-azure-pipelines.yml +++ b/preproduction-azure-pipelines.yml @@ -16,3 +16,4 @@ jobs: - template: .azure-pipelines/BranchProtectionForPrivateRepo.yml - template: .azure-pipelines/Spellcheck.yml - template: .azure-pipelines/BreakingChange.yml +- template: .azure-pipelines/ModelValidation.yml From 063352770a292b4c2d2705e6665fea882a1d6865 Mon Sep 17 00:00:00 2001 From: Adithya Upadhya Date: Tue, 10 Sep 2019 15:34:28 -0700 Subject: [PATCH 122/123] [ACR] Adding scopemap spec file for new SDK build (#7175) For releasing ScopeMap and Token features, we need to retrieve models from the scopemap spec file. The existing SDK version doesn't incorporate changes from the scopemap spec file. Requesting a new SDK build. Please suggest changes if deemed necessary. --- specification/containerregistry/resource-manager/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index 2d47f5dc7df7..3cc1b6133d7b 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -37,6 +37,7 @@ These settings apply only when `--tag=package-2019-06-preview` is specified on t input-file: - Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json +- Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json ``` ### Tag: package-2019-06-preview-only From 1e54266d3ba29d34a5c93233cbf2e40f47618898 Mon Sep 17 00:00:00 2001 From: azuresdkci Date: Tue, 10 Sep 2019 22:36:45 +0000 Subject: [PATCH 123/123] regenerated all-api-versions --- specification/containerregistry/resource-manager/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index 3cc1b6133d7b..9bd95f9c2829 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -214,9 +214,9 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json + - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json - $(this-folder)/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json - $(this-folder)/Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json - $(this-folder)/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json - $(this-folder)/Microsoft.ContainerRegistry/preview/2017-06-01-preview/containerregistry.json