diff --git a/custom-words.txt b/custom-words.txt index 4efaef98677a..666a45f94f65 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -478,6 +478,7 @@ Cyrl dacl dailyforecast dailyhistorical +dapr darkgrey Darussalam databox diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/CommonDefinitions.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/CommonDefinitions.json new file mode 100644 index 000000000000..920e6fb3bc9d --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/CommonDefinitions.json @@ -0,0 +1,415 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-01-01-preview", + "title": "ContainerApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "EnvironmentVar": { + "description": "Container App container environment variable.", + "type": "object", + "properties": { + "name": { + "description": "Environment variable name.", + "type": "string" + }, + "value": { + "description": "Non-secret environment variable value.", + "type": "string" + }, + "secretRef": { + "description": "Name of the Container App secret from which to pull the environment variable value.", + "type": "string" + } + } + }, + "Container": { + "description": "Container App container definition.", + "type": "object", + "properties": { + "image": { + "description": "Container image tag.", + "type": "string" + }, + "name": { + "description": "Custom container name.", + "type": "string" + }, + "command": { + "description": "Container start command.", + "type": "array", + "items": { + "type": "string" + } + }, + "args": { + "description": "Container start command arguments.", + "type": "array", + "items": { + "type": "string" + } + }, + "env": { + "description": "Container environment variables.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVar" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "resources": { + "$ref": "#/definitions/ContainerResources", + "description": "Container resource requirements." + } + } + }, + "ContainerResources": { + "description": "Container App container resource requirements.", + "type": "object", + "properties": { + "cpu": { + "format": "double", + "description": "Required CPU in cores, e.g. 0.5", + "type": "number" + }, + "memory": { + "description": "Required memory, e.g. \"250Mb\"", + "type": "string" + } + } + }, + "CustomScaleRule": { + "description": "Container App container Custom scaling rule.", + "type": "object", + "properties": { + "type": { + "description": "Type of the custom scale rule\neg: azure-servicebus, redis etc.", + "type": "string" + }, + "metadata": { + "description": "Metadata properties to describe custom scale rule.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "auth": { + "description": "Authentication secrets for the custom scale rule.", + "type": "array", + "items": { + "$ref": "#/definitions/ScaleRuleAuth" + }, + "x-ms-identifiers": [ + "triggerParameter" + ] + } + } + }, + "Dapr": { + "description": "Container App Dapr configuration.", + "type": "object", + "properties": { + "enabled": { + "description": "Boolean indicating if the Dapr side car is enabled", + "type": "boolean" + }, + "appId": { + "description": "Dapr application identifier", + "type": "string" + }, + "appPort": { + "format": "int32", + "description": "Port on which the Dapr side car", + "type": "integer" + }, + "components": { + "description": "Collection of Dapr components", + "type": "array", + "items": { + "$ref": "#/definitions/DaprComponent" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "DaprComponent": { + "description": "Dapr component configuration", + "type": "object", + "properties": { + "name": { + "description": "Component name", + "type": "string" + }, + "type": { + "description": "Component type", + "type": "string" + }, + "version": { + "description": "Component version", + "type": "string" + }, + "metadata": { + "description": "Component metadata", + "type": "array", + "items": { + "$ref": "#/definitions/DaprMetadata" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "DaprMetadata": { + "description": "Container App Dapr component metadata.", + "type": "object", + "properties": { + "name": { + "description": "Metadata property name.", + "type": "string" + }, + "value": { + "description": "Metadata property value.", + "type": "string" + }, + "secretRef": { + "description": "Name of the Container App secret from which to pull the metadata property value.", + "type": "string" + } + } + }, + "DefaultErrorResponse": { + "description": "App Service error response.", + "type": "object", + "properties": { + "error": { + "description": "Error model.", + "type": "object", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "details": { + "type": "array", + "description": "Details or the error", + "items": { + "description": "Detailed errors.", + "type": "object", + "properties": { + "code": { + "description": "Standardized string to programmatically identify the error.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "Detailed error description and debugging information.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "x-ms-identifiers": [ + "code" + ] + }, + "innererror": { + "description": "More information to debug error.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + } + }, + "HttpScaleRule": { + "description": "Container App container Custom scaling rule.", + "type": "object", + "properties": { + "metadata": { + "description": "Metadata properties to describe http scale rule.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "auth": { + "description": "Authentication secrets for the custom scale rule.", + "type": "array", + "items": { + "$ref": "#/definitions/ScaleRuleAuth" + }, + "x-ms-identifiers": [ + "triggerParameter" + ] + } + } + }, + "QueueScaleRule": { + "description": "Container App container Azure Queue based scaling rule.", + "type": "object", + "properties": { + "queueName": { + "description": "Queue name.", + "type": "string" + }, + "queueLength": { + "format": "int32", + "description": "Queue length.", + "type": "integer" + }, + "auth": { + "description": "Authentication secrets for the queue scale rule.", + "type": "array", + "items": { + "$ref": "#/definitions/ScaleRuleAuth" + }, + "x-ms-identifiers": [ + "triggerParameter" + ] + } + } + }, + "Scale": { + "description": "Container App scaling configurations.", + "type": "object", + "properties": { + "minReplicas": { + "format": "int32", + "description": "Optional. Minimum number of container replicas.", + "type": "integer" + }, + "maxReplicas": { + "format": "int32", + "description": "Optional. Maximum number of container replicas. Defaults to 10 if not set.", + "type": "integer" + }, + "rules": { + "description": "Scaling rules.", + "type": "array", + "items": { + "$ref": "#/definitions/ScaleRule" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "ScaleRule": { + "description": "Container App container scaling rule.", + "type": "object", + "properties": { + "name": { + "description": "Scale Rule Name", + "type": "string" + }, + "azureQueue": { + "$ref": "#/definitions/QueueScaleRule", + "description": "Azure Queue based scaling." + }, + "custom": { + "$ref": "#/definitions/CustomScaleRule", + "description": "Custom scale rule." + }, + "http": { + "$ref": "#/definitions/HttpScaleRule", + "description": "HTTP requests based scaling." + } + } + }, + "ScaleRuleAuth": { + "description": "Auth Secrets for Container App Scale Rule", + "type": "object", + "properties": { + "secretRef": { + "description": "Name of the Container App secret from which to pull the auth params.", + "type": "string" + }, + "triggerParameter": { + "description": "Trigger Parameter that uses the secret", + "type": "string" + } + } + }, + "Template": { + "description": "Container App versioned application definition.\nDefines the desired state of an immutable revision.\nAny changes to this section Will result in a new revision being created", + "type": "object", + "properties": { + "revisionSuffix": { + "description": "User friendly suffix that is appended to the revision name", + "type": "string" + }, + "containers": { + "description": "List of container definitions for the Container App.", + "type": "array", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "scale": { + "$ref": "#/definitions/Scale", + "description": "Scaling properties for the Container App." + }, + "dapr": { + "$ref": "#/definitions/Dapr", + "description": "Dapr configuration for the Container App." + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerApps.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerApps.json new file mode 100644 index 000000000000..3546171f470c --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerApps.json @@ -0,0 +1,574 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-01-01-preview", + "title": "ContainerApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.App/containerApps": { + "get": { + "tags": [ + "ContainerApps" + ], + "summary": "Get the Container Apps in a given subscription.", + "operationId": "ContainerApps_ListBySubscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerAppCollection" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Container Apps by subscription": { + "$ref": "./examples/ContainerApps_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps": { + "get": { + "tags": [ + "ContainerApps" + ], + "summary": "Get the Container Apps in a given resource group.", + "operationId": "ContainerApps_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerAppCollection" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Container Apps by resource group": { + "$ref": "./examples/ContainerApps_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{name}": { + "get": { + "tags": [ + "ContainerApps" + ], + "summary": "Get the properties of a Container App.", + "operationId": "ContainerApps_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ContainerApp" + } + }, + "404": { + "description": "Not found.", + "x-ms-error-response": true + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Container App": { + "$ref": "./examples/ContainerApps_Get.json" + } + } + }, + "put": { + "tags": [ + "ContainerApps" + ], + "summary": "Create or update a Container App.", + "description": "Description for Create or update a Container App.", + "operationId": "ContainerApps_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "containerAppEnvelope", + "in": "body", + "description": "Properties used to create a container app", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerApp" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "No change performed on the Container App.", + "schema": { + "$ref": "#/definitions/ContainerApp" + } + }, + "201": { + "description": "Container App create or update has been started.", + "schema": { + "$ref": "#/definitions/ContainerApp" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update Container App": { + "$ref": "./examples/ContainerApps_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ContainerApps" + ], + "summary": "Delete a Container App.", + "description": "Description for Delete a Container App.", + "operationId": "ContainerApps_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Container App deleted successfully." + }, + "202": { + "description": "Delete operation is in progress." + }, + "204": { + "description": "Container App does not exist." + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Container App": { + "$ref": "./examples/ContainerApps_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ContainerApps" + ], + "summary": "Update properties of a Container App", + "description": "Patches a Container App. Currently only patching of tags is supported", + "operationId": "ContainerApps_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "containerAppEnvelope", + "in": "body", + "required": true, + "description": "Properties of a container app that need to be updated", + "schema": { + "$ref": "#/definitions/ContainerAppPatch" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Container App updated successfully.", + "schema": { + "$ref": "#/definitions/ContainerApp" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Container App": { + "$ref": "./examples/ContainerApps_Patch.json" + } + } + } + } + }, + "definitions": { + "Configuration": { + "description": "Non versioned Container App configuration properties that define the mutable settings of a Container app", + "type": "object", + "properties": { + "secrets": { + "description": "Collection of secrets used by a Container app", + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "activeRevisionsMode": { + "description": "ActiveRevisionsMode controls how active revisions are handled for the Container app:\nMultiple: multiple revisions can be active. If no value if provided, this is the defaultSingle: Only one revision can be active at a time. Revision weights can not be used in this mode", + "enum": [ + "multiple", + "single" + ], + "type": "string", + "x-ms-enum": { + "name": "ActiveRevisionsMode", + "modelAsString": true + } + }, + "ingress": { + "$ref": "#/definitions/Ingress", + "description": "Ingress configurations." + }, + "registries": { + "description": "Collection of private container registry credentials for containers used by the Container app", + "type": "array", + "items": { + "$ref": "#/definitions/RegistryCredentials" + }, + "x-ms-identifiers": [ + "server" + ] + } + } + }, + "ContainerApp": { + "description": "Container App.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "ContainerApp resource specific properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the Container App.", + "enum": [ + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ContainerAppProvisioningState", + "modelAsString": true + } + }, + "managedEnvironmentId": { + "description": "Resource ID of the Container App's environment.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "latestRevisionName": { + "description": "Name of the latest revision of the Container App.", + "type": "string", + "readOnly": true + }, + "latestRevisionFqdn": { + "description": "Fully Qualified Domain Name of the latest revision of the Container App.", + "type": "string", + "readOnly": true + }, + "configuration": { + "$ref": "#/definitions/Configuration", + "description": "Non versioned Container App configuration properties." + }, + "template": { + "$ref": "./CommonDefinitions.json#/definitions/Template", + "description": "Container App versioned application definition." + } + }, + "x-ms-client-flatten": true + } + } + }, + "ContainerAppCollection": { + "description": "Container App collection ARM resource.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerApp" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ContainerAppPatch": { + "description": "Container App Patch.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + } + }, + "Ingress": { + "description": "Container App Ingress configuration.", + "type": "object", + "properties": { + "fqdn": { + "description": "Hostname.", + "type": "string", + "readOnly": true + }, + "external": { + "description": "Bool indicating if app exposes an external http endpoint", + "default": false, + "type": "boolean" + }, + "targetPort": { + "format": "int32", + "description": "Target Port in containers for traffic from ingress", + "type": "integer" + }, + "transport": { + "description": "Ingress transport protocol", + "enum": [ + "auto", + "http", + "http2" + ], + "type": "string", + "x-ms-enum": { + "name": "IngressTransportMethod", + "modelAsString": true + } + }, + "traffic": { + "description": "Traffic weights for app's revisions", + "type": "array", + "items": { + "$ref": "#/definitions/TrafficWeight" + }, + "x-ms-identifiers": [ + "revisionName" + ] + }, + "allowInsecure": { + "description": "Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically redirected to HTTPS connections", + "type": "boolean" + } + } + }, + "RegistryCredentials": { + "description": "Container App Private Registry", + "type": "object", + "properties": { + "server": { + "description": "Container Registry Server", + "type": "string" + }, + "username": { + "description": "Container Registry Username", + "type": "string" + }, + "passwordSecretRef": { + "description": "The name of the Secret that contains the registry login password", + "type": "string" + } + } + }, + "Secret": { + "description": "Container App Secret.", + "type": "object", + "properties": { + "name": { + "description": "Secret Name.", + "type": "string" + }, + "value": { + "description": "Secret Value.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + } + }, + "TrafficWeight": { + "description": "Traffic weight assigned to a revision", + "type": "object", + "properties": { + "revisionName": { + "description": "Name of a revision", + "type": "string" + }, + "weight": { + "format": "int32", + "description": "Traffic weight assigned to a revision", + "type": "integer" + }, + "latestRevision": { + "description": "Indicates that the traffic weight belongs to a latest stable revision", + "default": false, + "type": "boolean" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerAppsRevisions.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerAppsRevisions.json new file mode 100644 index 000000000000..a2ae398ab3fb --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ContainerAppsRevisions.json @@ -0,0 +1,398 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-01-01-preview", + "title": "ContainerApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions": { + "get": { + "tags": [ + "ContainerAppsRevisions" + ], + "summary": "Get the Revisions for a given Container App.", + "operationId": "ContainerAppsRevisions_ListRevisions", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "containerAppName", + "in": "path", + "description": "Name of the Container App for which Revisions are needed.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RevisionCollection" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List Container App's revisions": { + "$ref": "./examples/Revisions_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{name}": { + "get": { + "tags": [ + "ContainerAppsRevisions" + ], + "summary": "Get a revision of a Container App.", + "operationId": "ContainerAppsRevisions_GetRevision", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "containerAppName", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App Revision.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Revision" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Container App's revision": { + "$ref": "./examples/Revisions_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{name}/activate": { + "post": { + "tags": [ + "ContainerAppsRevisions" + ], + "summary": "Activates a revision for a Container App", + "operationId": "ContainerAppsRevisions_ActivateRevision", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "containerAppName", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App Revision.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Container App revision was activated" + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Activate Container App's revision": { + "$ref": "./examples/Revisions_Activate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{name}/deactivate": { + "post": { + "tags": [ + "ContainerAppsRevisions" + ], + "summary": "Deactivates a revision for a Container App", + "operationId": "ContainerAppsRevisions_DeactivateRevision", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "containerAppName", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App Revision.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Container App revision was deactivated" + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Deactivate Container App's revision": { + "$ref": "./examples/Revisions_Deactivate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/containerApps/{containerAppName}/revisions/{name}/restart": { + "post": { + "tags": [ + "ContainerAppsRevisions" + ], + "summary": "Restarts a revision for a Container App", + "operationId": "ContainerAppsRevisions_RestartRevision", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "containerAppName", + "in": "path", + "description": "Name of the Container App.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Container App Revision.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Container App revision was restarted" + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Restart Container App's revision": { + "$ref": "./examples/Revisions_Restart.json" + } + } + } + } + }, + "definitions": { + "Revision": { + "description": "Container App Revision.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Revision resource specific properties", + "type": "object", + "properties": { + "createdTime": { + "format": "date-time", + "description": "Timestamp describing when the revision was created\nby controller", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "Fully qualified domain name of the revision", + "type": "string", + "readOnly": true + }, + "template": { + "$ref": "./CommonDefinitions.json#/definitions/Template", + "description": "Container App Revision Template with all possible settings and the\ndefaults if user did not provide them. The defaults are populated\nas they were at the creation time", + "readOnly": true + }, + "active": { + "description": "Boolean describing if the Revision is Active", + "type": "boolean", + "readOnly": true + }, + "replicas": { + "format": "int32", + "description": "Number of pods currently running for this revision", + "type": "integer", + "readOnly": true + }, + "trafficWeight": { + "format": "int32", + "description": "Traffic weight assigned to this revision", + "type": "integer", + "readOnly": true + }, + "provisioningError": { + "description": "Optional Field - Platform Error Message", + "type": "string", + "readOnly": true + }, + "healthState": { + "description": "Current health State of the revision", + "enum": [ + "Healthy", + "Unhealthy", + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RevisionHealthState", + "modelAsString": true + } + }, + "provisioningState": { + "description": "Current provisioning State of the revision", + "enum": [ + "Provisioning", + "Provisioned", + "Failed", + "Deprovisioning", + "Deprovisioned" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RevisionProvisioningState", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "RevisionCollection": { + "description": "Container App Revisions collection ARM resource.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Revision" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/Global.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/Global.json new file mode 100644 index 000000000000..a60af63ef565 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/Global.json @@ -0,0 +1,149 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-01-01-preview", + "title": "ContainerApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.App/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available RP operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AvailableOperations" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all operations": { + "$ref": "./examples/Operations_List.json" + } + } + } + } + }, + "definitions": { + "AvailableOperations": { + "description": "Available operations of the service", + "type": "object", + "properties": { + "value": { + "description": "Collection of available operation details", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationDetail" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "nextLink": { + "description": "URL client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "OperationDetail": { + "description": "Operation detail payload", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Display of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + } + } + }, + "OperationDisplay": { + "description": "Operation display payload", + "type": "object", + "properties": { + "provider": { + "description": "Resource provider of the operation", + "type": "string" + }, + "resource": { + "description": "Resource of the operation", + "type": "string" + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string" + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ManagedEnvironments.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ManagedEnvironments.json new file mode 100644 index 000000000000..840bd906a7df --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/ManagedEnvironments.json @@ -0,0 +1,524 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-01-01-preview", + "title": "ContainerApps API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.App/managedEnvironments": { + "get": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Get all Environments for a subscription.", + "description": "Get all Managed Environments for a subscription.", + "operationId": "ManagedEnvironments_ListBySubscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedEnvironmentsCollection" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List environments by subscription": { + "$ref": "./examples/ManagedEnvironments_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments": { + "get": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Get all the Environments in a resource group.", + "description": "Get all the Managed Environments in a resource group.", + "operationId": "ManagedEnvironments_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedEnvironmentsCollection" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List environments by resource group": { + "$ref": "./examples/ManagedEnvironments_ListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/managedEnvironments/{name}": { + "get": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Get the properties of a Managed Environment.", + "description": "Get the properties of a Managed Environment used to host container apps.", + "operationId": "ManagedEnvironments_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get environments by name": { + "$ref": "./examples/ManagedEnvironments_Get.json" + } + } + }, + "put": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Creates or updates a Managed Environment.", + "description": "Creates or updates a Managed Environment used to host container apps.", + "operationId": "ManagedEnvironments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Environment.", + "required": true, + "type": "string" + }, + { + "name": "environmentEnvelope", + "in": "body", + "description": "Configuration details of the Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create environments": { + "$ref": "./examples/ManagedEnvironments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Delete a Managed Environment.", + "description": "Delete a Managed Environment if it does not have any container apps.", + "operationId": "ManagedEnvironments_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Environment.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete operation completed" + }, + "202": { + "description": "Delete operation is in progress" + }, + "204": { + "description": "Environment does not exist" + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete environment by name": { + "$ref": "./examples/ManagedEnvironments_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ManagedEnvironments" + ], + "summary": "Update Managed Environment's properties.", + "description": "Patches a Managed Environment. Only patching of tags is supported currently", + "operationId": "ManagedEnvironments_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the Environment.", + "required": true, + "type": "string" + }, + { + "name": "environmentEnvelope", + "in": "body", + "description": "Configuration details of the Environment.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedEnvironmentPatch" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + "default": { + "description": "Common error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch Managed Environment": { + "$ref": "./examples/ManagedEnvironments_Patch.json" + } + } + } + } + }, + "definitions": { + "AppLogsConfiguration": { + "description": "Configuration of application logs", + "type": "object", + "properties": { + "destination": { + "description": "Logs destination", + "type": "string" + }, + "logAnalyticsConfiguration": { + "description": "Log Analytics configuration", + "$ref": "#/definitions/LogAnalyticsConfiguration" + } + } + }, + "VnetConfiguration": { + "type": "object", + "description": "Configuration properties for apps environment to join a Virtual Network", + "properties": { + "infrastructureSubnetId": { + "type": "string", + "description": "Resource ID of a subnet for infrastructure components. This subnet must be in the same VNET as the subnet defined in runtimeSubnetId. Must not overlap with any other provided IP ranges.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "runtimeSubnetId": { + "type": "string", + "description": "Resource ID of a subnet that Container App containers are injected into. This subnet must be in the same VNET as the subnet defined in infrastructureSubnetId. Must not overlap with any other provided IP ranges.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "dockerBridgeCidr": { + "type": "string", + "description": "CIDR notation IP range assigned to the Docker bridge, network. Must not overlap with any other provided IP ranges.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "platformReservedCidr": { + "type": "string", + "description": "IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. Must not overlap with any other provided IP ranges.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "platformReservedDnsIP": { + "type": "string", + "description": " An IP address from the IP range defined by platformReservedCidr that will be reserved for the internal DNS server.", + "x-ms-mutability": [ + "create", + "read" + ] + } + } + }, + "ManagedEnvironment": { + "description": "An environment for hosting container apps", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Environment resource specific properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the Environment.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Waiting", + "InitializationInProgress", + "InfrastructureSetupInProgress", + "InfrastructureSetupComplete", + "ScheduledForDelete", + "UpgradeRequested", + "UpgradeFailed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EnvironmentProvisioningState", + "modelAsString": true + } + }, + "daprAIInstrumentationKey": { + "type": "string", + "description": "Azure Monitor instrumentation key used by Dapr to export Service to Service communication telemetry", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "vnetConfiguration": { + "description": "Vnet configuration for the environment", + "$ref": "#/definitions/VnetConfiguration" + }, + "deploymentErrors": { + "description": "Any errors that occurred during deployment or deployment validation", + "type": "string", + "readOnly": true + }, + "internalLoadBalancerEnabled": { + "description": "Only visible within Vnet/Subnet", + "type": "boolean", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "defaultDomain": { + "description": "Default Domain Name for the cluster", + "type": "string", + "readOnly": true + }, + "staticIp": { + "description": "Static IP of the Environment", + "type": "string", + "readOnly": true + }, + "appLogsConfiguration": { + "$ref": "#/definitions/AppLogsConfiguration", + "description": "Cluster configuration which enables the log daemon to export\napp logs to a destination. Currently only \"log-analytics\" is\nsupported" + } + }, + "x-ms-client-flatten": true + } + } + }, + "ManagedEnvironmentsCollection": { + "description": "Collection of Environments", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedEnvironment" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedEnvironmentPatch": { + "description": "An environment for hosting container apps", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application-specific metadata in the form of key-value pairs." + } + } + }, + "LogAnalyticsConfiguration": { + "description": "Log analytics configuration", + "type": "object", + "properties": { + "customerId": { + "description": "Log analytics customer id", + "type": "string" + }, + "sharedKey": { + "description": "Log analytics customer key", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/app.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/app.json deleted file mode 100644 index d8778e8a2011..000000000000 --- a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/app.json +++ /dev/null @@ -1,132 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2022-01-01-preview", - "title": "app", - "description": "Description of the new service", - "x-ms-code-generation-settings": { - "name": "appClient" - } - }, - "host": "management.azure.com", - "schemes": ["https"], - "consumes": ["application/json"], - "produces": ["application/json"], - "security": [ - { - "azure_auth": ["user_impersonation"] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.App/operations": { - "get": { - "tags": ["Tag1"], - "operationId": "OperationGroup_Get", - "x-ms-examples": { - "BatchAccountDelete": { "$ref": "./examples/OperationGroupGet.json" } - }, - "description": "This is a sample get operation, please see guidelines in azure-rest-api-specs repository for more info", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "Describe the result of a successful operation.", - "schema": { - "$ref": "#/definitions/Result" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - } - }, - "definitions": { - "Result": { - "description": "Sample result definition", - "properties": { - "sampleProperty": { - "type": "string", - "description": "Sample property of type string" - } - } - }, - "ErrorResponse": { - "description": "Error response.", - "properties": { - "error": { - "$ref": "#/definitions/ErrorDefinition", - "description": "The error details." - } - } - }, - "ErrorDefinition": { - "description": "Error definition.", - "properties": { - "code": { - "description": "Service specific error code which serves as the substatus for the HTTP error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Description of the error.", - "type": "string", - "readOnly": true - }, - "details": { - "description": "Internal error details.", - "type": "array", - "items": { - "$ref": "#/definitions/ErrorDefinition" - }, - "readOnly": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to be used with the HTTP request." - } - } -} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_CreateOrUpdate.json new file mode 100644 index 000000000000..1b05daa84158 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_CreateOrUpdate.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testcontainerApp0", + "api-version": "2022-01-01-preview", + "containerAppEnvelope": { + "location": "East US", + "properties": { + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube", + "configuration": { + "ingress": { + "external": true, + "targetPort": 3000 + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v1", + "name": "testcontainerApp0" + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "custom": { + "type": "http", + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "properties": { + "provisioningState": "Succeeded", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/kubeEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + }, + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "properties": { + "provisioningState": "InProgress", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/kubeEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Delete.json new file mode 100644 index 000000000000..420bed6a0dc5 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testWorkerApp0", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.App/workerApps/testWorkerApp0/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2021-02-01" + } + }, + "204": {} + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Get.json new file mode 100644 index 000000000000..2194863d1c4b --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testcontainerApp0", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "properties": { + "provisioningState": "Succeeded", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + }, + "404": {} + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListByResourceGroup.json new file mode 100644 index 000000000000..85c441949e13 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListByResourceGroup.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "properties": { + "provisioningState": "Succeeded", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListBySubscription.json new file mode 100644 index 000000000000..2e9fd134a9aa --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_ListBySubscription.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "properties": { + "provisioningState": "Succeeded", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/managedEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Patch.json new file mode 100644 index 000000000000..8409b7c1c381 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ContainerApps_Patch.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testcontainerApp0", + "api-version": "2022-01-01-preview", + "containerAppEnvelope": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0", + "name": "testcontainerApp0", + "type": "Microsoft.App/containerApps", + "location": "East US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "managedEnvironmentId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/kubeEnvironments/demokube", + "latestRevisionFqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "configuration": { + "ingress": { + "fqdn": "testcontainerApp0.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "external": true, + "targetPort": 3000, + "transport": "auto" + } + }, + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v4", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + } + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_CreateOrUpdate.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_CreateOrUpdate.json new file mode 100644 index 000000000000..640ce9846b09 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_CreateOrUpdate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "testcontainerenv", + "api-version": "2022-01-01-preview", + "location": "East US", + "environmentEnvelope": { + "location": "East US", + "properties": { + "appLogsConfiguration": { + "logAnalyticsConfiguration": { + "customerId": "string", + "sharedKey": "string" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv", + "name": "testcontainerenv", + "type": "Microsoft.App/managedEnvironments", + "location": "East US", + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testcontainerenv.k4apps.io", + "staticIp": "1.2.3.4", + "appLogsConfiguration": { + "logAnalyticsConfiguration": { + "customerId": "string" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv", + "name": "testcontainerenv", + "type": "Microsoft.App/managedEnvironments", + "location": "East US", + "properties": { + "provisioningState": "InitializationInProgress", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testcontainerenv.k4apps.io", + "staticIp": "1.2.3.4", + "appLogsConfiguration": { + "logAnalyticsConfiguration": { + "customerId": "string" + } + } + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Delete.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Delete.json new file mode 100644 index 000000000000..b322bbcf5aaf --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "examplekenv", + "api-version": "2022-01-01-preview", + "location": "East US" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Get.json new file mode 100644 index 000000000000..24ccc069bae7 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "resourceGroupName": "examplerg", + "name": "jlaw-demo1", + "location": "North Central US", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.App/managedEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145" + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListByResourceGroup.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListByResourceGroup.json new file mode 100644 index 000000000000..17aaacf5b93c --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "resourceGroupName": "examplerg", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.App/managedEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145", + "appLogsConfiguration": null + } + }, + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/demo1", + "name": "demo1", + "type": "Microsoft.App/managedEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "demo1.k4apps.io", + "staticIp": "52.142.21.61", + "appLogsConfiguration": null + } + } + ] + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListBySubscription.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListBySubscription.json new file mode 100644 index 000000000000..7a482b66afe3 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_ListBySubscription.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "8efdecc5-919e-44eb-b179-915dca89ebf9", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/jlaw-demo1", + "name": "jlaw-demo1", + "type": "Microsoft.App/managedEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "jlaw-demo1.k4apps.io", + "staticIp": "20.42.33.145", + "appLogsConfiguration": null + } + }, + { + "id": "/subscriptions/8efdecc5-919e-44eb-b179-915dca89ebf9/resourceGroups/DemoRG/providers/Microsoft.App/managedEnvironments/demo1", + "name": "demo1", + "type": "Microsoft.App/managedEnvironments", + "location": "North Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "demo1.k4apps.io", + "staticIp": "52.142.21.61", + "appLogsConfiguration": null + } + } + ] + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Patch.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Patch.json new file mode 100644 index 000000000000..360d8a665ddb --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/ManagedEnvironments_Patch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "examplerg", + "name": "testcontainerenv", + "api-version": "2022-01-01-preview", + "location": "East US", + "environmentEnvelope": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/examplerg/providers/Microsoft.App/managedEnvironments/testcontainerenv", + "name": "testcontainerenv", + "type": "Microsoft.App/managedEnvironments", + "location": "East US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "deploymentErrors": null, + "internalLoadBalancerEnabled": false, + "defaultDomain": "testcontainerenv.k4apps.io", + "staticIp": "1.2.3.4", + "appLogsConfiguration": { + "logAnalyticsConfiguration": { + "customerId": "string" + } + } + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/OperationGroupGet.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/OperationGroupGet.json deleted file mode 100644 index 0963b400c9aa..000000000000 --- a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/OperationGroupGet.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "accountName": "sampleacct", - "resourceGroupName": "appClient", - "api-version": "2022-01-01-preview", - "subscriptionId": "subid" - }, - "responses": { - "200": { - "body": { - "sampleProperty": "sampleProperty" - } - } - } -} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Operations_List.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..11f45af01c93 --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Operations_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.App/containerApps/Read", + "display": { + "provider": "Microsoft Apps", + "resource": "Container App", + "operation": "Get Container App", + "description": "Get the properties of a Container App" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Activate.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Activate.json new file mode 100644 index 000000000000..42ae3b8bf0fa --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Activate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "containerAppName": "testcontainerApp0", + "name": "testcontainerApp0-pjxhsye", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Deactivate.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Deactivate.json new file mode 100644 index 000000000000..42ae3b8bf0fa --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Deactivate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "containerAppName": "testcontainerApp0", + "name": "testcontainerApp0-pjxhsye", + "api-version": "2022-01-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Get.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Get.json new file mode 100644 index 000000000000..8c423c2a605a --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Get.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "containerAppName": "testcontainerApp0", + "name": "testcontainerApp0-pjxhsye", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.AppcontainerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye", + "name": "testcontainerApp0-pjxhsye", + "type": "Microsoft.App/containerApps/revisions", + "properties": { + "createdTime": "2021-05-24T21:24:22+00:00", + "fqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerApps.k4apps.io", + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v2", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + }, + "active": true, + "replicas": 1 + } + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_List.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_List.json new file mode 100644 index 000000000000..29ccd646b6ec --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_List.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "containerAppName": "testcontainerApp0", + "api-version": "2021-02-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.App/containerApps/testcontainerApp0/revisions/testcontainerApp0-pjxhsye", + "name": "testcontainerApp0-pjxhsye", + "type": "Microsoft.App/containerApps/revisions", + "properties": { + "createdTime": "2021-05-24T21:24:22+00:00", + "fqdn": "testcontainerApp0-pjxhsye.demokube-t24clv0g.eastus.containerapps.k4apps.io", + "template": { + "containers": [ + { + "image": "repo/testcontainerApp0:v2", + "name": "testcontainerApp0", + "resources": { + "cpu": 0.2, + "memory": "100Mi" + } + } + ], + "scale": { + "minReplicas": 1, + "maxReplicas": 5, + "rules": [ + { + "name": "httpscalingrule", + "http": { + "metadata": { + "concurrentRequests": "50" + } + } + } + ] + }, + "dapr": { + "enabled": true, + "appPort": 3000 + } + }, + "active": true, + "replicas": 1 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Restart.json b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Restart.json new file mode 100644 index 000000000000..1bad2b7270cc --- /dev/null +++ b/specification/app/resource-manager/Microsoft.App/preview/2022-01-01-preview/examples/Revisions_Restart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "containerAppName": "testStaticSite0", + "name": "testcontainerApp0-pjxhsye", + "api-version": "2021-02-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/app/resource-manager/readme.md b/specification/app/resource-manager/readme.md index 71df7c29c31d..f841aa182a04 100644 --- a/specification/app/resource-manager/readme.md +++ b/specification/app/resource-manager/readme.md @@ -2,7 +2,7 @@ > see https://aka.ms/autorest -This is the AutoRest configuration file for app. +This is the AutoRest configuration file for Microsoft.App service. ## Getting Started @@ -35,7 +35,39 @@ These settings apply only when `--tag=package-2022-01-01-preview` is specified o ```yaml $(tag) == 'package-2022-01-01-preview' input-file: - - Microsoft.App/preview/2022-01-01-preview/app.json + - Microsoft.App/preview/2022-01-01-preview/CommonDefinitions.json + - Microsoft.App/preview/2022-01-01-preview/ContainerApps.json + - Microsoft.App/preview/2022-01-01-preview/ContainerAppsRevisions.json + - Microsoft.App/preview/2022-01-01-preview/ManagedEnvironments.json + - Microsoft.App/preview/2022-01-01-preview/Global.json +directive: +- suppress: R4009 + from: ContainerAppsRevisions.json + reason: False positive. This is not a tracked resource. +- suppress: R3010 + from: Global.json + reason: False positive. The Revisions_list api already defined +- suppress: R3010 + from: ManagedEnvironments.json + reason: False positive. The Revisions_list api already defined +- suppress: R3010 + from: ContainerAppsRevisions.json + reason: False positive. The Revisions_list api already defined +- suppress: R3010 + from: CommonDefinitions.json + reason: False positive. The Revisions_list api already defined +- suppress: R3010 + from: ContainerApps.json + reason: False positive. The Revisions_list api already defined +- suppress: R3018 + from: Global.json + reason: Use of boolean type is required +- suppress: R3018 + from: CommonDefinitions.json + reason: Use of boolean type is required +- suppress: R3018 + from: ContainerApps.json + reason: Use of boolean type is required ``` ---