From 69011757c523e099fd3c02b0a21bfbcf92a7fc26 Mon Sep 17 00:00:00 2001 From: Dongjiang You Date: Fri, 12 Aug 2016 10:33:20 -0700 Subject: [PATCH 1/5] Added swagger for Azure container registry --- .../swagger/containerregistry.json | 541 ++++++++++++++++++ 1 file changed, 541 insertions(+) create mode 100644 arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json diff --git a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json new file mode 100644 index 000000000000..330a02cd7e6c --- /dev/null +++ b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json @@ -0,0 +1,541 @@ +{ + "swagger": "2.0", + "info": { + "version": "2016-06-27-preview", + "title": "ContainerRegistryManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": { + "post": { + "tags": [ + "Operation" + ], + "description": "Checks whether the container registry name is available.", + "operationId": "Registries_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "registryNameCheckRequest", + "in": "body", + "description": "The request to check whether the container registry name is available.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryNameCheckRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RegistryNameStatus" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { + "get": { + "tags": [ + "Registries" + ], + "description": "Gets the properties for the specified container registry.", + "operationId": "Registries_GetProperties", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Registries" + ], + "description": "Creates or updates a container registry with the specified parameters. The storage account provided in this operation should be in the same location as the container registry.", + "operationId": "Registries_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + }, + { + "name": "registry", + "in": "body", + "description": "The container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/Registry" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Registries" + ], + "description": "Deletes a container registry from the given subscription and resource group.", + "operationId": "Registries_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "Registries" + ], + "description": "Updates a container registry with the specified parameters. The storage account provided in this operation should be in the same location as the container registry.", + "operationId": "Registries_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + }, + { + "name": "registryUpdateParameters", + "in": "body", + "description": "The parameters for updating a container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists all the container registries available under the given resource group.", + "operationId": "Registries_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RegistryListResult" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists all the container registries available under the subscription.", + "operationId": "Registries_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RegistryListResult" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}/getCredentials": { + "post": { + "tags": [ + "Registries" + ], + "description": "Gets login credentials for the specified container registry.", + "operationId": "Registries_GetCredentials", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RegistryCredentials" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "RegistryNameCheckRequest": { + "description": "The request to check whether the container registry name is available.", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The container registry name.", + "type": "string" + }, + "type": { + "description": "The container registry resource type.", + "enum": [ + "Microsoft.ContainerRegistry/registries" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerRegistryResourceType", + "modelAsString": false + } + } + } + }, + "RegistryNameStatus": { + "description": "The result of checking name availability.", + "properties": { + "nameAvailable": { + "description": "The boolean value that indicates whether the name is available.", + "type": "boolean" + }, + "reason": { + "description": "The reason that the container registry name could not be used.", + "type": "string" + }, + "message": { + "description": "The error message that explains the reason value in more detail.", + "type": "string" + } + } + }, + "Registry": { + "description": "The container registry.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RegistryProperties", + "description": "The container registry properties.", + "x-ms-client-flatten": true + } + } + }, + "RegistryProperties": { + "description": "The container registry properties.", + "required": [ + "storageAccount" + ], + "properties": { + "loginServer": { + "description": "The URL to log into the container registry.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the container registry in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "adminUserEnabled": { + "description": "The boolean value that indicates whether admin user is enabled. Default value is false.", + "default": false, + "type": "boolean" + }, + "storageAccount": { + "$ref": "#/definitions/StorageAccountProperties", + "description": "The storage account properties." + } + } + }, + "StorageAccountProperties": { + "description": "The storage account properties.", + "required": [ + "name", + "accessKey", + "endPointUrl" + ], + "properties": { + "name": { + "description": "Storage account name.", + "type": "string" + }, + "accessKey": { + "description": "Storage account access key.", + "type": "string" + }, + "endPointUrl": { + "description": "Storage account endpoint URL.", + "type": "string" + } + } + }, + "Resource": { + "description": "Azure resource.", + "required": [ + "location" + ], + "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 + }, + "location": { + "description": "Resource location. Once the resource has been created, location cannot be updated.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "RegistryUpdateParameters": { + "description": "The parameters for updating a container registry.", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/RegistryPropertiesUpdateParameters", + "description": "The parameters for updating container registry properties.", + "x-ms-client-flatten": true + } + } + }, + "RegistryPropertiesUpdateParameters": { + "description": "The parameters for updating container registry properties.", + "properties": { + "adminUserEnabled": { + "description": "The boolean value that indicates whether admin user is enabled. Default value is false.", + "type": "boolean" + }, + "storageAccount": { + "$ref": "#/definitions/StorageAccountProperties", + "description": "The storage account properties." + } + } + }, + "RegistryListResult": { + "description": "The result of listing container registries.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Registry" + } + } + } + }, + "RegistryCredentials": { + "description": "The result of showing admin user credentials.", + "properties": { + "username": { + "description": "Admin username.", + "type": "string" + }, + "password": { + "description": "Admin password.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Microsoft Azure subscription id.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + } +} \ No newline at end of file From 80f075319cb15de60ef114cb197da4791634ef8e Mon Sep 17 00:00:00 2001 From: Dongjiang You Date: Wed, 26 Oct 2016 12:53:02 -0700 Subject: [PATCH 2/5] Added regenerate credentials operation 1. Added regenerate credentials operation. 2. Updated storage account properties. --- .../swagger/containerregistry.json | 51 ++++++++++++++++--- 1 file changed, 43 insertions(+), 8 deletions(-) diff --git a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json index 330a02cd7e6c..fcd7110f973e 100644 --- a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json +++ b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json @@ -50,7 +50,7 @@ "deprecated": false } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { "get": { "tags": [ "Registries" @@ -219,7 +219,7 @@ "deprecated": false } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries": { "get": { "tags": [ "Registries" @@ -323,6 +323,46 @@ }, "deprecated": false } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredentials": { + "post": { + "tags": [ + "Registries" + ], + "description": "Regenerates login credentials for the specified container registry.", + "operationId": "Registries_RegenerateCredentials", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroup", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string" + }, + { + "name": "registryName", + "in": "path", + "description": "The container registry name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RegistryCredentials" + } + } + }, + "deprecated": false + } } }, "definitions": { @@ -414,8 +454,7 @@ "description": "The storage account properties.", "required": [ "name", - "accessKey", - "endPointUrl" + "accessKey" ], "properties": { "name": { @@ -425,10 +464,6 @@ "accessKey": { "description": "Storage account access key.", "type": "string" - }, - "endPointUrl": { - "description": "Storage account endpoint URL.", - "type": "string" } } }, From dde7c6bb979b75ab4af59041a91404671a2245d1 Mon Sep 17 00:00:00 2001 From: Dongjiang You Date: Thu, 27 Oct 2016 10:15:04 -0700 Subject: [PATCH 3/5] Renamed resourceGroup to resourceGroupName --- .../swagger/containerregistry.json | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json index fcd7110f973e..4ea4f2e5017a 100644 --- a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json +++ b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json @@ -50,7 +50,7 @@ "deprecated": false } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { "get": { "tags": [ "Registries" @@ -65,7 +65,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -103,7 +103,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -150,7 +150,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -185,7 +185,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -219,7 +219,7 @@ "deprecated": false } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": { "get": { "tags": [ "Registries" @@ -234,7 +234,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -284,7 +284,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}/getCredentials": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/getCredentials": { "post": { "tags": [ "Registries" @@ -299,7 +299,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, @@ -324,7 +324,7 @@ "deprecated": false } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredentials": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredentials": { "post": { "tags": [ "Registries" @@ -339,7 +339,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroup", + "name": "resourceGroupName", "in": "path", "description": "The resource group name.", "required": true, From 7ac1f39ab144b45be6b66f98bcd51c6d5a8602c6 Mon Sep 17 00:00:00 2001 From: Dongjiang You Date: Thu, 27 Oct 2016 15:43:18 -0700 Subject: [PATCH 4/5] Removed deprecated, updated nextLink --- .../swagger/containerregistry.json | 97 +++++++++---------- 1 file changed, 44 insertions(+), 53 deletions(-) diff --git a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json index 4ea4f2e5017a..88eb5780aab3 100644 --- a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json +++ b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json @@ -46,8 +46,7 @@ "$ref": "#/definitions/RegistryNameStatus" } } - }, - "deprecated": false + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { @@ -86,8 +85,7 @@ "$ref": "#/definitions/Registry" } } - }, - "deprecated": false + } }, "put": { "tags": [ @@ -133,8 +131,7 @@ "$ref": "#/definitions/Registry" } } - }, - "deprecated": false + } }, "delete": { "tags": [ @@ -168,8 +165,7 @@ "200": { "description": "OK" } - }, - "deprecated": false + } }, "patch": { "tags": [ @@ -215,8 +211,7 @@ "$ref": "#/definitions/Registry" } } - }, - "deprecated": false + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": { @@ -249,9 +244,8 @@ } } }, - "deprecated": false, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, @@ -278,9 +272,8 @@ } } }, - "deprecated": false, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, @@ -320,8 +313,7 @@ "$ref": "#/definitions/RegistryCredentials" } } - }, - "deprecated": false + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredentials": { @@ -360,8 +352,7 @@ "$ref": "#/definitions/RegistryCredentials" } } - }, - "deprecated": false + } } } }, @@ -467,41 +458,6 @@ } } }, - "Resource": { - "description": "Azure resource.", - "required": [ - "location" - ], - "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 - }, - "location": { - "description": "Resource location. Once the resource has been created, location cannot be updated.", - "type": "string" - }, - "tags": { - "description": "Resource tags.", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - }, - "x-ms-azure-resource": true - }, "RegistryUpdateParameters": { "description": "The parameters for updating a container registry.", "properties": { @@ -555,6 +511,41 @@ "type": "string" } } + }, + "Resource": { + "description": "Azure resource.", + "required": [ + "location" + ], + "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 + }, + "location": { + "description": "Resource location. Once the resource has been created, location cannot be updated.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true } }, "parameters": { From ad15a998afec3ce09baadd3563b666373c3fc756 Mon Sep 17 00:00:00 2001 From: Dongjiang You Date: Thu, 27 Oct 2016 17:54:01 -0700 Subject: [PATCH 5/5] Added nextlink to list results --- .../2016-06-27-preview/swagger/containerregistry.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json index 88eb5780aab3..bb6874cbbf53 100644 --- a/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json +++ b/arm-containerregistry/2016-06-27-preview/swagger/containerregistry.json @@ -492,10 +492,15 @@ "description": "The result of listing container registries.", "properties": { "value": { + "description": "The result of listing container registries.", "type": "array", "items": { "$ref": "#/definitions/Registry" } + }, + "nextLink": { + "description": "The uri to fetch the next set of container registries.", + "type": "string" } } },