From 5b6834916e0791ff005eb9358b0a8ff1ca686437 Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Mon, 6 May 2019 18:35:23 -0700 Subject: [PATCH 1/8] add v19_05_GA swagger --- .../stable/2019-05-01/containerregistry.json | 2534 +++++++++++++++++ 1 file changed, 2534 insertions(+) create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json 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 new file mode 100644 index 000000000000..25a4463d95d9 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json @@ -0,0 +1,2534 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-05-01", + "title": "ContainerRegistryManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage": { + "post": { + "tags": [ + "Registries" + ], + "description": "Copies an image to this container registry from the specified container registry.", + "operationId": "Registries_ImportImage", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters specifying the image to copy and the source container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportImageParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the operation has completed successfully." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "ImportImageByTag": { + "$ref": "./examples/ImportImageByTag.json" + }, + "ImportImageByManifestDigest": { + "$ref": "./examples/ImportImageByManifestDigest.json" + }, + "ImportImageFromPublicRegistry": { + "$ref": "./examples/ImportImageFromPublicRegistry.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability": { + "post": { + "tags": [ + "Operation" + ], + "description": "Checks whether the container registry name is available for use. The name must contain only alphanumeric characters, be globally unique, and between 5 and 50 characters in length.", + "operationId": "Registries_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "registryNameCheckRequest", + "in": "body", + "description": "The object containing information for the availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryNameCheckRequest" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/RegistryNameStatus" + } + } + }, + "x-ms-examples": { + "RegistryCheckNameAvailable": { + "$ref": "./examples/RegistryCheckNameAvailable.json" + }, + "RegistryCheckNameNotAvailable": { + "$ref": "./examples/RegistryCheckNameNotAvailable.json" + } + } + } + }, + "/providers/Microsoft.ContainerRegistry/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Container Registry 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" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { + "get": { + "tags": [ + "Registries" + ], + "description": "Gets the properties of the specified container registry.", + "operationId": "Registries_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "x-ms-examples": { + "RegistryGet": { + "$ref": "./examples/RegistryGet.json" + } + } + }, + "put": { + "tags": [ + "Registries" + ], + "description": "Creates a container registry with the specified parameters.", + "operationId": "Registries_Create", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "registry", + "in": "body", + "description": "The parameters for creating a container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/Registry" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Registry" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "x-ms-examples": { + "RegistryCreate": { + "$ref": "./examples/RegistryCreate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Registries" + ], + "description": "Deletes a container registry.", + "operationId": "Registries_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The container registry does not exist in the subscription." + } + }, + "x-ms-examples": { + "RegistryDelete": { + "$ref": "./examples/RegistryDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Registries" + ], + "description": "Updates a container registry with the specified parameters.", + "operationId": "Registries_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "registryUpdateParameters", + "in": "body", + "description": "The parameters for updating a container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Registry" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Registry" + } + } + }, + "x-ms-examples": { + "RegistryUpdate": { + "$ref": "./examples/RegistryUpdate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists all the container registries under the specified resource group.", + "operationId": "Registries_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/RegistryListResult" + } + } + }, + "x-ms-examples": { + "RegistryListByResourceGroup": { + "$ref": "./examples/RegistryListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists all the container registries under the specified subscription.", + "operationId": "Registries_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/RegistryListResult" + } + } + }, + "x-ms-examples": { + "RegistryList": { + "$ref": "./examples/RegistryList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials": { + "post": { + "tags": [ + "Registries" + ], + "description": "Lists the login credentials for the specified container registry.", + "operationId": "Registries_ListCredentials", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the list of credentials retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "x-ms-examples": { + "RegistryListCredentials": { + "$ref": "./examples/RegistryListCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential": { + "post": { + "tags": [ + "Registries" + ], + "description": "Regenerates one of the login credentials for the specified container registry.", + "operationId": "Registries_RegenerateCredential", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "regenerateCredentialParameters", + "in": "body", + "description": "Specifies name of the password which should be regenerated -- password or password2.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateCredentialParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the specified credential regenerated successfully.", + "schema": { + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "x-ms-examples": { + "RegistryRegenerateCredential": { + "$ref": "./examples/RegistryRegenerateCredential.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages": { + "get": { + "tags": [ + "Registries" + ], + "description": "Gets the quota usages for the specified container registry.", + "operationId": "Registries_ListUsages", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the registry usages retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/RegistryUsageListResult" + } + } + }, + "x-ms-examples": { + "RegistryListUsages": { + "$ref": "./examples/RegistryListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listPolicies": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists the policies for the specified container registry.", + "operationId": "Registries_ListPolicies", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the registry policies were retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/RegistryPolicies" + } + } + }, + "x-ms-examples": { + "RegistryListPolicies": { + "$ref": "./examples/RegistryListPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies": { + "post": { + "tags": [ + "Registries" + ], + "description": "Updates the policies for the specified container registry.", + "operationId": "Registries_UpdatePolicies", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "name": "registryPoliciesUpdateParameters", + "in": "body", + "description": "The parameters for updating policies of a container registry.", + "required": true, + "schema": { + "$ref": "#/definitions/RegistryPolicies" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/RegistryPolicies" + } + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "RegistryUpdatePolicies": { + "$ref": "./examples/RegistryUpdatePolicies.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": { + "get": { + "tags": [ + "Replications" + ], + "description": "Gets the properties of the specified replication.", + "operationId": "Replications_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationGet": { + "$ref": "./examples/ReplicationGet.json" + } + } + }, + "put": { + "tags": [ + "Replications" + ], + "description": "Creates a replication for a container registry with the specified parameters.", + "operationId": "Replications_Create", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + }, + { + "name": "replication", + "in": "body", + "description": "The parameters for creating a replication.", + "required": true, + "schema": { + "$ref": "#/definitions/Replication" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationCreate": { + "$ref": "./examples/ReplicationCreate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Replications" + ], + "description": "Deletes a replication from a container registry.", + "operationId": "Replications_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The replication does not exist in the subscription." + } + }, + "x-ms-examples": { + "ReplicationDelete": { + "$ref": "./examples/ReplicationDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Replications" + ], + "description": "Updates a replication for a container registry with the specified parameters.", + "operationId": "Replications_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ReplicationNameParameter" + }, + { + "name": "replicationUpdateParameters", + "in": "body", + "description": "The parameters for updating a replication.", + "required": true, + "schema": { + "$ref": "#/definitions/ReplicationUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Replication" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Replication" + } + } + }, + "x-ms-examples": { + "ReplicationUpdate": { + "$ref": "./examples/ReplicationUpdate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications": { + "get": { + "tags": [ + "Replications" + ], + "description": "Lists all the replications for the specified container registry.", + "operationId": "Replications_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ReplicationListResult" + } + } + }, + "x-ms-examples": { + "ReplicationList": { + "$ref": "./examples/ReplicationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}": { + "get": { + "tags": [ + "Webhooks" + ], + "description": "Gets the properties of the specified webhook.", + "operationId": "Webhooks_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookGet": { + "$ref": "./examples/WebhookGet.json" + } + } + }, + "put": { + "tags": [ + "Webhooks" + ], + "description": "Creates a webhook for a container registry with the specified parameters.", + "operationId": "Webhooks_Create", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + }, + { + "name": "webhookCreateParameters", + "in": "body", + "description": "The parameters for creating a webhook.", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookCreateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookCreate": { + "$ref": "./examples/WebhookCreate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Webhooks" + ], + "description": "Deletes a webhook from a container registry.", + "operationId": "Webhooks_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The webhook does not exist in the subscription." + } + }, + "x-ms-examples": { + "WebhookDelete": { + "$ref": "./examples/WebhookDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Webhooks" + ], + "description": "Updates a webhook with the specified parameters.", + "operationId": "Webhooks_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + }, + { + "name": "webhookUpdateParameters", + "in": "body", + "description": "The parameters for updating a webhook.", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Webhook" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Webhook" + } + } + }, + "x-ms-examples": { + "WebhookUpdate": { + "$ref": "./examples/WebhookUpdate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks": { + "get": { + "tags": [ + "Webhooks" + ], + "description": "Lists all the webhooks for the specified container registry.", + "operationId": "Webhooks_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WebhookListResult" + } + } + }, + "x-ms-examples": { + "WebhookList": { + "$ref": "./examples/WebhookList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Triggers a ping event to be sent to the webhook.", + "operationId": "Webhooks_Ping", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/EventInfo" + } + } + }, + "x-ms-examples": { + "WebhookPing": { + "$ref": "./examples/WebhookPing.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Gets the configuration of service URI and custom headers for the webhook.", + "operationId": "Webhooks_GetCallbackConfig", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/CallbackConfig" + } + } + }, + "x-ms-examples": { + "WebhookGetCallbackConfig": { + "$ref": "./examples/WebhookGetCallbackConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents": { + "post": { + "tags": [ + "Webhooks" + ], + "description": "Lists recent events for the specified webhook.", + "operationId": "Webhooks_ListEvents", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/WebhookNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/EventListResult" + } + } + }, + "x-ms-examples": { + "WebhookListEvents": { + "$ref": "./examples/WebhookListEvents.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ImportImageParameters": { + "required": [ + "source" + ], + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/ImportSource", + "description": "The source of the image." + }, + "targetTags": { + "description": "List of strings of the form repo[:tag]. When tag is omitted the source will be used (or 'latest' if source tag is also omitted).", + "type": "array", + "items": { + "type": "string" + } + }, + "untaggedTargetRepositories": { + "description": "List of strings of repository names to do a manifest only copy. No tag will be created.", + "type": "array", + "items": { + "type": "string" + } + }, + "mode": { + "description": "When Force, any existing target tags will be overwritten. When NoForce, any existing target tags will fail the operation before any copying begins.", + "default": "NoForce", + "enum": [ + "NoForce", + "Force" + ], + "type": "string", + "x-ms-enum": { + "name": "ImportMode", + "modelAsString": true + } + } + } + }, + "ImportSource": { + "required": [ + "sourceImage" + ], + "type": "object", + "properties": { + "resourceId": { + "description": "The resource identifier of the source Azure Container Registry.", + "type": "string" + }, + "registryUri": { + "description": "The address of the source registry (e.g. 'mcr.microsoft.com').", + "type": "string" + }, + "credentials": { + "$ref": "#/definitions/ImportSourceCredentials", + "description": "Credentials used when importing from a registry uri." + }, + "sourceImage": { + "description": "Repository name of the source image.\r\nSpecify an image by repository ('hello-world'). This will use the 'latest' tag.\r\nSpecify an image by tag ('hello-world:latest').\r\nSpecify an image by sha256-based manifest digest ('hello-world@sha256:abc123').", + "type": "string" + } + } + }, + "ImportSourceCredentials": { + "required": [ + "password" + ], + "type": "object", + "properties": { + "username": { + "description": "The username to authenticate with the source registry.", + "type": "string" + }, + "password": { + "description": "The password used to authenticate with the source registry.", + "type": "string" + } + } + }, + "RegistryNameCheckRequest": { + "description": "A request to check whether a container registry name is available.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the container registry.", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "type": "string" + }, + "type": { + "description": "The resource type of the container registry. This field must be set to 'Microsoft.ContainerRegistry/registries'.", + "enum": [ + "Microsoft.ContainerRegistry/registries" + ], + "type": "string", + "x-ms-enum": { + "name": "ContainerRegistryResourceType", + "modelAsString": false + } + } + } + }, + "RegistryNameStatus": { + "description": "The result of a request to check the availability of a container registry name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value that indicates whether the name is available.", + "type": "boolean" + }, + "reason": { + "description": "If any, the reason that the name is not available.", + "type": "string" + }, + "message": { + "description": "If any, the error message that provides more detail for the reason that the name is not available.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "The result of a request to list container registry operations.", + "type": "object", + "properties": { + "value": { + "description": "The list of container registry operations. Since this list may be incomplete, the nextLink field should be used to request the next list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationDefinition" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of container registry operations.", + "type": "string" + } + } + }, + "OperationDefinition": { + "description": "The definition of a container registry operation.", + "type": "object", + "properties": { + "origin": { + "description": "The origin information of the container registry operation.", + "type": "string" + }, + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayDefinition", + "description": "The display information for the container registry operation." + }, + "properties": { + "$ref": "#/definitions/OperationPropertiesDefinition", + "description": "The properties information for the container registry operation.", + "x-ms-client-flatten": true + } + } + }, + "OperationDisplayDefinition": { + "description": "The display information for a container registry operation.", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.ContainerRegistry.", + "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" + } + } + }, + "OperationPropertiesDefinition": { + "description": "The definition of Azure Monitoring properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/OperationServiceSpecificationDefinition", + "description": "The definition of Azure Monitoring service." + } + } + }, + "OperationServiceSpecificationDefinition": { + "description": "The definition of Azure Monitoring metrics list.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "A list of Azure Monitoring metrics definition.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationMetricSpecificationDefinition" + } + } + } + }, + "OperationMetricSpecificationDefinition": { + "description": "The definition of Azure Monitoring metric.", + "type": "object", + "properties": { + "name": { + "description": "Metric name.", + "type": "string" + }, + "displayName": { + "description": "Metric display name.", + "type": "string" + }, + "displayDescription": { + "description": "Metric description.", + "type": "string" + }, + "unit": { + "description": "Metric unit.", + "type": "string" + }, + "aggregationType": { + "description": "Metric aggregation type.", + "type": "string" + }, + "internalMetricName": { + "description": "Internal metric name.", + "type": "string" + } + } + }, + "Registry": { + "description": "An object that represents a container registry.", + "required": [ + "sku" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the container registry." + }, + "properties": { + "$ref": "#/definitions/RegistryProperties", + "description": "The properties of the container registry.", + "x-ms-client-flatten": true + } + } + }, + "Sku": { + "description": "The SKU of a container registry.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The SKU name of the container registry. Required for registry creation.", + "enum": [ + "Classic", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "description": "The SKU tier based on the SKU name.", + "enum": [ + "Classic", + "Basic", + "Standard", + "Premium" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + } + }, + "RegistryProperties": { + "description": "The properties of a container registry.", + "type": "object", + "properties": { + "loginServer": { + "description": "The URL that can be used 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 + }, + "provisioningState": { + "description": "The provisioning state of the container registry at the time the operation was called.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/Status", + "description": "The status of the container registry at the time the operation was called.", + "readOnly": true + }, + "adminUserEnabled": { + "description": "The value that indicates whether the admin user is enabled.", + "default": false, + "type": "boolean" + }, + "storageAccount": { + "$ref": "#/definitions/StorageAccountProperties", + "description": "The properties of the storage account for the container registry. Only applicable to Classic SKU." + }, + "networkRuleSet": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "The network rule set for a container registry." + } + } + }, + "Status": { + "description": "The status of an Azure resource at the time the operation was called.", + "type": "object", + "properties": { + "displayStatus": { + "description": "The short label for the status.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The detailed message for the status, including alerts and error messages.", + "type": "string", + "readOnly": true + }, + "timestamp": { + "format": "date-time", + "description": "The timestamp when the status was changed to the current value.", + "type": "string", + "readOnly": true + } + } + }, + "StorageAccountProperties": { + "description": "The properties of a storage account for a container registry. Only applicable to Classic SKU.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The resource ID of the storage account.", + "type": "string" + } + } + }, + "NetworkRuleSet": { + "description": "The network rule set for a container registry.", + "required": [ + "defaultAction" + ], + "type": "object", + "properties": { + "defaultAction": { + "description": "The default action of allow or deny when no other rules match.", + "default": "Allow", + "enum": [ + "Allow", + "Deny" + ], + "type": "string", + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "virtualNetworkRules": { + "description": "The virtual network rules.", + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "ipRules": { + "description": "The IP ACL rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IPRule" + } + } + } + }, + "VirtualNetworkRule": { + "description": "Virtual network rule.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "action": { + "description": "The action of virtual network rule.", + "default": "Allow", + "enum": [ + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "Action", + "modelAsString": true + } + }, + "id": { + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}.", + "type": "string", + "x-ms-client-name": "VirtualNetworkResourceId" + } + } + }, + "IPRule": { + "description": "IP rule with specific IP or IP range in CIDR format.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "action": { + "description": "The action of IP ACL rule.", + "default": "Allow", + "enum": [ + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "Action", + "modelAsString": true + } + }, + "value": { + "description": "Specifies the IP or IP range in CIDR format. Only IPV4 address is allowed.", + "type": "string", + "x-ms-client-name": "IPAddressOrRange" + } + } + }, + "RegistryUpdateParameters": { + "description": "The parameters for updating a container registry.", + "type": "object", + "properties": { + "tags": { + "description": "The tags for the container registry.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the container registry." + }, + "properties": { + "$ref": "#/definitions/RegistryPropertiesUpdateParameters", + "description": "The properties that the container registry will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "RegistryPropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a container registry.", + "type": "object", + "properties": { + "adminUserEnabled": { + "description": "The value that indicates whether the admin user is enabled.", + "type": "boolean" + }, + "networkRuleSet": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "The network rule set for a container registry." + } + } + }, + "RegistryListResult": { + "description": "The result of a request to list container registries.", + "type": "object", + "properties": { + "value": { + "description": "The list of container registries. Since this list may be incomplete, the nextLink field should be used to request the next list of container registries.", + "type": "array", + "items": { + "$ref": "#/definitions/Registry" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of container registries.", + "type": "string" + } + } + }, + "RegistryListCredentialsResult": { + "description": "The response from the ListCredentials operation.", + "type": "object", + "properties": { + "username": { + "description": "The username for a container registry.", + "type": "string" + }, + "passwords": { + "description": "The list of passwords for a container registry.", + "type": "array", + "items": { + "$ref": "#/definitions/RegistryPassword" + } + } + } + }, + "RegistryPassword": { + "description": "The login password for the container registry.", + "type": "object", + "properties": { + "name": { + "description": "The password name.", + "enum": [ + "password", + "password2" + ], + "type": "string", + "x-ms-enum": { + "name": "PasswordName", + "modelAsString": false + } + }, + "value": { + "description": "The password value.", + "type": "string" + } + } + }, + "RegenerateCredentialParameters": { + "description": "The parameters used to regenerate the login credential.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Specifies name of the password which should be regenerated -- password or password2.", + "enum": [ + "password", + "password2" + ], + "type": "string", + "x-ms-enum": { + "name": "PasswordName", + "modelAsString": false + } + } + } + }, + "RegistryUsageListResult": { + "description": "The result of a request to get container registry quota usages.", + "type": "object", + "properties": { + "value": { + "description": "The list of container registry quota usages.", + "type": "array", + "items": { + "$ref": "#/definitions/RegistryUsage" + } + } + } + }, + "RegistryUsage": { + "description": "The quota usage for a container registry.", + "type": "object", + "properties": { + "name": { + "description": "The name of the usage.", + "type": "string" + }, + "limit": { + "format": "int64", + "description": "The limit of the usage.", + "type": "integer" + }, + "currentValue": { + "format": "int64", + "description": "The current value of the usage.", + "type": "integer" + }, + "unit": { + "description": "The unit of measurement.", + "enum": [ + "Count", + "Bytes" + ], + "type": "string", + "x-ms-enum": { + "name": "RegistryUsageUnit", + "modelAsString": true + } + } + } + }, + "RegistryPolicies": { + "description": "An object that represents policies for a container registry.", + "type": "object", + "properties": { + "quarantinePolicy": { + "$ref": "#/definitions/QuarantinePolicy", + "description": "An object that represents quarantine policy for a container registry." + }, + "trustPolicy": { + "$ref": "#/definitions/TrustPolicy", + "description": "An object that represents content trust policy for a container registry." + } + } + }, + "QuarantinePolicy": { + "description": "An object that represents quarantine policy for a container registry.", + "type": "object", + "properties": { + "status": { + "description": "The value that indicates whether the policy is enabled or not.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + } + } + }, + "TrustPolicy": { + "description": "An object that represents content trust policy for a container registry.", + "type": "object", + "properties": { + "type": { + "description": "The type of trust policy.", + "enum": [ + "Notary" + ], + "type": "string", + "x-ms-enum": { + "name": "TrustPolicyType", + "modelAsString": true + } + }, + "status": { + "description": "The value that indicates whether the policy is enabled or not.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + } + } + }, + "Replication": { + "description": "An object that represents a replication for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ReplicationProperties", + "description": "The properties of the replication.", + "x-ms-client-flatten": true + } + } + }, + "ReplicationProperties": { + "description": "The properties of a replication.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the replication at the time the operation was called.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/Status", + "description": "The status of the replication at the time the operation was called.", + "readOnly": true + } + } + }, + "ReplicationUpdateParameters": { + "description": "The parameters for updating a replication.", + "type": "object", + "properties": { + "tags": { + "description": "The tags for the replication.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ReplicationListResult": { + "description": "The result of a request to list replications for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of replications. Since this list may be incomplete, the nextLink field should be used to request the next list of replications.", + "type": "array", + "items": { + "$ref": "#/definitions/Replication" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of replications.", + "type": "string" + } + } + }, + "Webhook": { + "description": "An object that represents a webhook for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WebhookProperties", + "description": "The properties of the webhook.", + "x-ms-client-flatten": true + } + } + }, + "WebhookProperties": { + "description": "The properties of a webhook.", + "required": [ + "actions" + ], + "type": "object", + "properties": { + "status": { + "description": "The status of the webhook at the time the operation was called.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookStatus", + "modelAsString": true + } + }, + "scope": { + "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.", + "type": "string" + }, + "actions": { + "description": "The list of actions that trigger the webhook to post notifications.", + "type": "array", + "items": { + "enum": [ + "push", + "delete", + "quarantine", + "chart_push", + "chart_delete" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookAction", + "modelAsString": true + } + } + }, + "provisioningState": { + "description": "The provisioning state of the webhook at the time the operation was called.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "WebhookCreateParameters": { + "description": "The parameters for creating a webhook.", + "required": [ + "location" + ], + "type": "object", + "properties": { + "tags": { + "description": "The tags for the webhook.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "location": { + "description": "The location of the webhook. This cannot be changed after the resource is created.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/WebhookPropertiesCreateParameters", + "description": "The properties that the webhook will be created with.", + "x-ms-client-flatten": true + } + } + }, + "WebhookPropertiesCreateParameters": { + "description": "The parameters for creating the properties of a webhook.", + "required": [ + "serviceUri", + "actions" + ], + "type": "object", + "properties": { + "serviceUri": { + "description": "The service URI for the webhook to post notifications.", + "type": "string" + }, + "customHeaders": { + "description": "Custom headers that will be added to the webhook notifications.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "status": { + "description": "The status of the webhook at the time the operation was called.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookStatus", + "modelAsString": true + } + }, + "scope": { + "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.", + "type": "string" + }, + "actions": { + "description": "The list of actions that trigger the webhook to post notifications.", + "type": "array", + "items": { + "enum": [ + "push", + "delete", + "quarantine", + "chart_push", + "chart_delete" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookAction", + "modelAsString": true + } + } + } + } + }, + "WebhookUpdateParameters": { + "description": "The parameters for updating a webhook.", + "type": "object", + "properties": { + "tags": { + "description": "The tags for the webhook.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/WebhookPropertiesUpdateParameters", + "description": "The properties that the webhook will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WebhookPropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a webhook.", + "type": "object", + "properties": { + "serviceUri": { + "description": "The service URI for the webhook to post notifications.", + "type": "string" + }, + "customHeaders": { + "description": "Custom headers that will be added to the webhook notifications.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "status": { + "description": "The status of the webhook at the time the operation was called.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookStatus", + "modelAsString": true + } + }, + "scope": { + "description": "The scope of repositories where the event can be triggered. For example, 'foo:*' means events for all tags under repository 'foo'. 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to 'foo:latest'. Empty means all events.", + "type": "string" + }, + "actions": { + "description": "The list of actions that trigger the webhook to post notifications.", + "type": "array", + "items": { + "enum": [ + "push", + "delete", + "quarantine", + "chart_push", + "chart_delete" + ], + "type": "string", + "x-ms-enum": { + "name": "WebhookAction", + "modelAsString": true + } + } + } + } + }, + "WebhookListResult": { + "description": "The result of a request to list webhooks for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of webhooks. Since this list may be incomplete, the nextLink field should be used to request the next list of webhooks.", + "type": "array", + "items": { + "$ref": "#/definitions/Webhook" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of webhooks.", + "type": "string" + } + } + }, + "EventInfo": { + "description": "The basic information of an event.", + "type": "object", + "properties": { + "id": { + "description": "The event ID.", + "type": "string" + } + } + }, + "CallbackConfig": { + "description": "The configuration of service URI and custom headers for the webhook.", + "required": [ + "serviceUri" + ], + "type": "object", + "properties": { + "serviceUri": { + "description": "The service URI for the webhook to post notifications.", + "type": "string" + }, + "customHeaders": { + "description": "Custom headers that will be added to the webhook notifications.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "EventListResult": { + "description": "The result of a request to list events for a webhook.", + "type": "object", + "properties": { + "value": { + "description": "The list of events. Since this list may be incomplete, the nextLink field should be used to request the next list of events.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of events.", + "type": "string" + } + } + }, + "Event": { + "description": "The event for a webhook.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventInfo" + } + ], + "properties": { + "eventRequestMessage": { + "$ref": "#/definitions/EventRequestMessage", + "description": "The event request message sent to the service URI." + }, + "eventResponseMessage": { + "$ref": "#/definitions/EventResponseMessage", + "description": "The event response message received from the service URI." + } + } + }, + "EventRequestMessage": { + "description": "The event request message sent to the service URI.", + "type": "object", + "properties": { + "content": { + "$ref": "#/definitions/EventContent", + "description": "The content of the event request message." + }, + "headers": { + "description": "The headers of the event request message.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "method": { + "description": "The HTTP method used to send the event request message.", + "type": "string" + }, + "requestUri": { + "description": "The URI used to send the event request message.", + "type": "string" + }, + "version": { + "description": "The HTTP message version.", + "type": "string" + } + } + }, + "EventResponseMessage": { + "description": "The event response message received from the service URI.", + "type": "object", + "properties": { + "content": { + "description": "The content of the event response message.", + "type": "string" + }, + "headers": { + "description": "The headers of the event response message.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "reasonPhrase": { + "description": "The reason phrase of the event response message.", + "type": "string" + }, + "statusCode": { + "description": "The status code of the event response message.", + "type": "string" + }, + "version": { + "description": "The HTTP message version.", + "type": "string" + } + } + }, + "EventContent": { + "description": "The content of the event request message.", + "type": "object", + "properties": { + "id": { + "description": "The event ID.", + "type": "string" + }, + "timestamp": { + "format": "date-time", + "description": "The time at which the event occurred.", + "type": "string" + }, + "action": { + "description": "The action that encompasses the provided event.", + "type": "string" + }, + "target": { + "$ref": "#/definitions/Target", + "description": "The target of the event." + }, + "request": { + "$ref": "#/definitions/Request", + "description": "The request that generated the event." + }, + "actor": { + "$ref": "#/definitions/Actor", + "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request." + }, + "source": { + "$ref": "#/definitions/Source", + "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it." + } + } + }, + "Target": { + "description": "The target of the event.", + "type": "object", + "properties": { + "mediaType": { + "description": "The MIME type of the referenced object.", + "type": "string" + }, + "size": { + "format": "int64", + "description": "The number of bytes of the content. Same as Length field.", + "type": "integer" + }, + "digest": { + "description": "The digest of the content, as defined by the Registry V2 HTTP API Specification.", + "type": "string" + }, + "length": { + "format": "int64", + "description": "The number of bytes of the content. Same as Size field.", + "type": "integer" + }, + "repository": { + "description": "The repository name.", + "type": "string" + }, + "url": { + "description": "The direct URL to the content.", + "type": "string" + }, + "tag": { + "description": "The tag name.", + "type": "string" + }, + "name": { + "description": "The name of the artifact.", + "type": "string" + }, + "version": { + "description": "The version of the artifact.", + "type": "string" + } + } + }, + "Request": { + "description": "The request that generated the event.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the request that initiated the event.", + "type": "string" + }, + "addr": { + "description": "The IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request.", + "type": "string" + }, + "host": { + "description": "The externally accessible hostname of the registry instance, as specified by the http host header on incoming requests.", + "type": "string" + }, + "method": { + "description": "The request method that generated the event.", + "type": "string" + }, + "useragent": { + "description": "The user agent header of the request.", + "type": "string" + } + } + }, + "Actor": { + "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request.", + "type": "object", + "properties": { + "name": { + "description": "The subject or username associated with the request context that generated the event.", + "type": "string" + } + } + }, + "Source": { + "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.", + "type": "object", + "properties": { + "addr": { + "description": "The IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port.", + "type": "string" + }, + "instanceID": { + "description": "The running instance of an application. Changes after each restart.", + "type": "string" + } + } + }, + "Resource": { + "description": "An Azure resource.", + "required": [ + "location" + ], + "properties": { + "id": { + "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the resource. This cannot be changed after the resource is created.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Microsoft Azure subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group to which the container registry belongs.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "RegistryNameParameter": { + "name": "registryName", + "in": "path", + "description": "The name of the container registry.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "x-ms-parameter-location": "method" + }, + "WebhookNameParameter": { + "name": "webhookName", + "in": "path", + "description": "The name of the webhook.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "x-ms-parameter-location": "method" + }, + "ReplicationNameParameter": { + "name": "replicationName", + "in": "path", + "description": "The name of the replication.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9]*$", + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} \ No newline at end of file From b8371c4f824f5326a00033bd5ad20913fa8e7c40 Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Mon, 6 May 2019 19:03:07 -0700 Subject: [PATCH 2/8] add examples --- .../examples/ImportImageByManifestDigest.json | 25 +++++++ .../2019-05-01/examples/ImportImageByTag.json | 25 +++++++ .../ImportImageFromPublicRegistry.json | 25 +++++++ .../examples/RegistryCheckNameAvailable.json | 17 +++++ .../RegistryCheckNameNotAvailable.json | 19 +++++ .../2019-05-01/examples/RegistryCreate.json | 74 +++++++++++++++++++ .../2019-05-01/examples/RegistryDelete.json | 13 ++++ .../2019-05-01/examples/RegistryGet.json | 36 +++++++++ .../2019-05-01/examples/RegistryList.json | 38 ++++++++++ .../examples/RegistryListByResourceGroup.json | 39 ++++++++++ .../examples/RegistryListCredentials.json | 25 +++++++ .../examples/RegistryListPolicies.json | 21 ++++++ .../examples/RegistryListUsages.json | 28 +++++++ .../RegistryRegenerateCredential.json | 28 +++++++ .../2019-05-01/examples/RegistryUpdate.json | 73 ++++++++++++++++++ .../examples/RegistryUpdatePolicies.json | 31 ++++++++ .../examples/ReplicationCreate.json | 55 ++++++++++++++ .../examples/ReplicationDelete.json | 14 ++++ .../2019-05-01/examples/ReplicationGet.json | 30 ++++++++ .../2019-05-01/examples/ReplicationList.json | 33 +++++++++ .../examples/ReplicationUpdate.json | 54 ++++++++++++++ .../2019-05-01/examples/WebhookCreate.json | 66 +++++++++++++++++ .../2019-05-01/examples/WebhookDelete.json | 14 ++++ .../2019-05-01/examples/WebhookGet.json | 30 ++++++++ .../examples/WebhookGetCallbackConfig.json | 19 +++++ .../2019-05-01/examples/WebhookList.json | 33 +++++++++ .../examples/WebhookListEvents.json | 63 ++++++++++++++++ .../2019-05-01/examples/WebhookPing.json | 16 ++++ .../2019-05-01/examples/WebhookUpdate.json | 65 ++++++++++++++++ 29 files changed, 1009 insertions(+) create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByManifestDigest.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByTag.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageFromPublicRegistry.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameAvailable.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameNotAvailable.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCreate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryList.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListByResourceGroup.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListCredentials.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListUsages.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryRegenerateCredential.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationCreate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationList.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationUpdate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookCreate.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookDelete.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGet.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGetCallbackConfig.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookList.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookListEvents.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookPing.json create mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookUpdate.json diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByManifestDigest.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByManifestDigest.json new file mode 100644 index 000000000000..ec649f51a16a --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByManifestDigest.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "parameters": { + "source": { + "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry", + "sourceImage": "sourceRepository@sha256:0000000000000000000000000000000000000000000000000000000000000000" + }, + "targetTags": [ + "targetRepository:targetTag" + ], + "untaggedTargetRepositories": [ + "targetRepository1" + ], + "mode": "Force" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByTag.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByTag.json new file mode 100644 index 000000000000..0dd0bfa0bd2d --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageByTag.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "parameters": { + "source": { + "resourceId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourceGroups/sourceResourceGroup/providers/Microsoft.ContainerRegistry/registries/sourceRegistry", + "sourceImage": "sourceRepository:sourceTag" + }, + "targetTags": [ + "targetRepository:targetTag" + ], + "untaggedTargetRepositories": [ + "targetRepository1" + ], + "mode": "Force" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageFromPublicRegistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageFromPublicRegistry.json new file mode 100644 index 000000000000..28af584fe5c6 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ImportImageFromPublicRegistry.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "parameters": { + "source": { + "registryUri": "registry.hub.docker.com", + "sourceImage":"library/hello-world" + }, + "targetTags": [ + "targetRepository:targetTag" + ], + "untaggedTargetRepositories": [ + "targetRepository1" + ], + "mode": "Force" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameAvailable.json new file mode 100644 index 000000000000..ad298cef632c --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameAvailable.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "registryNameCheckRequest": { + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameNotAvailable.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameNotAvailable.json new file mode 100644 index 000000000000..0e37ea5b913c --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCheckNameNotAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "registryNameCheckRequest": { + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The registry myRegistry is already in use." + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCreate.json new file mode 100644 index 000000000000..9603d0895614 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "registry": { + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard" + }, + "properties": { + "adminUserEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The registry is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Creating", + "status": { + "displayStatus": "Provisioning", + "message": "The registry is provisioning.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryDelete.json new file mode 100644 index 000000000000..e5ac6a1503dc --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryGet.json new file mode 100644 index 000000000000..bf200514f342 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The registry is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryList.json new file mode 100644 index 000000000000..8bf9da0812b0 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The registry is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListByResourceGroup.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListByResourceGroup.json new file mode 100644 index 000000000000..7cf5bd248328 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListByResourceGroup.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The registry is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListCredentials.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListCredentials.json new file mode 100644 index 000000000000..4cdd541af9e8 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListCredentials.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "username": "myRegistry", + "passwords": [ + { + "name": "password", + "value": "00000000000000000000000000000000" + }, + { + "name": "password2", + "value": "00000000000000000000000000000000" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json new file mode 100644 index 000000000000..8c2e6a660820 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "quarantinePolicy": { + "status": "enabled" + }, + "trustPolicy": { + "status": "enabled", + "type": "Notary" + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListUsages.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListUsages.json new file mode 100644 index 000000000000..c0af4318b531 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Size", + "limit": 107374182400, + "currentValue": 12345678, + "unit": "Bytes" + }, + { + "name": "Webhooks", + "limit": 10, + "currentValue": 2, + "unit": "Count" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryRegenerateCredential.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryRegenerateCredential.json new file mode 100644 index 000000000000..424711d9d97e --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryRegenerateCredential.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "regenerateCredentialParameters": { + "name": "password" + } + }, + "responses": { + "200": { + "body": { + "username": "myRegistry", + "passwords": [ + { + "name": "password", + "value": "00000000000000000000000000000000" + }, + { + "name": "password2", + "value": "00000000000000000000000000000000" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdate.json new file mode 100644 index 000000000000..a602000be9c6 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "registryUpdateParameters": { + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard" + }, + "properties": { + "adminUserEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The registry is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry", + "name": "myRegistry", + "type": "Microsoft.ContainerRegistry/registries", + "location": "westus", + "tags": { + "key": "value" + }, + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "properties": { + "loginServer": "myregistry.azurecr.io", + "creationDate": "2017-03-01T23:14:37.0707808Z", + "provisioningState": "Updating", + "status": { + "displayStatus": "Provisioning", + "message": "The registry is provisioning.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + }, + "adminUserEnabled": true + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json new file mode 100644 index 000000000000..66e985eaa104 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "registryPoliciesUpdateParameters": { + "quarantinePolicy": { + "status": "disabled" + }, + "trustPolicy": { + "status": "enabled", + "type": "Notary" + } + } + }, + "responses": { + "200": { + "body": { + "quarantinePolicy": { + "status": "disabled" + }, + "trustPolicy": { + "status": "enabled", + "type": "Notary" + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationCreate.json new file mode 100644 index 000000000000..8b691b02dbf8 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationCreate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "replicationName": "myReplication", + "replication": { + "location": "eastus", + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The replication is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Creating", + "status": { + "displayStatus": "Provisioning", + "message": "The replication is provisioning.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationDelete.json new file mode 100644 index 000000000000..290be3489404 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "replicationName": "myReplication" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationGet.json new file mode 100644 index 000000000000..86ff0864fc73 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "replicationName": "myReplication" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The replication is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationList.json new file mode 100644 index 000000000000..10a6b9050d97 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The replication is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationUpdate.json new file mode 100644 index 000000000000..2d8b5d797fb7 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/ReplicationUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "replicationName": "myReplication", + "replicationUpdateParameters": { + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "status": { + "displayStatus": "Ready", + "message": "The replication is ready.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/replications/myReplication", + "name": "myReplication", + "type": "Microsoft.ContainerRegistry/registries/replications", + "location": "eastus", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Updating", + "status": { + "displayStatus": "Provisioning", + "message": "The replication is provisioning.", + "timestamp": "2017-03-01T23:15:37.0707808Z" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookCreate.json new file mode 100644 index 000000000000..26db9e36f611 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook", + "webhookCreateParameters": { + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "serviceUri": "http://myservice.com", + "customHeaders": { + "Authorization": "Basic 000000000000000000000000000000000000000000000000000" + }, + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Creating" + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookDelete.json new file mode 100644 index 000000000000..a38e8a439f52 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGet.json new file mode 100644 index 000000000000..85d93fae47d5 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Succeeded" + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGetCallbackConfig.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGetCallbackConfig.json new file mode 100644 index 000000000000..15a80e75ced1 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookGetCallbackConfig.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook" + }, + "responses": { + "200": { + "body": { + "serviceUri": "http://myservice.com", + "customHeaders": { + "Authorization": "Basic 000000000000000000000000000000000000000000000000000" + } + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookList.json new file mode 100644 index 000000000000..3ae308d41b93 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookListEvents.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookListEvents.json new file mode 100644 index 000000000000..5d0cf2d5a9b3 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookListEvents.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "00000000-0000-0000-0000-000000000000", + "eventRequestMessage": { + "content": { + "id": "00000000-0000-0000-0000-000000000000", + "timestamp": "2017-03-01T23:14:37.0707808Z", + "action": "push", + "target": { + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "size": 708, + "digest": "sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf", + "length": 708, + "repository": "hello-world", + "url": "http://192.168.100.227:5000/v2/hello-world/manifests/sha256:fea8895f450959fa676bcc1df0611ea93823a735a01205fd8622846041d0c7cf", + "tag": "latest" + }, + "request": { + "id": "00000000-0000-0000-0000-000000000000", + "addr": "192.168.64.11:42961", + "host": "192.168.100.227:5000", + "method": "GET", + "useragent": "curl/7.38.0" + }, + "actor": {}, + "source": { + "addr": "xtal.local:5000", + "instanceID": "00000000-0000-0000-0000-000000000000" + } + }, + "headers": { + "Content-Type": "application/json", + "Content-Length": "719", + "Authorization": "******" + }, + "method": "POST", + "requestUri": "http://myservice.com", + "version": "1.1" + }, + "eventResponseMessage": { + "headers": { + "Content-Length": "0" + }, + "statusCode": "200", + "version": "1.1" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookPing.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookPing.json new file mode 100644 index 000000000000..61db2c63803d --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookPing.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000" + } + } + } +} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookUpdate.json new file mode 100644 index 000000000000..06c7f3cc7a3e --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/WebhookUpdate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "webhookName": "myWebhook", + "webhookUpdateParameters": { + "tags": { + "key": "value" + }, + "properties": { + "serviceUri": "http://myservice.com", + "customHeaders": { + "Authorization": "Basic 000000000000000000000000000000000000000000000000000" + }, + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/webhooks/myWebhook", + "name": "myWebhook", + "type": "Microsoft.ContainerRegistry/registries/webhooks", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "status": "enabled", + "scope": "myRepository", + "actions": [ + "push" + ], + "provisioningState": "Updating" + } + } + } + } +} \ No newline at end of file From 14412c3d320aaf18562ded23e3a8120322d3308a Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Mon, 6 May 2019 19:43:35 -0700 Subject: [PATCH 3/8] update readme(s) --- .../resource-manager/readme.go.md | 12 ++++++++++++ .../containerregistry/resource-manager/readme.md | 14 ++++++++++++-- .../resource-manager/readme.nodejs.md | 2 +- .../resource-manager/readme.python.md | 14 +++++++++++++- .../resource-manager/readme.ruby.md | 11 +++++++++++ .../resource-manager/readme.typescript.md | 2 +- 6 files changed, 50 insertions(+), 5 deletions(-) diff --git a/specification/containerregistry/resource-manager/readme.go.md b/specification/containerregistry/resource-manager/readme.go.md index fe01b312389f..5b94af21f1cc 100644 --- a/specification/containerregistry/resource-manager/readme.go.md +++ b/specification/containerregistry/resource-manager/readme.go.md @@ -13,6 +13,8 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-05 + - tag: package-2019-05-preview - tag: package-2019-04 - tag: package-2018-09 - tag: package-2018-02-preview @@ -21,6 +23,16 @@ batch: - tag: package-2017-03 - tag: package-2016-06-preview ``` + +### Tag: package-2018-05 and go + +These settings apply only when `--tag=package-2019-05 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-05' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-05-01/$(namespace) +``` + ### Tag: package-2019-05-preview and go These settings apply only when `--tag=package-2019-05-preview --go` is specified on the command line. diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index 5b3140e66b30..bd319b850922 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -26,7 +26,17 @@ These are the global settings for the ContainerRegistry API. ``` yaml openapi-type: arm -tag: package-2019-05-preview +tag: package-2019-05 +``` + +### Tag: package-2019-05 + +These settings apply only when `--tag=package-2019-05` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05' +input-file: +- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json +- Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json ``` ### Tag: package-2019-05-preview @@ -164,4 +174,4 @@ See configuration in [readme.go.md](./readme.go.md) ## Java -See configuration in [readme.java.md](./readme.java.md) \ No newline at end of file +See configuration in [readme.java.md](./readme.java.md) diff --git a/specification/containerregistry/resource-manager/readme.nodejs.md b/specification/containerregistry/resource-manager/readme.nodejs.md index 4c0c5f55930a..3a94e64e04ca 100644 --- a/specification/containerregistry/resource-manager/readme.nodejs.md +++ b/specification/containerregistry/resource-manager/readme.nodejs.md @@ -12,7 +12,7 @@ nodejs: generate-package-json: true generate-readme-md: true input-file: -- Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json +- Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json - Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json - Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json ``` diff --git a/specification/containerregistry/resource-manager/readme.python.md b/specification/containerregistry/resource-manager/readme.python.md index b8e086e6000a..03047129a599 100644 --- a/specification/containerregistry/resource-manager/readme.python.md +++ b/specification/containerregistry/resource-manager/readme.python.md @@ -18,14 +18,26 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: - - tag: package-2019-04 + - tag: package-2019-05 - tag: package-2019-05-preview + - tag: package-2019-04 - tag: package-2018-09 - tag: package-2018-02-preview - tag: package-2017-10 - tag: package-2017-03 ``` +### Tag: package-2019-05 and python + +These settings apply only when `--tag=package-2019-05 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-05' && $(python) +python: + namespace: azure.mgmt.containerregistry.v2019_05_01 + output-folder: $(python-sdks-folder)/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2019_05_01 +``` + ### Tag: package-2019-05-preview and python These settings apply only when `--tag=package-2019-05-preview --python` is specified on the command line. diff --git a/specification/containerregistry/resource-manager/readme.ruby.md b/specification/containerregistry/resource-manager/readme.ruby.md index 6e20f9c556fa..34a153947ad1 100644 --- a/specification/containerregistry/resource-manager/readme.ruby.md +++ b/specification/containerregistry/resource-manager/readme.ruby.md @@ -12,12 +12,23 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2019-05 - tag: package-2017-10 - tag: package-2017-06-preview - tag: package-2017-03 - tag: package-2016-06-preview ``` +### Tag: package-2019-05 and ruby + +These settings apply only when `--tag=package-2019-05 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-05' && $(ruby) +namespace: "Azure::ContainerRegistry::Mgmt::V2019_05_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_container_registry/lib +``` + ### Tag: package-2017-10 and ruby These settings apply only when `--tag=package-2017-10 --ruby` is specified on the command line. diff --git a/specification/containerregistry/resource-manager/readme.typescript.md b/specification/containerregistry/resource-manager/readme.typescript.md index 76cf46691e74..5ad53f281574 100644 --- a/specification/containerregistry/resource-manager/readme.typescript.md +++ b/specification/containerregistry/resource-manager/readme.typescript.md @@ -5,7 +5,7 @@ Please also specify `--typescript-sdks-folder= Date: Tue, 14 May 2019 17:14:13 -0700 Subject: [PATCH 4/8] policy api refactoring --- .../stable/2019-05-01/containerregistry.json | 240 +++++++----------- 1 file changed, 94 insertions(+), 146 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 25a4463d95d9..b056ec32f623 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 @@ -494,91 +494,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listPolicies": { - "get": { - "tags": [ - "Registries" - ], - "description": "Lists the policies for the specified container registry.", - "operationId": "Registries_ListPolicies", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/RegistryNameParameter" - } - ], - "responses": { - "200": { - "description": "The request was successful; the registry policies were retrieved and returned successfully.", - "schema": { - "$ref": "#/definitions/RegistryPolicies" - } - } - }, - "x-ms-examples": { - "RegistryListPolicies": { - "$ref": "./examples/RegistryListPolicies.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies": { - "post": { - "tags": [ - "Registries" - ], - "description": "Updates the policies for the specified container registry.", - "operationId": "Registries_UpdatePolicies", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/RegistryNameParameter" - }, - { - "name": "registryPoliciesUpdateParameters", - "in": "body", - "description": "The parameters for updating policies of a container registry.", - "required": true, - "schema": { - "$ref": "#/definitions/RegistryPolicies" - } - } - ], - "responses": { - "200": { - "description": "The request was successful; the request was well-formed and received properly.", - "schema": { - "$ref": "#/definitions/RegistryPolicies" - } - }, - "202": { - "description": "The request was successful; the operation will complete asynchronously." - } - }, - "x-ms-examples": { - "RegistryUpdatePolicies": { - "$ref": "./examples/RegistryUpdatePolicies.json" - } - }, - "x-ms-long-running-operation": true - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": { "get": { "tags": [ @@ -1501,6 +1416,10 @@ "networkRuleSet": { "$ref": "#/definitions/NetworkRuleSet", "description": "The network rule set for a container registry." + }, + "policies": { + "$ref": "#/definitions/Policies", + "description": "The policies for a container registry." } } }, @@ -1575,6 +1494,24 @@ } } }, + "Policies": { + "description": "The policies for a container registry.", + "type": "object", + "properties": { + "quarantinePolicy": { + "$ref": "#/definitions/QuarantinePolicy", + "description": "The quarantine policy for a container registry." + }, + "trustPolicy": { + "$ref": "#/definitions/TrustPolicy", + "description": "The content trust policy for a container registry." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "The retention policy for a container registry." + } + } + }, "VirtualNetworkRule": { "description": "Virtual network rule.", "required": [ @@ -1627,6 +1564,74 @@ } } }, + "QuarantinePolicy": { + "description": "The quarantine policy for a container registry.", + "type": "object", + "properties": { + "status": { + "description": "The value that indicates whether the policy is enabled or not.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + } + } + }, + "TrustPolicy": { + "description": "The content trust policy for a container registry.", + "type": "object", + "properties": { + "type": { + "description": "The type of trust policy.", + "enum": [ + "Notary" + ], + "type": "string", + "x-ms-enum": { + "name": "TrustPolicyType", + "modelAsString": true + } + }, + "status": { + "description": "The value that indicates whether the policy is enabled or not.", + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + } + } + }, + "RetentionPolicy": { + "description": "The retention policy for a container registry.", + "type": "object", + "properties": { + "days": { + "format": "double", + "description": "The number of days to retain manifest before it expires.", + "type": "number" + }, + "lastUpdatedTime": { + "format": "date-time", + "description": "The timestamp when the the policy was last updated.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The value that indicates whether the policy is enabled or not.", + "type": "string" + } + } + }, "RegistryUpdateParameters": { "description": "The parameters for updating a container registry.", "type": "object", @@ -1660,6 +1665,10 @@ "networkRuleSet": { "$ref": "#/definitions/NetworkRuleSet", "description": "The network rule set for a container registry." + }, + "policies": { + "$ref": "#/definitions/Policies", + "description": "The policies for a container registry." } } }, @@ -1785,67 +1794,6 @@ } } }, - "RegistryPolicies": { - "description": "An object that represents policies for a container registry.", - "type": "object", - "properties": { - "quarantinePolicy": { - "$ref": "#/definitions/QuarantinePolicy", - "description": "An object that represents quarantine policy for a container registry." - }, - "trustPolicy": { - "$ref": "#/definitions/TrustPolicy", - "description": "An object that represents content trust policy for a container registry." - } - } - }, - "QuarantinePolicy": { - "description": "An object that represents quarantine policy for a container registry.", - "type": "object", - "properties": { - "status": { - "description": "The value that indicates whether the policy is enabled or not.", - "enum": [ - "enabled", - "disabled" - ], - "type": "string", - "x-ms-enum": { - "name": "PolicyStatus", - "modelAsString": true - } - } - } - }, - "TrustPolicy": { - "description": "An object that represents content trust policy for a container registry.", - "type": "object", - "properties": { - "type": { - "description": "The type of trust policy.", - "enum": [ - "Notary" - ], - "type": "string", - "x-ms-enum": { - "name": "TrustPolicyType", - "modelAsString": true - } - }, - "status": { - "description": "The value that indicates whether the policy is enabled or not.", - "enum": [ - "enabled", - "disabled" - ], - "type": "string", - "x-ms-enum": { - "name": "PolicyStatus", - "modelAsString": true - } - } - } - }, "Replication": { "description": "An object that represents a replication for a container registry.", "type": "object", From 52d06765b86310cbcf4c725a815cc74c0b215542 Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Wed, 15 May 2019 16:49:38 -0700 Subject: [PATCH 5/8] lint: incompatible description fix --- .../stable/2019-05-01/containerregistry.json | 6 +++--- 1 file changed, 3 insertions(+), 3 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 b056ec32f623..899d438af169 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 @@ -2370,17 +2370,17 @@ ], "properties": { "id": { - "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}", + "description": "The resource ID.", "type": "string", "readOnly": true }, "name": { - "description": "The name of the resource", + "description": "The name of the resource.", "type": "string", "readOnly": true }, "type": { - "description": "The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.", + "description": "The type of the resource.", "type": "string", "readOnly": true }, From 11392139d124b7f835a9315178fe5b35e977f9a9 Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Thu, 16 May 2019 19:37:21 -0700 Subject: [PATCH 6/8] lint: remove unused examples --- .../examples/RegistryListPolicies.json | 21 ------------- .../examples/RegistryUpdatePolicies.json | 31 ------------------- 2 files changed, 52 deletions(-) delete mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json delete mode 100644 specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json deleted file mode 100644 index 8c2e6a660820..000000000000 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryListPolicies.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "parameters": { - "api-version": "2019-05-01", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "myResourceGroup", - "registryName": "myRegistry" - }, - "responses": { - "200": { - "body": { - "quarantinePolicy": { - "status": "enabled" - }, - "trustPolicy": { - "status": "enabled", - "type": "Notary" - } - } - } - } -} \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json deleted file mode 100644 index 66e985eaa104..000000000000 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2019-05-01/examples/RegistryUpdatePolicies.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parameters": { - "api-version": "2019-05-01", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "myResourceGroup", - "registryName": "myRegistry", - "registryPoliciesUpdateParameters": { - "quarantinePolicy": { - "status": "disabled" - }, - "trustPolicy": { - "status": "enabled", - "type": "Notary" - } - } - }, - "responses": { - "200": { - "body": { - "quarantinePolicy": { - "status": "disabled" - }, - "trustPolicy": { - "status": "enabled", - "type": "Notary" - } - } - }, - "202": {} - } -} \ No newline at end of file From d0e008cbbdfe87dabde1f914480464e9ea4158aa Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Thu, 23 May 2019 17:06:32 -0700 Subject: [PATCH 7/8] make retention policy status as enum, undo ruby readme --- .../stable/2019-05-01/containerregistry.json | 10 +++++++++- .../containerregistry/resource-manager/readme.ruby.md | 11 ----------- 2 files changed, 9 insertions(+), 12 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 899d438af169..4c932d63f796 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 @@ -1628,7 +1628,15 @@ }, "status": { "description": "The value that indicates whether the policy is enabled or not.", - "type": "string" + "enum": [ + "enabled", + "disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } } } }, diff --git a/specification/containerregistry/resource-manager/readme.ruby.md b/specification/containerregistry/resource-manager/readme.ruby.md index 34a153947ad1..6e20f9c556fa 100644 --- a/specification/containerregistry/resource-manager/readme.ruby.md +++ b/specification/containerregistry/resource-manager/readme.ruby.md @@ -12,23 +12,12 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: - - tag: package-2019-05 - tag: package-2017-10 - tag: package-2017-06-preview - tag: package-2017-03 - tag: package-2016-06-preview ``` -### Tag: package-2019-05 and ruby - -These settings apply only when `--tag=package-2019-05 --ruby` is specified on the command line. -Please also specify `--ruby-sdks-folder=`. - -``` yaml $(tag) == 'package-2019-05' && $(ruby) -namespace: "Azure::ContainerRegistry::Mgmt::V2019_05_01" -output-folder: $(ruby-sdks-folder)/management/azure_mgmt_container_registry/lib -``` - ### Tag: package-2017-10 and ruby These settings apply only when `--tag=package-2017-10 --ruby` is specified on the command line. From 49512e0088d26b1c5cd6e53d41c15b9a40dffaa8 Mon Sep 17 00:00:00 2001 From: ankurkhemani Date: Thu, 23 May 2019 17:37:00 -0700 Subject: [PATCH 8/8] change retention days to integer --- .../stable/2019-05-01/containerregistry.json | 4 ++-- 1 file changed, 2 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 4c932d63f796..c05a2c1520cf 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 @@ -1616,9 +1616,9 @@ "type": "object", "properties": { "days": { - "format": "double", + "format": "int32", "description": "The number of days to retain manifest before it expires.", - "type": "number" + "type": "integer" }, "lastUpdatedTime": { "format": "date-time",