From a6de70f85bac2e27e8d8fc34a6913f4e8c6e27b5 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 00:21:47 -0700 Subject: [PATCH 01/42] Copy files from preview/2024-10-01-preview Copied the files in a separate commit. This allows reviewers to easily diff subsequent changes against the previous spec. --- .../2024-11-01-preview/containerInstance.json | 2610 +++++++++++++++++ .../examples/CachedImagesList.json | 27 + .../examples/CapabilitiesList.json | 39 + .../examples/ContainerAttach.json | 17 + .../examples/ContainerExec.json | 24 + .../ContainerGroupCreateConfidential.json | 182 ++ .../ContainerGroupEncryptionProperties.json | 192 ++ .../examples/ContainerGroupExtensions.json | 208 ++ .../examples/ContainerGroupUsage.json | 24 + .../ContainerGroupsCreateOrUpdate.json | 316 ++ ...erGroupsCreateOrUpdateSecretReference.json | 445 +++ .../ContainerGroupsCreatePriority.json | 120 + .../examples/ContainerGroupsDelete.json | 85 + .../examples/ContainerGroupsGetPriority.json | 87 + .../examples/ContainerGroupsGet_Failed.json | 115 + .../ContainerGroupsGet_Succeeded.json | 79 + .../examples/ContainerGroupsList.json | 90 + .../ContainerGroupsListByResourceGroup.json | 82 + .../examples/ContainerGroupsRestart.json | 11 + .../examples/ContainerGroupsStart.json | 16 + .../examples/ContainerGroupsStop.json | 11 + .../examples/ContainerGroupsUpdate.json | 100 + .../examples/ContainerListLogs.json | 17 + .../examples/OperationsList.json | 23 + .../SubnetServiceAssociationLinkDelete.json | 18 + 25 files changed, 4938 insertions(+) create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json new file mode 100644 index 000000000000..d6d69d152438 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -0,0 +1,2610 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-10-01-preview", + "title": "ContainerInstanceManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_List", + "x-ms-examples": { + "ContainerGroupsList": { + "$ref": "./examples/ContainerGroupsList.json" + } + }, + "summary": "Get a list of container groups in the specified subscription.", + "description": "Get a list of container groups in the specified subscription. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_ListByResourceGroup", + "x-ms-examples": { + "ContainerGroupsListByResourceGroup": { + "$ref": "./examples/ContainerGroupsListByResourceGroup.json" + } + }, + "summary": "Get a list of container groups in the specified subscription and resource group.", + "description": "Get a list of container groups in a specified subscription and resource group. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}": { + "get": { + "operationId": "ContainerGroups_Get", + "x-ms-examples": { + "ContainerGroupsGet_Succeeded": { + "$ref": "./examples/ContainerGroupsGet_Succeeded.json" + }, + "ContainerGroupsGet_Failed": { + "$ref": "./examples/ContainerGroupsGet_Failed.json" + }, + "ContainerGroupsGetWithPriority": { + "$ref": "./examples/ContainerGroupsGetPriority.json" + } + }, + "summary": "Get the properties of the specified container group.", + "description": "Gets the properties of the specified container group in the specified subscription and resource group. The operation returns the properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "ContainerGroups_CreateOrUpdate", + "x-ms-examples": { + "ContainerGroupsCreateOrUpdate": { + "$ref": "./examples/ContainerGroupsCreateOrUpdate.json" + }, + "ContainerGroupsCreateOrUpdateSecretReference": { + "$ref": "./examples/ContainerGroupsCreateOrUpdateSecretReference.json" + }, + "ContainerGroupCreateWithExtensions": { + "$ref": "./examples/ContainerGroupExtensions.json" + }, + "ContainerGroupWithEncryptionProperties": { + "$ref": "./examples/ContainerGroupEncryptionProperties.json" + }, + "ConfidentialContainerGroup": { + "$ref": "./examples/ContainerGroupCreateConfidential.json" + }, + "ContainerGroupsCreateWithPriority": { + "$ref": "./examples/ContainerGroupsCreatePriority.json" + } + }, + "summary": "Create or update container groups.", + "description": "Create or update container groups with specified configurations.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerGroup", + "description": "The properties of the container group to be created or updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "201": { + "description": "Created - the container group is created.", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "ContainerGroups_Update", + "x-ms-examples": { + "ContainerGroupsUpdate": { + "$ref": "./examples/ContainerGroupsUpdate.json" + } + }, + "summary": "Update container groups.", + "description": "Updates container group tags with specified values.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "Resource", + "description": "The container group resource with just the tags to be updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/Resource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "ContainerGroups_Delete", + "x-ms-examples": { + "ContainerGroupsDelete": { + "$ref": "./examples/ContainerGroupsDelete.json" + } + }, + "summary": "Delete the specified container group.", + "description": "Delete the specified container group in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/restart": { + "post": { + "operationId": "ContainerGroups_Restart", + "x-ms-examples": { + "ContainerRestart": { + "$ref": "./examples/ContainerGroupsRestart.json" + } + }, + "summary": "Restarts all containers in a container group.", + "description": "Restarts all containers in a container group in place. If container image has updates, new image will be downloaded.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/stop": { + "post": { + "operationId": "ContainerGroups_Stop", + "x-ms-examples": { + "ContainerStop": { + "$ref": "./examples/ContainerGroupsStop.json" + } + }, + "summary": "Stops all containers in a container group.", + "description": "Stops all containers in a container group. Compute resources will be deallocated and billing will stop.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/start": { + "post": { + "operationId": "ContainerGroups_Start", + "x-ms-examples": { + "ContainerStart": { + "$ref": "./examples/ContainerGroupsStart.json" + } + }, + "summary": "Starts all containers in a container group.", + "description": "Starts all containers in a container group. Compute resources will be allocated and billing will start.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "202": { + "description": "Started - the container group is starting." + }, + "204": { + "description": "Started - the container group is already running or starting." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.ContainerInstance/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List the operations for Azure Container Instance service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/usages": { + "get": { + "operationId": "Location_ListUsage", + "x-ms-examples": { + "ContainerUsage": { + "$ref": "./examples/ContainerGroupUsage.json" + } + }, + "description": "Get the usage for a subscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/logs": { + "get": { + "operationId": "Containers_ListLogs", + "x-ms-examples": { + "ContainerListLogs": { + "$ref": "./examples/ContainerListLogs.json" + } + }, + "summary": "Get the logs for a specified container instance.", + "description": "Get the logs for a specified container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "tail", + "in": "query", + "description": "The number of lines to show from the tail of the container instance log. If not provided, all available logs are shown up to 4mb.", + "type": "integer", + "format": "int32" + }, + { + "name": "timestamps", + "in": "query", + "description": "If true, adds a timestamp at the beginning of every line of log output. If not provided, defaults to false.", + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Logs" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/exec": { + "post": { + "operationId": "Containers_ExecuteCommand", + "x-ms-examples": { + "ContainerExec": { + "$ref": "./examples/ContainerExec.json" + } + }, + "summary": "Executes a command in a specific container instance.", + "description": "Executes a command for a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "containerExecRequest", + "in": "body", + "description": "The request for the exec command.", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerExecRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerExecResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/attach": { + "post": { + "operationId": "Containers_Attach", + "x-ms-examples": { + "ContainerAttach": { + "$ref": "./examples/ContainerAttach.json" + } + }, + "summary": "Attach to the output of a specific container instance.", + "description": "Attach to the output stream of a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerAttachResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/cachedImages": { + "get": { + "operationId": "Location_ListCachedImages", + "x-ms-examples": { + "CachedImages": { + "$ref": "./examples/CachedImagesList.json" + } + }, + "summary": "Get the list of cached images.", + "description": "Get the list of cached images on specific OS type for a subscription in a region.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CachedImagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/capabilities": { + "get": { + "operationId": "Location_ListCapabilities", + "x-ms-examples": { + "GetCapabilities": { + "$ref": "./examples/CapabilitiesList.json" + } + }, + "summary": "Get the list of capabilities of the location.", + "description": "Get the list of CPU/memory/GPU capabilities of a region.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CapabilitiesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/outboundNetworkDependenciesEndpoints": { + "get": { + "operationId": "ContainerGroups_GetOutboundNetworkDependenciesEndpoints", + "x-ms-examples": {}, + "summary": "Get all network dependencies for container group.", + "description": "Gets all the network dependencies for this container group to allow complete control of network setting and configuration. For container groups, this will always be an empty list.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkDependenciesResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default": { + "delete": { + "operationId": "SubnetServiceAssociationLink_Delete", + "x-ms-examples": { + "SubnetServiceAssociationLinkDelete": { + "$ref": "./examples/SubnetServiceAssociationLinkDelete.json" + } + }, + "summary": "Delete container group virtual network association links.", + "description": "Delete container group virtual network association links. The operation does not delete other resources provided by the user.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualNetworkNameParameter" + }, + { + "$ref": "#/parameters/SubnetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "SecretReference": { + "description": "A secret reference", + "type": "object", + "required": [ + "name", + "identity", + "secretReferenceUri" + ], + "properties": { + "name": { + "description": "The identifier of the secret reference", + "type": "string" + }, + "identity": { + "description": "The ARM resource id of the managed identity that has access to the secret in the key vault", + "type": "string", + "format": "arm-id" + }, + "secretReferenceUri": { + "description": "The URI to the secret in key vault", + "type": "string", + "format": "uri" + } + } + }, + "Container": { + "description": "A container instance.", + "type": "object", + "required": [ + "properties", + "name" + ], + "properties": { + "name": { + "description": "The user-provided name of the container instance.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the container instance.", + "$ref": "#/definitions/ContainerProperties" + } + } + }, + "ContainerProperties": { + "description": "The container instance properties.", + "type": "object", + "required": [ + "image", + "resources" + ], + "properties": { + "image": { + "description": "The name of the image used to create the container instance.", + "type": "string" + }, + "command": { + "description": "The commands to execute within the container instance in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "ports": { + "description": "The exposed ports on the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerPort" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "environmentVariables": { + "description": "The environment variables to set in the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container instance. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the container instance has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "Current container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "Previous container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "resources": { + "description": "The resource requirements of the container instance.", + "$ref": "#/definitions/ResourceRequirements" + }, + "volumeMounts": { + "description": "The volume mounts available to the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "livenessProbe": { + "description": "The liveness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "readinessProbe": { + "description": "The readiness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + } + } + }, + "SecurityContextDefinition": { + "description": "The security context for the container.", + "type": "object", + "properties": { + "privileged": { + "type": "boolean", + "description": "The flag to determine if the container permissions is elevated to Privileged." + }, + "allowPrivilegeEscalation": { + "type": "boolean", + "description": "A boolean value indicating whether the init process can elevate its privileges" + }, + "capabilities": { + "description": "The capabilities to add or drop from a container.", + "$ref": "#/definitions/SecurityContextCapabilitiesDefinition" + }, + "runAsGroup": { + "type": "integer", + "format": "int32", + "description": "Sets the User GID for the container." + }, + "runAsUser": { + "type": "integer", + "format": "int32", + "description": "Sets the User UID for the container." + }, + "seccompProfile": { + "type": "string", + "description": "a base64 encoded string containing the contents of the JSON in the seccomp profile" + } + } + }, + "SecurityContextCapabilitiesDefinition": { + "description": "The capabilities to add or drop from a container.", + "type": "object", + "properties": { + "add": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to add to the container." + }, + "drop": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to drop from the container." + } + } + }, + "ContainerState": { + "description": "The container instance state.", + "type": "object", + "readOnly": true, + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the container instance." + }, + "startTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state started." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The container instance exit codes correspond to those from the `docker run` command." + }, + "finishTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state finished." + }, + "detailStatus": { + "type": "string", + "readOnly": true, + "description": "The human-readable status of the container instance state." + } + } + }, + "Event": { + "description": "A container group or container instance event.", + "type": "object", + "readOnly": true, + "properties": { + "count": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The count of the event." + }, + "firstTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the earliest logged event." + }, + "lastTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the latest logged event." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The event name." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The event message." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The event type." + } + } + }, + "ResourceRequirements": { + "description": "The resource requirements.", + "type": "object", + "required": [ + "requests" + ], + "properties": { + "requests": { + "description": "The resource requests of this container instance.", + "$ref": "#/definitions/ResourceRequests" + }, + "limits": { + "description": "The resource limits of this container instance.", + "$ref": "#/definitions/ResourceLimits" + } + } + }, + "ResourceRequests": { + "description": "The resource requests.", + "type": "object", + "required": [ + "memoryInGB", + "cpu" + ], + "properties": { + "memoryInGB": { + "description": "The memory request in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "The CPU request of this container instance.", + "type": "number", + "format": "double" + }, + "gpu": { + "description": "The GPU request of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "ResourceLimits": { + "description": "The resource limits.", + "type": "object", + "properties": { + "memoryInGB": { + "description": "The memory limit in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "The CPU limit of this container instance.", + "type": "number", + "format": "double" + }, + "gpu": { + "description": "The GPU limit of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "GpuResource": { + "description": "The GPU resource.", + "type": "object", + "required": [ + "count", + "sku" + ], + "properties": { + "count": { + "description": "The count of the GPU resource.", + "type": "integer", + "format": "int32" + }, + "sku": { + "type": "string", + "description": "The SKU of the GPU resource.", + "enum": [ + "K80", + "P100", + "V100" + ], + "x-ms-enum": { + "name": "GpuSku", + "modelAsString": true + } + } + } + }, + "AzureFileVolume": { + "description": "The properties of the Azure File volume. Azure File shares are mounted as volumes.", + "type": "object", + "required": [ + "shareName", + "storageAccountName" + ], + "properties": { + "shareName": { + "description": "The name of the Azure File share to be mounted as a volume.", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the Azure File shared mounted as a volume is read-only.", + "type": "boolean" + }, + "storageAccountName": { + "description": "The name of the storage account that contains the Azure File share.", + "type": "string" + }, + "storageAccountKey": { + "description": "The storage account access key used to access the Azure File share.", + "type": "string" + }, + "storageAccountKeyReference": { + "description": "The reference to the storage account access key used to access the Azure File share.", + "type": "string" + } + } + }, + "EmptyDirVolume": { + "description": "The empty directory volume.", + "type": "object", + "properties": {} + }, + "SecretVolume": { + "description": "The secret volume.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "SecretReferenceVolume": { + "description": "The secret reference volume.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "GitRepoVolume": { + "description": "Represents a volume that is populated with the contents of a git repository", + "required": [ + "repository" + ], + "properties": { + "directory": { + "description": "Target directory name. Must not contain or start with '..'. If '.' is supplied, the volume directory will be the git repository. Otherwise, if specified, the volume will contain the git repository in the subdirectory with the given name.", + "type": "string" + }, + "repository": { + "description": "Repository URL", + "type": "string" + }, + "revision": { + "description": "Commit hash for the specified revision.", + "type": "string" + } + } + }, + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + }, + "emptyDir": { + "description": "The empty directory volume.", + "$ref": "#/definitions/EmptyDirVolume" + }, + "secret": { + "description": "The secret volume.", + "$ref": "#/definitions/SecretVolume" + }, + "secretReference": { + "description": "The secret reference volume.", + "$ref": "#/definitions/SecretReferenceVolume" + }, + "gitRepo": { + "description": "The git repo volume.", + "$ref": "#/definitions/GitRepoVolume" + } + } + }, + "VolumeMount": { + "description": "The properties of the volume mount.", + "type": "object", + "required": [ + "name", + "mountPath" + ], + "properties": { + "name": { + "description": "The name of the volume mount.", + "type": "string" + }, + "mountPath": { + "description": "The path within the container where the volume should be mounted. Must not contain colon (:).", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the volume mount is read-only.", + "type": "boolean" + } + } + }, + "ContainerExec": { + "type": "object", + "description": "The container execution command, for liveness or readiness probe", + "properties": { + "command": { + "description": "The commands to execute within the container.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ContainerHttpGet": { + "type": "object", + "description": "The container Http Get settings, for liveness or readiness probe", + "properties": { + "path": { + "description": "The path to probe.", + "type": "string" + }, + "port": { + "type": "integer", + "description": "The port number to probe.", + "format": "int32" + }, + "scheme": { + "description": "The scheme.", + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Scheme", + "modelAsString": true + } + }, + "httpHeaders": { + "description": "The HTTP headers.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpHeader" + }, + "x-ms-identifiers": [ + "name" + ] + } + }, + "required": [ + "port" + ] + }, + "ContainerProbe": { + "type": "object", + "description": "The container probe, for liveness or readiness", + "properties": { + "exec": { + "description": "The execution command to probe", + "$ref": "#/definitions/ContainerExec" + }, + "httpGet": { + "description": "The Http Get settings to probe", + "$ref": "#/definitions/ContainerHttpGet" + }, + "initialDelaySeconds": { + "description": "The initial delay seconds.", + "type": "integer", + "format": "int32" + }, + "periodSeconds": { + "description": "The period seconds.", + "type": "integer", + "format": "int32" + }, + "failureThreshold": { + "description": "The failure threshold.", + "type": "integer", + "format": "int32" + }, + "successThreshold": { + "description": "The success threshold.", + "type": "integer", + "format": "int32" + }, + "timeoutSeconds": { + "description": "The timeout seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "ContainerGroup": { + "description": "A container group.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ContainerGroupProperties" + } + ] + }, + "ContainerGroupProperties": { + "description": "The container group properties", + "type": "object", + "required": [ + "properties" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ContainerGroupIdentity", + "description": "The identity of the container group, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The container group properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the container group. This only appears in the response." + }, + "secretReferences": { + "type": "array", + "description": "The secret references that will be referenced within the container group.", + "items": { + "$ref": "#/definitions/SecretReference" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "type": "string", + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "enum": [ + "Always", + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "ContainerGroupRestartPolicy", + "modelAsString": true + } + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "osType": { + "type": "string", + "description": "The operating system type required by the containers in the container group.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container group. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "events": { + "description": "The events of this container group.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The state of the container group. Only valid in response." + } + } + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "subnetIds": { + "type": "array", + "description": "The subnet resource IDs for a container group.", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "dnsConfig": { + "description": "The DNS config information for a container group.", + "$ref": "#/definitions/DnsConfiguration" + }, + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "priority": { + "type": "string", + "description": "The priority of the container group.", + "enum": [ + "Regular", + "Spot" + ], + "x-ms-enum": { + "name": "ContainerGroupPriority", + "modelAsString": true + } + } + }, + "required": [ + "containers", + "osType" + ] + } + } + }, + "DeploymentExtensionSpec": { + "description": "Extension sidecars to be added to the deployment.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the extension." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Extension specific properties", + "properties": { + "extensionType": { + "type": "string", + "description": "Type of extension to be added." + }, + "version": { + "type": "string", + "description": "Version of the extension being used." + }, + "settings": { + "type": "object", + "description": "Settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "Protected settings for the extension." + } + }, + "required": [ + "extensionType", + "version" + ] + } + }, + "required": [ + "name" + ] + }, + "ContainerGroupIdentity": { + "description": "Identity for the container group.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the container group identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the container group. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the container group. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the container group.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group.", + "additionalProperties": { + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "$ref": "#/definitions/UserAssignedIdentities" + } + } + } + }, + "UserAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "ImageRegistryCredential": { + "description": "Image registry credential.", + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "The Docker image registry server without a protocol such as \"http\" and \"https\"." + }, + "username": { + "type": "string", + "description": "The username for the private registry." + }, + "password": { + "type": "string", + "description": "The password for the private registry.", + "x-ms-secret": true + }, + "passwordReference": { + "type": "string", + "description": "The reference for the private registry password." + }, + "identity": { + "type": "string", + "description": "The identity for the private registry." + }, + "identityUrl": { + "type": "string", + "description": "The identity URL for the private registry." + } + }, + "required": [ + "server" + ] + }, + "ContainerGroupDiagnostics": { + "description": "Container group diagnostic information.", + "type": "object", + "properties": { + "logAnalytics": { + "description": "Container group log analytics information.", + "$ref": "#/definitions/LogAnalytics" + } + } + }, + "LogAnalytics": { + "description": "Container group log analytics information.", + "type": "object", + "properties": { + "workspaceId": { + "description": "The workspace id for log analytics", + "type": "string" + }, + "workspaceKey": { + "description": "The workspace key for log analytics", + "type": "string", + "x-ms-secret": true + }, + "logType": { + "type": "string", + "description": "The log type to be used.", + "enum": [ + "ContainerInsights", + "ContainerInstanceLogs" + ], + "x-ms-enum": { + "name": "LogAnalyticsLogType", + "modelAsString": true + } + }, + "metadata": { + "type": "object", + "description": "Metadata for log analytics.", + "additionalProperties": { + "type": "string" + } + }, + "workspaceResourceId": { + "description": "The workspace resource id for log analytics", + "type": "string", + "x-ms-secret": true + } + }, + "required": [ + "workspaceId", + "workspaceKey" + ] + }, + "ContainerGroupSubnetId": { + "description": "Container group subnet information.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of virtual network and subnet.", + "type": "string" + }, + "name": { + "description": "Friendly name for the subnet.", + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "IpAddress": { + "description": "IP address for the container group.", + "type": "object", + "properties": { + "ports": { + "type": "array", + "description": "The list of ports exposed on the container group.", + "items": { + "$ref": "#/definitions/Port" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "type": { + "type": "string", + "description": "Specifies if the IP is exposed to the public internet or private VNET.", + "enum": [ + "Public", + "Private" + ], + "x-ms-enum": { + "name": "ContainerGroupIpAddressType", + "modelAsString": true + } + }, + "ip": { + "type": "string", + "description": "The IP exposed to the public internet." + }, + "dnsNameLabel": { + "type": "string", + "description": "The Dns name label for the IP." + }, + "autoGeneratedDomainNameLabelScope": { + "type": "string", + "description": "The value representing the security enum. The 'Unsecure' value is the default value if not selected and means the object's domain name label is not secured against subdomain takeover. The 'TenantReuse' value is the default value if selected and means the object's domain name label can be reused within the same tenant. The 'SubscriptionReuse' value means the object's domain name label can be reused within the same subscription. The 'ResourceGroupReuse' value means the object's domain name label can be reused within the same resource group. The 'NoReuse' value means the object's domain name label cannot be reused within the same resource group, subscription, or tenant.", + "enum": [ + "Unsecure", + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "Noreuse" + ], + "default": "Unsecure", + "x-ms-enum": { + "name": "dnsNameLabelReusePolicy", + "modelAsString": true + } + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "The FQDN for the IP." + } + }, + "required": [ + "ports", + "type" + ] + }, + "Port": { + "description": "The port exposed on the container group.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerGroupNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "description": "The port number.", + "format": "int32" + } + }, + "required": [ + "port" + ] + }, + "ContainerPort": { + "description": "The port exposed on the container instance.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port number exposed within the container group." + } + }, + "required": [ + "port" + ] + }, + "EnvironmentVariable": { + "description": "The environment variable to set within the container instance.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the environment variable." + }, + "value": { + "type": "string", + "description": "The value of the environment variable." + }, + "secureValue": { + "type": "string", + "description": "The value of the secure environment variable.", + "x-ms-secret": true + }, + "secureValueReference": { + "type": "string", + "description": "The reference of the secure environment variable." + } + }, + "required": [ + "name" + ] + }, + "OperationListResult": { + "description": "The operation list response that contains all operations for Azure Container Instance service.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The list of operations." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of operations." + } + } + }, + "Operation": { + "description": "An operation for Azure Container Instance service.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "description": "The display information of the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the provider of the operation.", + "type": "string" + }, + "resource": { + "type": "string", + "description": "The name of the resource type of the operation." + }, + "operation": { + "description": "The friendly name of the operation.", + "type": "string" + }, + "description": { + "description": "The description of the operation.", + "type": "string" + } + } + }, + "properties": { + "type": "object", + "description": "The additional properties.", + "x-ms-client-flatten": true + }, + "origin": { + "type": "string", + "description": "The intended executor of the operation.", + "enum": [ + "User", + "System" + ], + "x-ms-enum": { + "name": "ContainerInstanceOperationsOrigin", + "modelAsString": true + } + } + }, + "required": [ + "name", + "display" + ] + }, + "UsageListResult": { + "description": "The response containing the usage data", + "type": "object", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "The usage data.", + "items": { + "$ref": "#/definitions/Usage" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "Usage": { + "description": "A single usage result", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the usage result" + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "Unit of the usage result" + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The current usage of the resource" + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "type": "object", + "description": "The name object of the resource", + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource" + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource" + } + } + } + } + }, + "ContainerGroupListResult": { + "description": "The container group list response that contains the container group properties.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroup" + }, + "description": "The list of container groups." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of container groups." + } + } + }, + "Logs": { + "description": "The logs.", + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The content of the log." + } + } + }, + "ContainerExecRequest": { + "description": "The container exec request.", + "type": "object", + "properties": { + "command": { + "type": "string", + "description": "The command to be executed." + }, + "terminalSize": { + "type": "object", + "description": "The size of the terminal.", + "properties": { + "rows": { + "type": "integer", + "format": "int32", + "description": "The row size of the terminal" + }, + "cols": { + "type": "integer", + "format": "int32", + "description": "The column size of the terminal" + } + } + } + } + }, + "ContainerExecResponse": { + "description": "The information for the container exec command.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the exec websocket." + }, + "password": { + "type": "string", + "description": "The password to start the exec command.", + "x-ms-secret": true + } + } + }, + "ContainerAttachResponse": { + "description": "The information for the output stream from container attach.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the output stream from the attach." + }, + "password": { + "type": "string", + "description": "The password to the output stream from the attach. Send as an Authorization header value when connecting to the websocketUri.", + "x-ms-secret": true + } + } + }, + "HttpHeader": { + "description": "The HTTP header.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The header name." + }, + "value": { + "type": "string", + "description": "The header value." + } + } + }, + "DnsConfiguration": { + "description": "DNS configuration for the container group.", + "type": "object", + "required": [ + "nameServers" + ], + "properties": { + "nameServers": { + "description": "The DNS servers for the container group.", + "type": "array", + "items": { + "type": "string" + } + }, + "searchDomains": { + "description": "The DNS search domains for hostname lookup in the container group.", + "type": "string" + }, + "options": { + "description": "The DNS options for the container group.", + "type": "string" + } + } + }, + "Resource": { + "type": "object", + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + }, + "zones": { + "description": "The zones for the container group.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CachedImagesListResult": { + "description": "The response containing cached images.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/cachedImages" + }, + "x-ms-identifiers": [ + "image" + ], + "description": "The list of cached images." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of cached images." + } + } + }, + "cachedImages": { + "description": "The cached image and OS type.", + "type": "object", + "required": [ + "osType", + "image" + ], + "properties": { + "osType": { + "type": "string", + "description": "The OS type of the cached image." + }, + "image": { + "type": "string", + "description": "The cached image name." + } + } + }, + "CapabilitiesListResult": { + "description": "The response containing list of capabilities.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Capabilities" + }, + "x-ms-identifiers": [ + "resourceType", + "location" + ], + "description": "The list of capabilities." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of capabilities." + } + } + }, + "Capabilities": { + "description": "The regional capabilities.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The resource type that this capability describes." + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The OS type that this capability describes." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The resource location." + }, + "ipAddressType": { + "type": "string", + "readOnly": true, + "description": "The ip address type that this capability describes." + }, + "gpu": { + "type": "string", + "readOnly": true, + "description": "The GPU sku that this capability describes." + }, + "capabilities": { + "type": "object", + "readOnly": true, + "description": "The supported capabilities.", + "properties": { + "maxMemoryInGB": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed memory request in GB." + }, + "maxCpu": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed CPU request in cores." + }, + "maxGpuCount": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed GPU count." + } + } + } + } + }, + "ContainerGroupSku": { + "description": "The container group SKU.", + "type": "string", + "enum": [ + "Standard", + "Dedicated", + "Confidential" + ], + "x-ms-enum": { + "name": "ContainerGroupSku", + "modelAsString": true + } + }, + "EncryptionProperties": { + "description": "The container group encryption properties.", + "type": "object", + "properties": { + "vaultBaseUrl": { + "description": "The keyvault base url.", + "type": "string" + }, + "keyName": { + "description": "The encryption key name.", + "type": "string" + }, + "keyVersion": { + "description": "The encryption key version.", + "type": "string" + }, + "identity": { + "type": "string", + "description": "The keyvault managed identity." + } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] + }, + "InitContainerDefinition": { + "description": "The init container definition.", + "type": "object", + "properties": { + "name": { + "description": "The name for the init container.", + "type": "string" + }, + "properties": { + "description": "The properties for the init container.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InitContainerPropertiesDefinition" + } + }, + "required": [ + "name", + "properties" + ] + }, + "InitContainerPropertiesDefinition": { + "description": "The init container definition properties.", + "type": "object", + "properties": { + "image": { + "description": "The image of the init container.", + "type": "string" + }, + "command": { + "description": "The command to execute within the init container in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "environmentVariables": { + "description": "The environment variables to set in the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the init container. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the init container has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "The current state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "The previous state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "volumeMounts": { + "description": "The volume mounts available to the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Container Instance service." + }, + "NetworkDependenciesResponse": { + "description": "Response for network dependencies, always empty list.", + "type": "array", + "items": { + "type": "string" + } + }, + "ConfidentialComputeProperties": { + "description": "The properties for confidential container group", + "type": "object", + "properties": { + "ccePolicy": { + "type": "string", + "description": "The base64 encoded confidential compute enforcement policy" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "x-ms-parameter-location": "client" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The identifier for the physical azure location.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version", + "x-ms-parameter-location": "client" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ContainerGroupNameParameter": { + "name": "containerGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the container group.", + "x-ms-parameter-location": "method" + }, + "VirtualNetworkNameParameter": { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network.", + "x-ms-parameter-location": "method" + }, + "SubnetNameParameter": { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet.", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json new file mode 100644 index 000000000000..ed0d0d2363f5 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westcentralus", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "osType": "Linux", + "image": "ubuntu:16.04" + }, + { + "osType": "Linux", + "image": "alpine:3.6" + }, + { + "osType": "Windows", + "image": "microsoft/nanoserver:10.0.14393.2485" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json new file mode 100644 index 000000000000..925e127e09db --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westus", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "containerGroups", + "osType": "Linux", + "location": "West US", + "ipAddressType": "Public", + "gpu": "K80", + "capabilities": { + "maxMemoryInGB": 14, + "maxCpu": 4, + "maxGpuCount": 4 + } + }, + { + "resourceType": "containerGroups", + "osType": "Windows", + "location": "West US", + "ipAddressType": "Public", + "gpu": "None", + "capabilities": { + "maxMemoryInGB": 14, + "maxCpu": 4, + "maxGpuCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json new file mode 100644 index 000000000000..77bd776e187d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1" + }, + "responses": { + "200": { + "body": { + "webSocketUri": "wss://web-socket-uri", + "password": "password" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json new file mode 100644 index 000000000000..06ec0926cfaf --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1", + "containerExecRequest": { + "command": "/bin/bash", + "terminalSize": { + "rows": 12, + "cols": 12 + } + } + }, + "responses": { + "200": { + "body": { + "webSocketUri": "wss://web-socket-uri", + "password": "password" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json new file mode 100644 index 000000000000..c96ab2b7b19e --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json @@ -0,0 +1,182 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "westeurope", + "properties": { + "containers": [ + { + "name": "accdemo", + "properties": { + "command": [], + "environmentVariables": [], + "image": "confiimage", + "ports": [ + { + "port": 8000 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "osType": "Linux", + "sku": "Confidential", + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Confidential", + "provisioningState": "Succeeded", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "westeurope" + } + }, + "201": { + "body": { + "properties": { + "sku": "Confidential", + "provisioningState": "Succeeded", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "westeurope" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json new file mode 100644 index 000000000000..5fb43920d62a --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "eastus2", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": {} + } + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + } + }, + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": { + "principalId": "", + "clientId": "" + } + }, + "tenantId": "", + "type": "UserAssigned" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "key version", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "provisioningState": "Running", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + } + }, + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": { + "principalId": "", + "clientId": "" + } + }, + "tenantId": "", + "type": "UserAssigned" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json new file mode 100644 index 000000000000..4756b7442c1d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "eastus2", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Private" + }, + "osType": "Linux", + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + }, + "protectedSettings": { + "kubeConfig": "" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + }, + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json new file mode 100644 index 000000000000..ecb826c3e487 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westcentralus", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 1, + "limit": 2000, + "name": { + "value": "ContainerGroups", + "localizedValue": "Container Groups" + } + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json new file mode 100644 index 000000000000..9850e024b673 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json @@ -0,0 +1,316 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "west us", + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {} + } + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "workspaceKey": "workspaceKey", + "logType": "ContainerInsights", + "metadata": { + "test-key": "test-metadata-value" + }, + "workspaceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg/providers/microsoft.operationalinsights/workspaces/workspace" + } + }, + "subnetIds": [ + { + "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('subnetName'))]" + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKey": "accountKey" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": { + "secretKey1": "SecretValue1InBase64", + "secretKey2": "SecretValue2InBase64" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid" + } + }, + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ] + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json new file mode 100644 index 000000000000..c8d892255752 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json @@ -0,0 +1,445 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "west us", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {} + } + }, + "properties": { + "secretReferences": [ + { + "name": "envSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/envSecret" + }, + { + "name": "accountKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/accountKey" + }, + { + "name": "volumeSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/volumeSecret" + }, + { + "name": "privateRegistryKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/privateRegistryKey" + } + ], + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [ + { + "name": "envSecret", + "secureValueReference": "envSecretRef" + } + ], + "image": "privateRegistryImage", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "workspaceKey": "workspaceKey", + "logType": "ContainerInsights", + "metadata": { + "test-key": "test-metadata-value" + }, + "workspaceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg/providers/microsoft.operationalinsights/workspaces/workspace" + } + }, + "subnetIds": [ + { + "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('subnetName'))]" + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [ + { + "server": "demoregistry.azurecr.io", + "username": "registryUserName", + "passwordReference": "privateRegistryKeyRef" + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKeyReference": "accountKeyRef" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": { + "secretKey1": "SecretValue1InBase64" + }, + "secretReference": { + "secretKey2": "volumeSecretRef" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "type": "UserAssigned" + }, + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "secretReferences": [ + { + "name": "envSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/envSecret" + }, + { + "name": "accountKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/accountKey" + }, + { + "name": "volumeSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/volumeSecret" + }, + { + "name": "privateRegistryKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/privateRegistryKey" + } + ], + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [ + { + "name": "envSecret", + "secureValueReference": "envSecretRef" + } + ], + "image": "privateRegistryImage", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid" + } + }, + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [ + { + "server": "demoregistry.azurecr.io", + "username": "registryUserName", + "passwordReference": "privateRegistryKeyRef" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKeyReference": "accountKeyRef" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {}, + "secretReference": { + "secretKey2": "volumeSecretRef" + } + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + }, + "tenantId": "00000000-0000-0000-0000-000000000000", + "type": "UserAssigned" + }, + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "secretReferences": [ + { + "name": "envSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/envSecret" + }, + { + "name": "accountKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/accountKey" + }, + { + "name": "volumeSecretRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/volumeSecret" + }, + { + "name": "privateRegistryKeyRef", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name", + "secretReferenceUri": "https://keyvaultname.vault.azure.net/secrets/privateRegistryKey" + } + ], + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [ + { + "name": "envSecret", + "secureValueReference": "envSecretRef" + } + ], + "image": "privateRegistryImage", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ] + }, + "imageRegistryCredentials": [ + { + "server": "demoregistry.azurecr.io", + "username": "registryUserName", + "passwordReference": "privateRegistryKeyRef" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKeyReference": "accountKeyRef" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {}, + "secretReference": { + "secretKey2": "volumeSecretRef" + } + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json new file mode 100644 index 000000000000..c131ccea87ed --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerGroup": { + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "restartPolicy": "Never", + "osType": "Linux", + "priority": "Spot" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "provisioningState": "Succeeded", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Succeeded" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "provisioningState": "Created", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Created" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json new file mode 100644 index 000000000000..4c52d95afb11 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json new file mode 100644 index 000000000000..beaad8bc9180 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "provisioningState": "Succeeded", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Terminated", + "startTime": "2022-11-11T19:33:44.217Z", + "exitCode": 0, + "finishTime": "2022-11-11T19:33:55.565Z", + "detailStatus": "Completed" + }, + "events": [ + { + "count": 2, + "firstTimestamp": "2022-11-11T19:28:22Z", + "lastTimestamp": "2022-11-11T19:32:09Z", + "name": "Pulling", + "message": "pulling image \"alpine@sha256:1304f174557314a7ed9eddb4eab12fed12cb0cd9809e4c28f29af86979a3c870\"", + "type": "Normal" + }, + { + "count": 2, + "firstTimestamp": "2022-11-11T19:32:08Z", + "lastTimestamp": "2022-11-11T19:32:38Z", + "name": "Pulled", + "message": "Successfully pulled image \"alpine@sha256:1304f174557314a7ed9eddb4eab12fed12cb0cd9809e4c28f29af86979a3c870\"", + "type": "Normal" + }, + { + "count": 1, + "firstTimestamp": "2022-11-11T19:33:44Z", + "lastTimestamp": "2022-11-11T19:33:44Z", + "name": "Started", + "message": "Started container", + "type": "Normal" + } + ] + }, + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Succeeded" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json new file mode 100644 index 000000000000..8c9f1d80ceb3 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Waiting", + "startTime": "2017-08-08T00:09:10Z", + "detailStatus": "" + }, + "events": [ + { + "count": 1, + "firstTimestamp": "2017-08-08T00:09:01Z", + "lastTimestamp": "2017-08-08T00:09:01Z", + "message": "pulling image \"nginx\"", + "name": "Pulling", + "type": "Normal" + }, + { + "count": 1, + "firstTimestamp": "2017-08-08T00:09:10Z", + "lastTimestamp": "2017-08-08T00:09:10Z", + "message": "Successfully pulled image \"nginx\"", + "name": "Pulled", + "type": "Normal" + } + ] + }, + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "instanceView": { + "events": [ + { + "count": 1, + "firstTimestamp": "2017-10-08T00:19:10Z", + "lastTimestamp": "2017-10-08T00:19:10Z", + "message": "Output: mount error(2): Permission denied", + "name": "FailedMount", + "type": "Normal" + } + ], + "state": "Pending" + }, + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "provisioningState": "Failed", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json new file mode 100644 index 000000000000..4e824a241331 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json new file mode 100644 index 000000000000..bc0ed9a5d99c --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Running", + "startTime": "2017-10-17T17:27:21Z", + "detailStatus": "" + }, + "events": [] + }, + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json new file mode 100644 index 000000000000..df87822690b9 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json new file mode 100644 index 000000000000..62b5ef24b019 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json new file mode 100644 index 000000000000..c95afb0fdf8c --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json new file mode 100644 index 000000000000..62b5ef24b019 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json new file mode 100644 index 000000000000..dcc708e6bc8d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demoResource", + "containerGroupName": "demo1", + "Resource": { + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demoResource/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + } + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json new file mode 100644 index 000000000000..85e3bb2cb061 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1", + "tail": 10 + }, + "responses": { + "200": { + "body": { + "content": "log content" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..7dbd9db81afe --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ContainerInstance/containerGroups/read", + "display": { + "provider": "Microsoft Container Instance", + "resource": "Container Group", + "operation": "Get Container Groups", + "description": "Get all container goups." + }, + "origin": "User" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json new file mode 100644 index 000000000000..fb57e873a21b --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-10-01-preview", + "resourceGroupName": "demo", + "virtualNetworkName": "demo2", + "subnetName": "demo3" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} From cb4bbb39dd9f2beace4c018a0c39ac1d23186c92 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 00:21:49 -0700 Subject: [PATCH 02/42] Update version to preview/2024-11-01-preview Updated the API version from preview/2024-10-01-preview to preview/2024-11-01-preview. --- .../preview/2024-11-01-preview/containerInstance.json | 3 ++- .../preview/2024-11-01-preview/examples/CachedImagesList.json | 3 ++- .../preview/2024-11-01-preview/examples/CapabilitiesList.json | 3 ++- .../preview/2024-11-01-preview/examples/ContainerAttach.json | 3 ++- .../preview/2024-11-01-preview/examples/ContainerExec.json | 3 ++- .../examples/ContainerGroupCreateConfidential.json | 3 ++- .../examples/ContainerGroupEncryptionProperties.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupExtensions.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupUsage.json | 3 ++- .../examples/ContainerGroupsCreateOrUpdate.json | 3 ++- .../examples/ContainerGroupsCreateOrUpdateSecretReference.json | 3 ++- .../examples/ContainerGroupsCreatePriority.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsDelete.json | 3 ++- .../examples/ContainerGroupsGetPriority.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsGet_Failed.json | 3 ++- .../examples/ContainerGroupsGet_Succeeded.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsList.json | 3 ++- .../examples/ContainerGroupsListByResourceGroup.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsRestart.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsStart.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsStop.json | 3 ++- .../2024-11-01-preview/examples/ContainerGroupsUpdate.json | 3 ++- .../preview/2024-11-01-preview/examples/ContainerListLogs.json | 3 ++- .../preview/2024-11-01-preview/examples/OperationsList.json | 3 ++- .../examples/SubnetServiceAssociationLinkDelete.json | 3 ++- 25 files changed, 50 insertions(+), 25 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index d6d69d152438..c2e58eae77a4 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "version": "2024-10-01-preview", + "version": "2024-11-01-preview", "title": "ContainerInstanceManagementClient" }, "host": "management.azure.com", @@ -2608,3 +2608,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json index ed0d0d2363f5..6fabc2f64f95 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CachedImagesList.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "location": "westcentralus", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -25,3 +25,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json index 925e127e09db..f8930ca81f4a 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/CapabilitiesList.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "location": "westus", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -37,3 +37,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json index 77bd776e187d..87cb6dc33dbd 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerAttach.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "containerName": "container1" @@ -15,3 +15,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json index 06ec0926cfaf..9b0e4beef9bd 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerExec.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "containerName": "container1", @@ -22,3 +22,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json index c96ab2b7b19e..934f184ef4aa 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupCreateConfidential.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "zones": [ @@ -180,3 +180,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json index 5fb43920d62a..6d476b155e8a 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupEncryptionProperties.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "zones": [ @@ -190,3 +190,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json index 4756b7442c1d..c089a45c05f1 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupExtensions.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "zones": [ @@ -206,3 +206,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json index ecb826c3e487..74a040c3f4a3 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupUsage.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "location": "westcentralus", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -22,3 +22,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json index 9850e024b673..d20f14642ff5 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdate.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "zones": [ @@ -314,3 +314,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json index c8d892255752..38db598ac364 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreateOrUpdateSecretReference.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "zones": [ @@ -443,3 +443,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json index c131ccea87ed..dcf474e4cd68 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsCreatePriority.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "containerGroup": { @@ -118,3 +118,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json index 4c52d95afb11..f7c92b512038 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsDelete.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1" }, @@ -83,3 +83,4 @@ "204": {} } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json index beaad8bc9180..2b8270ab882e 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGetPriority.json @@ -3,7 +3,7 @@ "subscriptionId": "subid", "resourceGroupName": "demo", "containerGroupName": "demo1", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -85,3 +85,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json index 8c9f1d80ceb3..639eab41a769 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Failed.json @@ -3,7 +3,7 @@ "subscriptionId": "subid", "resourceGroupName": "demo", "containerGroupName": "demo1", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -113,3 +113,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json index 4e824a241331..736c62318ed4 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsGet_Succeeded.json @@ -3,7 +3,7 @@ "subscriptionId": "subid", "resourceGroupName": "demo", "containerGroupName": "demo1", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -77,3 +77,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json index bc0ed9a5d99c..b0cf9be33dbc 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsList.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -88,3 +88,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json index df87822690b9..d944bda146d1 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsListByResourceGroup.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "resourceGroupName": "demo", - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -80,3 +80,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json index 62b5ef24b019..c1cbd9fcd287 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsRestart.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1" }, @@ -9,3 +9,4 @@ "204": {} } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json index c95afb0fdf8c..713a9823b58a 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStart.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1" }, @@ -14,3 +14,4 @@ "204": {} } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json index 62b5ef24b019..c1cbd9fcd287 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsStop.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1" }, @@ -9,3 +9,4 @@ "204": {} } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json index dcc708e6bc8d..ca98889b5974 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupsUpdate.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demoResource", "containerGroupName": "demo1", "Resource": { @@ -98,3 +98,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json index 85e3bb2cb061..2263b846e0c5 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerListLogs.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupName": "demo1", "containerName": "container1", @@ -15,3 +15,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json index 7dbd9db81afe..caa4cc80fe6c 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/OperationsList.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2024-10-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { @@ -21,3 +21,4 @@ } } } + diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json index fb57e873a21b..65c4ec31e940 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/SubnetServiceAssociationLinkDelete.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "subid", - "api-version": "2024-10-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "virtualNetworkName": "demo2", "subnetName": "demo3" @@ -16,3 +16,4 @@ "204": {} } } + From 71073c2ccf8972b37f18402b9ed154b871c2fb50 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 00:21:49 -0700 Subject: [PATCH 03/42] Added tag for 2024-11-01-preview in readme file --- .../containerinstance/resource-manager/readme.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index e875793a7d4f..f1704bde3d87 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the ContainerInstance API. ``` yaml openapi-type: arm -tag: package-preview-2024-10 +tag: package-preview-2024-11 +``` + +### Tag: package-preview-2024-11 + +These settings apply only when `--tag=package-preview-2024-11` is specified on the command line. + +```yaml $(tag) == 'package-preview-2024-11' +input-file: + - Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json ``` ### Tag: package-preview-2024-10 From cbb97d043fd67f010d0cb1e80681577b4ec29aaa Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 00:27:13 -0700 Subject: [PATCH 04/42] added CGProfile Apis --- .../2024-11-01-preview/containerInstance.json | 1119 ++++++++++++++++- 1 file changed, 1090 insertions(+), 29 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index c2e58eae77a4..335ebb5f29a6 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -833,6 +833,695 @@ }, "x-ms-long-running-operation": true } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/skus": { + "get": { + "operationId": "NGroupsSkus_Get", + "x-ms-examples": {}, + "summary": "Get the resource sku, resource type, and sku capacity of the n groups.", + "description": "Get the resource sku, resource type, and sku capacity of the n groups.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NGroupsSkusList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}": { + "get": { + "operationId": "NGroups_Get", + "x-ms-examples": {}, + "summary": "Display information about a specified nGroup.", + "description": "Get the properties of the specified n group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "NGroups_CreateOrUpdate", + "x-ms-examples": {}, + "description": "Create or update a nGroup.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + }, + { + "name": "nGroup", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NGroup" + }, + "description": "The nGroup object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/NGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/NGroup" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "operationId": "NGroups_Update", + "x-ms-examples": {}, + "summary": "Update a specified nGroup.", + "description": "Update a specified nGroup.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + }, + { + "name": "nGroup", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NGroup" + }, + "description": "The nGroup object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NGroup" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string" + } + } + }, + "202": { + "description": "nGroup update started", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "NGroups_Delete", + "x-ms-examples": {}, + "summary": "Delete a nGroup.", + "description": "Deletes a nGroup.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/start": { + "post": { + "operationId": "NGroups_Start", + "x-ms-examples": {}, + "summary": "Starts all container groups in a nGroup.", + "description": "Starts all container groups in a nGroup. Compute resources will be allocated and billing will start.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + } + ], + "responses": { + "202": { + "description": "Started - the container groups are starting.", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/stop": { + "post": { + "operationId": "NGroups_Stop", + "x-ms-examples": {}, + "summary": "Stops all container groups in a nGroup.", + "description": "Stops all container groups in a nGroup. Compute resources will be deallocated and billing will stop.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/restart": { + "post": { + "operationId": "NGroups_Restart", + "x-ms-examples": {}, + "summary": "Restarts all container groups in a nGroup.", + "description": "Restarts all container groups in a nGroup in place. If container image has updates, new image will be downloaded.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NGroupsNameParameter" + } + ], + "responses": { + "202": { + "description": "NoContent", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups": { + "get": { + "operationId": "NGroups_ListByResourceGroup", + "x-ms-examples": {}, + "summary": "Gets a list of all nGroups under a resource group.", + "description": "Gets a list of all nGroups under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NGroupsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/ngroups": { + "get": { + "operationId": "NGroups_List", + "x-ms-examples": {}, + "summary": "Gets a list of all nGroups under a subscription.", + "description": "Gets a list of all nGroups under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NGroupsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { + "get": { + "operationId": "ContainerGroupProfiles_ListBySubscription", + "x-ms-examples": {}, + "summary": "Gets a list of all container group profiles under a subscription.", + "description": "Gets a list of all container group profiles under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { + "get": { + "operationId": "ContainerGroupProfiles_ListByResourceGroup", + "x-ms-examples": {}, + "summary": "Gets a list of all container group profiles under a resource group.", + "description": "Gets a list of all container group profiles under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { + "put": { + "operationId": "ContainerGroupProfile_CreateOrUpdate", + "x-ms-examples": {}, + "summary": "Create or Update a ContainerGroupProfile", + "description": "Create a CGProfile if it doesn't exist or update an existing CGProfile.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "name": "ContainerGroupProfile", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "description": "The ContainerGroupProfile object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "NoContent", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "operationId": "ContainerGroupProfile_Update", + "x-ms-examples": {}, + "summary": "Update a specified ContainerGroupProfile.", + "description": "Update a specified container group profile.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "name": "ContainerGroupProfile", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "description": "The ContainerGroupProfile object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "headers": { + "x-ms-correlation-request-id": { + "type": "string" + } + } + }, + "202": { + "description": "ContainerGroupProfile Updated", + "headers": { + "x-ms-correlation-request-id": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "operationId": "ContainerGroupProfile_Get", + "x-ms-examples": {}, + "summary": "Display information about a specified ContainerGroupProfile.", + "description": "Get the properties of the specified container group profile.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "ContainerGroupProfile_Delete", + "x-ms-examples": {}, + "summary": "Delete a ContainerGroupProfile.", + "description": "Deletes a container group profile.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + } + } } }, "definitions": { @@ -1477,33 +2166,16 @@ ] }, "restartPolicy": { - "type": "string", "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "enum": [ - "Always", - "OnFailure", - "Never" - ], - "x-ms-enum": { - "name": "ContainerGroupRestartPolicy", - "modelAsString": true - } + "$ref": "#/definitions/ContainerGroupRestartPolicy" }, "ipAddress": { "description": "The IP address type of the container group.", "$ref": "#/definitions/IpAddress" }, "osType": { - "type": "string", "description": "The operating system type required by the containers in the container group.", - "enum": [ - "Windows", - "Linux" - ], - "x-ms-enum": { - "name": "OperatingSystemTypes", - "modelAsString": true - } + "$ref": "#/definitions/OSType" }, "volumes": { "type": "array", @@ -1587,16 +2259,8 @@ "$ref": "#/definitions/ConfidentialComputeProperties" }, "priority": { - "type": "string", "description": "The priority of the container group.", - "enum": [ - "Regular", - "Spot" - ], - "x-ms-enum": { - "name": "ContainerGroupPriority", - "modelAsString": true - } + "$ref": "#/definitions/Priority" } }, "required": [ @@ -2354,6 +3018,7 @@ "description": "The container group SKU.", "type": "string", "enum": [ + "NotSpecified", "Standard", "Dedicated", "Confidential" @@ -2363,6 +3028,31 @@ "modelAsString": true } }, + "ContainerGroupRestartPolicy": { + "type": "string", + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "enum": [ + "Always", + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "ContainerGroupRestartPolicy", + "modelAsString": true + } + }, + "OSType": { + "type": "string", + "description": "The operating system type required by the containers in the container group.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, "EncryptionProperties": { "description": "The container group encryption properties.", "type": "object", @@ -2539,6 +3229,356 @@ "description": "The base64 encoded confidential compute enforcement policy" } } + }, + "Priority": { + "type": "string", + "description": "The priority of the container group.", + "enum": [ + "Regular", + "Spot" + ], + "x-ms-enum": { + "name": "ContainerGroupPriority", + "modelAsString": true + } + }, + "NGroupsSkusList": { + "description": "List of SKU definitions. NGroups offer a single sku", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NGroupSkus" + }, + "description": "The list of N Groups SKUs." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of N Groups SKUs." + } + } + }, + "NGroupSkus": { + "description": "The container probe, for liveness or readiness.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "description": "The type of resource the sku is applied to." + }, + "sku": { + "type": "string", + "description": "The sku of the resource type" + }, + "skuCapacity": { + "type": "string", + "description": "The number of container groups of the nGroups." + } + } + }, + "NGroupsListResult": { + "description": "The nGroups list response that contains the nGroups properties.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NGroup" + }, + "description": "The list of N Groups." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of N Groups." + } + } + }, + "NGroup": { + "type": "object", + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NGroupProperties" + }, + "identity": { + "$ref": "#/definitions/NGroupIdentity", + "description": "The identity of the nGroup, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The nGroups zones. NOTE: Availability zones can only be set when you create the scale set" + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a nGroup." + }, + "NGroupIdentity": { + "type": "object", + "description": "Identity for the nGroup.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the nGroup identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the nGroup. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the container scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the nGroup.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "additionalProperties": { + "type": "object", + "$ref": "../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/UserAssignedIdentity" + } + } + } + }, + "NGroupProperties": { + "type": "object", + "properties": { + "elasticProfile": { + "$ref": "#/definitions/ElasticProfile", + "description": "The elastic profile." + }, + "containerGroupProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroupProfileStub" + }, + "x-ms-identifiers": [], + "description": "The Container Group Profiles that could be used in a nGroup." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Canceled", + "Deleting", + "Migrating" + ], + "description": "The provisioning state, which only appears in the response.", + "x-ms-enum": { + "name": "NGroupProvisioningState", + "modelAsString": true + } + } + }, + "description": "Describes the properties of a Container Scale Set." + }, + "ElasticProfile": { + "type": "object", + "properties": { + "desiredCount": { + "type": "integer", + "format": "int32" + } + }, + "description": "Describes the elastic profile of the Container Scale Set" + }, + "ContainerGroupProfileStub": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/definitions/ApiEntityReference" + } + }, + "description": "The object that contains a reference to a Container Group Profile" + }, + "ApiEntityReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." + } + }, + "description": "The API entity reference." + }, + "ContainerGroupProfileListResult": { + "description": "The container group profile list response", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "description": "The list of ContainerGroupProfiles under a subscription or resource group." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Container Group Profiles." + } + } + }, + "ContainerGroupProfile": { + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "description": "Gets the container group profile type - Microsoft.ContainerInstance/containerGroupProfiles" + }, + "properties": { + "$ref": "#/definitions/ContainerGroupProfileProperties" + } + } + }, + "ContainerGroupProfileProperties": { + "type": "object", + "properties": { + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "$ref": "#/definitions/ContainerGroupRestartPolicy" + }, + "shutdownGracePeriod": { + "description": "Shutdown grace period for containers in a container group.", + "type": "string", + "format": "date-time" + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "timeToLive": { + "description": "Post completion time to live for containers of a CG", + "type": "string", + "format": "date-time" + }, + "osType": { + "description": "The operating system type required by the containers in the container group.", + "$ref": "#/definitions/OSType" + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "priority": { + "description": "The priority of the container group.", + "$ref": "#/definitions/Priority" + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "revision": { + "description": "Container group profile current revision number", + "type": "integer" + }, + "registeredRevisions": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Registered revisions are calculated at request time based off the records in the table logs." + }, + "useKrypton": { + "type": "boolean", + "description": "Gets or sets Krypton use property." + } + } } }, "parameters": { @@ -2605,7 +3645,28 @@ "type": "string", "description": "The operation Id.", "x-ms-parameter-location": "method" + }, + "NGroupsNameParameter": { + "name": "ngroupsName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "minLength": 1, + "maxLength": 63, + "description": "The N Groups name.", + "x-ms-parameter-location": "method" + }, + "ContainerGroupProfileNameParameter": { + "name": "ContainerGroupProfileName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "minLength": 1, + "maxLength": 63, + "description": "ContainerGroupProfile name.", + "x-ms-parameter-location": "method" } } } - From 98a4077c196b11f0bf3ad54bd7cbbb281f5a2faf Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 01:52:33 -0700 Subject: [PATCH 05/42] updated NGroup properties --- .../2024-11-01-preview/containerInstance.json | 121 +++++++++++++++++- 1 file changed, 116 insertions(+), 5 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 335ebb5f29a6..4e13c79cfe8b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3316,6 +3316,13 @@ }, "description": "The nGroups zones. NOTE: Availability zones can only be set when you create the scale set" }, + "tags": { + "type": "object", + "description": "Tags is a dictionary where customer can provide flags to enable certain features. Eg: autoscale.enabled: true", + "additionalProperties": { + "type": "string" + } + }, "location": { "type": "string", "x-ms-mutability": [ @@ -3348,7 +3355,7 @@ }, "type": { "type": "string", - "description": "The type of identity used for the container scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the nGroup.", + "description": "The type of identity used for the nGroup. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the nGroup.", "enum": [ "SystemAssigned", "UserAssigned", @@ -3362,7 +3369,7 @@ }, "userAssignedIdentities": { "type": "object", - "description": "The list of user identities associated with the container scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "description": "The list of user identities associated with the nGroups. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", "additionalProperties": { "type": "object", "$ref": "../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/UserAssignedIdentity" @@ -3377,6 +3384,10 @@ "$ref": "#/definitions/ElasticProfile", "description": "The elastic profile." }, + "placementProfile": { + "$ref": "#/definitions/PlacementProfile", + "description": "Provides options w.r.t allocation and management w.r.t certain placement policies. These utilize capabilities provided by the underlying Azure infrastructure. They are typically used for high availability scenarios. E.g., distributing CGs across fault domains." + }, "containerGroupProfiles": { "type": "array", "items": { @@ -3404,7 +3415,17 @@ } } }, - "description": "Describes the properties of a Container Scale Set." + "description": "Describes the properties of a nGroup." + }, + "PlacementProfile": { + "type": "object", + "description": "Provides options w.r.t allocation and management w.r.t certain placement policies. These utilize capabilities provided by the underlying Azure infrastructure. They are typically used for high availability scenarios. E.g., distributing CGs across fault domains.", + "properties": { + "faultDomainCount": { + "type": "integer", + "description": "The number of fault domains to be used to spread CGs in a nGroup. This can only be specified during nGroup creation and is immutable after that." + } + } }, "ElasticProfile": { "type": "object", @@ -3412,19 +3433,109 @@ "desiredCount": { "type": "integer", "format": "int32" + }, + "maintainDesiredCount": { + "type": "boolean", + "description": "Flag that indicates whether desiredCount should be maintained when customer deletes SPECIFIC container groups (CGs) from the NGroups. In this case, new CGs will be created by NGroup to compensate for the specific deleted ones." + }, + "containerGroupNamingPolicy": { + "type": "object", + "description": "Container Groups are named on a generic guid based naming scheme/policy. Customer can modify naming policy to add prefix to CG names during scale out operation.", + "properties": { + "guidNamingPolicy": { + "type": "object", + "properties": { + "prefix": { + "description": "The prefix can be used when there are tooling limitations (e.g. on the Azure portal where CGs from multiple nGroups exist in the same RG). The prefix with the suffixed resource name must still follow Azure resource naming guidelines.", + "type": "string" + } + } + } + } } }, - "description": "Describes the elastic profile of the Container Scale Set" + "description": "Describes the elastic profile of the nGroup" }, "ContainerGroupProfileStub": { "type": "object", "properties": { "resource": { - "$ref": "#/definitions/ApiEntityReference" + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to the container group profile ARM resource hosted in ACI RP." + }, + "revision": { + "type": "integer", + "description": "The revision of the CG profile is an optional property. If customer does not to provide a revision then nGroups will pickup the latest revision of CGProfile." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "A network profile for network settings of a ContainerGroupProfile." } }, "description": "The object that contains a reference to a Container Group Profile" }, + "NetworkProfile": { + "type": "object", + "description": "A network profile for network settings of a ContainerGroupProfile. Used to manage load balancer and application gateway backend pools, specifically updating the IP addresses of CGs within the backend pool.", + "properties": { + "loadBalancer": { + "$ref": "#/definitions/LoadBalancer", + "description": "LoadBalancer the CG profile will use to interact with CGs in a backend pool" + }, + "applicationGateway": { + "$ref": "#/definitions/ApplicationGateway", + "description": "Application Gateway the CG profile will use to interact with CGs in a backend pool" + } + } + }, + "ApplicationGateway": { + "type": "object", + "description": "Application Gateway the CG profile will use to interact with CGs in a backend pool", + "properties": { + "resource": { + "type": "string", + "description": "The Application Gateway ARM resource Id." + }, + "backendAddressPools": { + "type": "array", + "description": "List of Application Gateway Backend Address Pools.", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + } + } + } + }, + "LoadBalancer": { + "type": "object", + "description": "LoadBalancer the CG profile will use to interact with CGs in a backend pool", + "properties": { + "backendAddressPools": { + "type": "array", + "description": "List of Load Balancer Backend Address Pools.", + "items": { + "$ref": "#/definitions/LoadBalancerBackendAddressPool" + } + } + } + }, + "LoadBalancerBackendAddressPool": { + "type": "object", + "properties": { + "resource": { + "type": "string", + "description": "The Load Balancer backend address pool ARM resource Id." + } + } + }, + "ApplicationGatewayBackendAddressPool": { + "type": "object", + "properties": { + "resource": { + "type": "string", + "description": "The application gateway backend address pool ARM resource Id." + } + } + }, "ApiEntityReference": { "type": "object", "properties": { From c7111a635cd82a022a3eb9a5bcb820ad905d5b63 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 02:12:24 -0700 Subject: [PATCH 06/42] updated CGProfileStub properties, added storage profile --- .../2024-11-01-preview/containerInstance.json | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 4e13c79cfe8b..97ba36185270 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3470,10 +3470,72 @@ "networkProfile": { "$ref": "#/definitions/NetworkProfile", "description": "A network profile for network settings of a ContainerGroupProfile." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Storage profile for storage related settings of a container group profile." } }, "description": "The object that contains a reference to a Container Group Profile" }, + "StorageProfile": { + "type": "object", + "description": "Storage profile for storage related settings of a container group profile.", + "properties": { + "fileShares": { + "type": "array", + "items": { + "$ref": "#/definitions/FileShare", + "description": "List of file shares that will be created and mounted on CGs." + } + } + } + }, + "FileShare": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "resourceGroupName": { + "type": "string" + }, + "storageAccountName": { + "type": "string" + }, + "properties": { + "type": "object", + "properties": { + "shareAccessType": { + "type": "string", + "description": " Specifies how Container Groups can access the Azure file share i.e. all CG will share same Azure file share or going to have exclusive file share.", + "enum": [ + "Shared", + "Exclusive" + ], + "x-ms-enum": { + "name": "AzureFileShareAccessType", + "modelAsString": false + } + }, + "shareAccessTier": { + "type": "string", + "description": "learn more at: https://learn.microsoft.com/en-us/rest/api/storagerp/file-shares/create?tabs=HTTP#shareaccesstier", + "enum": [ + "cool", + "hot", + "premium", + "transactionoptimized" + ], + "x-ms-enum": { + "name": "AzureFileShareAccessTier", + "modelAsString": false + } + } + } + } + } + }, "NetworkProfile": { "type": "object", "description": "A network profile for network settings of a ContainerGroupProfile. Used to manage load balancer and application gateway backend pools, specifically updating the IP addresses of CGs within the backend pool.", From f85aa7816e63cf5da58be7a9cdcc41b4df801b20 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 03:36:25 -0700 Subject: [PATCH 07/42] added updateProfile --- .../2024-11-01-preview/containerInstance.json | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 97ba36185270..91e23c71c5dd 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3413,10 +3413,49 @@ "name": "NGroupProvisioningState", "modelAsString": true } + }, + "updateProfile": { + "$ref": "#/definitions/UpdateProfile", + "description": "Used by the customer to specify the way to update the Container Groups in NGroup." } }, "description": "Describes the properties of a nGroup." }, + "UpdateProfile": { + "type": "object", + "description": "Used by the customer to specify the way to update the Container Groups in NGroup.", + "properties": { + "updateMode": { + "type": "string", + "enum": [ + "Manual", + "Rolling" + ] + }, + "rollingUpdateProfile": { + "type": "object", + "description": "This profile allows the customers to customize the rolling update.", + "properties": { + "maxBatchPercent": { + "type": "integer", + "description": "Maximum percentage of total Container Groups which can be updated simultaneously by rolling update in one batch." + }, + "maxUnhealthyPercent": { + "type": "integer", + "description": "Maximum percentage of the updated Container Groups which can be in unhealthy state after each batch is updated." + }, + "pauseTimeBetweenBatches": { + "type": "string", + "description": "The wait time between batches after completing the one batch of the rolling update and starting the next batch. The time duration should be specified in ISO 8601 format for duration." + }, + "inPlaceUpdate": { + "type": "boolean", + "description": "Default is false. If set to true, the CGs will be updated in-place instead of creating new CG and deleting old ones." + } + } + } + } + }, "PlacementProfile": { "type": "object", "description": "Provides options w.r.t allocation and management w.r.t certain placement policies. These utilize capabilities provided by the underlying Azure infrastructure. They are typically used for high availability scenarios. E.g., distributing CGs across fault domains.", From 6c39a292db2cab23102769aa2c2b4b63df298bb2 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 03:57:05 -0700 Subject: [PATCH 08/42] added containergroupproperties --- .../2024-11-01-preview/containerInstance.json | 69 ++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 91e23c71c5dd..a9fa5178f36d 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3513,9 +3513,76 @@ "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile for storage related settings of a container group profile." + }, + "containerGroupProperties": { + "$ref": "#/definitions/NGroupContainerGroupProperties", + "description": " Container Group properties which can be set while creating or updating the nGroups." } }, - "description": "The object that contains a reference to a Container Group Profile" + "description": "The object that contains a reference to a Container Group Profile and it's other related properties." + }, + "NGroupContainerGroupProperties": { + "type": "object", + "description": "Container Group properties which can be set while creating or updating the nGroups.", + "properties": { + "subnetIds": { + "type": "array", + "description": "Contains information about Virtual Network Subnet ARM Resource", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "volumes": { + "type": "array", + "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", + "items": { + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + } + } + } + } + }, + "containers": { + "type": "array", + "description": "Contains information about Container which can be set while creating or updating the nGroups.", + "items": { + "Container": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "container name" + }, + "properties": { + "type": "object", + "description": "container properties", + "properties": { + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + } + } + } + } + } + } + } + } + } }, "StorageProfile": { "type": "object", From 9e43e2e2afa147bdb377acb7b5b75f7099023401 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 7 Oct 2024 10:03:09 -0700 Subject: [PATCH 09/42] updated nits --- .../2024-11-01-preview/containerInstance.json | 38 ++++++++++++------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index a9fa5178f36d..d790df335870 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1274,7 +1274,7 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { - "operationId": "ContainerGroupProfiles_ListBySubscription", + "operationId": "ContainerGroupProfile_ListBySubscription", "x-ms-examples": {}, "summary": "Gets a list of all container group profiles under a subscription.", "description": "Gets a list of all container group profiles under a subscription.", @@ -1307,7 +1307,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { - "operationId": "ContainerGroupProfiles_ListByResourceGroup", + "operationId": "ContainerGroupProfile_ListByResourceGroup", "x-ms-examples": {}, "summary": "Gets a list of all container group profiles under a resource group.", "description": "Gets a list of all container group profiles under a resource group.", @@ -1371,13 +1371,24 @@ } ], "responses": { - "202": { - "description": "NoContent", + "200": { + "description": "OK", "headers": { - "Azure-AsyncOperation": { + "x-ms-correlation-request-id": { "type": "string" - }, - "Location": { + } + }, + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "headers": { + "x-ms-correlation-request-id": { "type": "string" } } @@ -1503,7 +1514,7 @@ "202": { "description": "Accepted", "headers": { - "Azure-AsyncOperation": { + "Ax-ms-correlation-request-id": { "type": "string" }, "Location": { @@ -3733,15 +3744,14 @@ }, "ContainerGroupProfile": { "type": "object", - "properties": { - "resourceType": { - "type": "string", - "description": "Gets the container group profile type - Microsoft.ContainerInstance/containerGroupProfiles" + "allOf": [ + { + "$ref": "#/definitions/Resource" }, - "properties": { + { "$ref": "#/definitions/ContainerGroupProfileProperties" } - } + ] }, "ContainerGroupProfileProperties": { "type": "object", From f715172f700428bdba131fef3e5ca77742ad143e Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 15:43:16 -0400 Subject: [PATCH 10/42] possible fix --- .../2024-11-01-preview/containerInstance.json | 216 +++++++++--------- 1 file changed, 112 insertions(+), 104 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index d790df335870..002af422401f 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3754,118 +3754,126 @@ ] }, "ContainerGroupProfileProperties": { + "description": "The container group profile properties", "type": "object", + "required": [ + "properties" + ], "properties": { - "sku": { - "description": "The SKU for a container group.", - "$ref": "#/definitions/ContainerGroupSku" - }, - "encryptionProperties": { - "description": "The encryption properties for a container group.", - "$ref": "#/definitions/EncryptionProperties" - }, - "containers": { - "type": "array", - "description": "The containers within the container group.", - "items": { - "$ref": "#/definitions/Container" + "properties":{ + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" }, - "x-ms-identifiers": [ - "name" - ] - }, - "initContainers": { - "type": "array", - "description": "The init containers for a container group.", - "items": { - "$ref": "#/definitions/InitContainerDefinition" + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" }, - "x-ms-identifiers": [ - "name" - ] - }, - "extensions": { - "type": "array", - "description": "extensions used by virtual kubelet", - "items": { - "$ref": "#/definitions/DeploymentExtensionSpec" + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "$ref": "#/definitions/ContainerGroupRestartPolicy" + }, + "shutdownGracePeriod": { + "description": "Shutdown grace period for containers in a container group.", + "type": "string", + "format": "date-time" + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "timeToLive": { + "description": "Post completion time to live for containers of a CG", + "type": "string", + "format": "date-time" + }, + "osType": { + "description": "The operating system type required by the containers in the container group.", + "$ref": "#/definitions/OSType" + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] }, - "x-ms-identifiers": [ - "name" - ] - }, - "imageRegistryCredentials": { - "type": "array", - "description": "The image registry credentials by which the container group is created from.", - "items": { - "$ref": "#/definitions/ImageRegistryCredential" + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" }, - "x-ms-identifiers": [ - "username" - ] - }, - "restartPolicy": { - "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "$ref": "#/definitions/ContainerGroupRestartPolicy" - }, - "shutdownGracePeriod": { - "description": "Shutdown grace period for containers in a container group.", - "type": "string", - "format": "date-time" - }, - "ipAddress": { - "description": "The IP address type of the container group.", - "$ref": "#/definitions/IpAddress" - }, - "timeToLive": { - "description": "Post completion time to live for containers of a CG", - "type": "string", - "format": "date-time" - }, - "osType": { - "description": "The operating system type required by the containers in the container group.", - "$ref": "#/definitions/OSType" - }, - "volumes": { - "type": "array", - "description": "The list of volumes that can be mounted by containers in this container group.", - "items": { - "$ref": "#/definitions/Volume" + "priority": { + "description": "The priority of the container group.", + "$ref": "#/definitions/Priority" }, - "x-ms-identifiers": [ - "name" - ] - }, - "diagnostics": { - "description": "The diagnostic information for a container group.", - "$ref": "#/definitions/ContainerGroupDiagnostics" - }, - "priority": { - "description": "The priority of the container group.", - "$ref": "#/definitions/Priority" - }, - "confidentialComputeProperties": { - "description": "The properties for confidential container group", - "$ref": "#/definitions/ConfidentialComputeProperties" - }, - "securityContext": { - "description": "The container security properties.", - "$ref": "#/definitions/SecurityContextDefinition" - }, - "revision": { - "description": "Container group profile current revision number", - "type": "integer" - }, - "registeredRevisions": { - "type": "array", - "items": { - "type": "integer" + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" }, - "description": "Registered revisions are calculated at request time based off the records in the table logs." - }, - "useKrypton": { - "type": "boolean", - "description": "Gets or sets Krypton use property." + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "revision": { + "description": "Container group profile current revision number", + "type": "integer", + "format": "int64" + }, + "registeredRevisions": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "description": "Registered revisions are calculated at request time based off the records in the table logs." + }, + "useKrypton": { + "type": "boolean", + "description": "Gets or sets Krypton use property." + } } } } From 73e1ebdfd26df26afa908ce3646cd069c3611659 Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 15:49:40 -0400 Subject: [PATCH 11/42] fix --- .../2024-11-01-preview/containerInstance.json | 227 +++++++++--------- 1 file changed, 118 insertions(+), 109 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 002af422401f..c3d740abe021 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3760,119 +3760,128 @@ "properties" ], "properties": { + "identity": { + "$ref": "#/definitions/ContainerGroupIdentity", + "description": "The identity of the container group, if configured." + }, "properties":{ - "sku": { - "description": "The SKU for a container group.", - "$ref": "#/definitions/ContainerGroupSku" - }, - "encryptionProperties": { - "description": "The encryption properties for a container group.", - "$ref": "#/definitions/EncryptionProperties" - }, - "containers": { - "type": "array", - "description": "The containers within the container group.", - "items": { - "$ref": "#/definitions/Container" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "initContainers": { - "type": "array", - "description": "The init containers for a container group.", - "items": { - "$ref": "#/definitions/InitContainerDefinition" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "extensions": { - "type": "array", - "description": "extensions used by virtual kubelet", - "items": { - "$ref": "#/definitions/DeploymentExtensionSpec" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "imageRegistryCredentials": { - "type": "array", - "description": "The image registry credentials by which the container group is created from.", - "items": { - "$ref": "#/definitions/ImageRegistryCredential" - }, - "x-ms-identifiers": [ - "username" - ] - }, - "restartPolicy": { - "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "$ref": "#/definitions/ContainerGroupRestartPolicy" - }, - "shutdownGracePeriod": { - "description": "Shutdown grace period for containers in a container group.", - "type": "string", - "format": "date-time" - }, - "ipAddress": { - "description": "The IP address type of the container group.", - "$ref": "#/definitions/IpAddress" - }, - "timeToLive": { - "description": "Post completion time to live for containers of a CG", - "type": "string", - "format": "date-time" - }, - "osType": { - "description": "The operating system type required by the containers in the container group.", - "$ref": "#/definitions/OSType" - }, - "volumes": { - "type": "array", - "description": "The list of volumes that can be mounted by containers in this container group.", - "items": { - "$ref": "#/definitions/Volume" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "diagnostics": { - "description": "The diagnostic information for a container group.", - "$ref": "#/definitions/ContainerGroupDiagnostics" - }, - "priority": { - "description": "The priority of the container group.", - "$ref": "#/definitions/Priority" - }, - "confidentialComputeProperties": { - "description": "The properties for confidential container group", - "$ref": "#/definitions/ConfidentialComputeProperties" - }, - "securityContext": { - "description": "The container security properties.", - "$ref": "#/definitions/SecurityContextDefinition" - }, - "revision": { - "description": "Container group profile current revision number", - "type": "integer", - "format": "int64" - }, - "registeredRevisions": { - "type": "array", - "items": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The container group profile properties", + "properties":{ + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "$ref": "#/definitions/ContainerGroupRestartPolicy" + }, + "shutdownGracePeriod": { + "description": "Shutdown grace period for containers in a container group.", + "type": "string", + "format": "date-time" + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "timeToLive": { + "description": "Post completion time to live for containers of a CG", + "type": "string", + "format": "date-time" + }, + "osType": { + "description": "The operating system type required by the containers in the container group.", + "$ref": "#/definitions/OSType" + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "priority": { + "description": "The priority of the container group.", + "$ref": "#/definitions/Priority" + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "revision": { + "description": "Container group profile current revision number", "type": "integer", "format": "int64" }, - "description": "Registered revisions are calculated at request time based off the records in the table logs." - }, - "useKrypton": { - "type": "boolean", - "description": "Gets or sets Krypton use property." + "registeredRevisions": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "description": "Registered revisions are calculated at request time based off the records in the table logs." + }, + "useKrypton": { + "type": "boolean", + "description": "Gets or sets Krypton use property." + } } } } From 63318a1605933f73e2dbf2870ef9a133c2a47337 Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 16:05:48 -0400 Subject: [PATCH 12/42] fix --- .../2024-11-01-preview/containerInstance.json | 102 +++++++++--------- 1 file changed, 54 insertions(+), 48 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index c3d740abe021..a6d7bade7e56 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3449,10 +3449,12 @@ "properties": { "maxBatchPercent": { "type": "integer", + "format": "int64", "description": "Maximum percentage of total Container Groups which can be updated simultaneously by rolling update in one batch." }, "maxUnhealthyPercent": { "type": "integer", + "format": "int64", "description": "Maximum percentage of the updated Container Groups which can be in unhealthy state after each batch is updated." }, "pauseTimeBetweenBatches": { @@ -3473,6 +3475,7 @@ "properties": { "faultDomainCount": { "type": "integer", + "format": "int64", "description": "The number of fault domains to be used to spread CGs in a nGroup. This can only be specified during nGroup creation and is immutable after that." } } @@ -3515,6 +3518,7 @@ }, "revision": { "type": "integer", + "format": "int64", "description": "The revision of the CG profile is an optional property. If customer does not to provide a revision then nGroups will pickup the latest revision of CGProfile." }, "networkProfile": { @@ -3535,56 +3539,62 @@ "NGroupContainerGroupProperties": { "type": "object", "description": "Container Group properties which can be set while creating or updating the nGroups.", + "required": [ + "properties" + ], "properties": { - "subnetIds": { - "type": "array", - "description": "Contains information about Virtual Network Subnet ARM Resource", - "items": { - "$ref": "#/definitions/ContainerGroupSubnetId" - } - }, - "volumes": { - "type": "array", - "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", - "items": { - "Volume": { - "description": "The properties of the volume.", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "The name of the volume.", - "type": "string" - }, - "azureFile": { - "description": "The Azure File volume.", - "$ref": "#/definitions/AzureFileVolume" + "properties": { + "subnetIds": { + "type": "array", + "description": "Contains information about Virtual Network Subnet ARM Resource", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "volumes": { + "type": "array", + "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", + "items": { + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + } } } + } - } - }, - "containers": { - "type": "array", - "description": "Contains information about Container which can be set while creating or updating the nGroups.", - "items": { - "Container": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "container name" - }, + }, + "containers": { + "type": "array", + "description": "Contains information about Container which can be set while creating or updating the nGroups.", + "items": { + "Container": { + "type": "object", "properties": { - "type": "object", - "description": "container properties", + "name": { + "type": "string", + "description": "container name" + }, "properties": { - "volumeMounts": { - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" + "type": "object", + "description": "container properties", + "properties": { + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + } } } } @@ -3760,10 +3770,6 @@ "properties" ], "properties": { - "identity": { - "$ref": "#/definitions/ContainerGroupIdentity", - "description": "The identity of the container group, if configured." - }, "properties":{ "x-ms-client-flatten": true, "type": "object", From bf66e55115f2bce05e09a955eaa5abcc34241bfe Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 16:16:37 -0400 Subject: [PATCH 13/42] autorest fix --- .../preview/2024-11-01-preview/containerInstance.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index a6d7bade7e56..90ecc97e68ef 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3544,6 +3544,8 @@ ], "properties": { "properties": { + "type": "object", + "description": "Container Group properties which can be set while creating or updating the nGroups", "subnetIds": { "type": "array", "description": "Contains information about Virtual Network Subnet ARM Resource", From f849118f8a70efcd4e69e35b05538df942a90201 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 13:25:12 -0700 Subject: [PATCH 14/42] fixed structural errors --- .../2024-11-01-preview/containerInstance.json | 76 ++++++++++--------- 1 file changed, 39 insertions(+), 37 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index d790df335870..11a0b9b93a7d 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1341,7 +1341,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{ContainerGroupProfileName}": { "put": { "operationId": "ContainerGroupProfile_CreateOrUpdate", "x-ms-examples": {}, @@ -3547,54 +3547,56 @@ "type": "array", "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", "items": { - "Volume": { - "description": "The properties of the volume.", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "The name of the volume.", - "type": "string" - }, - "azureFile": { - "description": "The Azure File volume.", - "$ref": "#/definitions/AzureFileVolume" - } - } - } + "$ref": "#/definitions/NGroupCGPropertyVolume" } }, "containers": { "type": "array", "description": "Contains information about Container which can be set while creating or updating the nGroups.", "items": { - "Container": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "container name" - }, - "properties": { - "type": "object", - "description": "container properties", - "properties": { - "volumeMounts": { - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" - } - } - } - } + "$ref": "#/definitions/NGroupCGPropertyContainer" + } + } + } + }, + "NGroupCGPropertyContainer": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "container name" + }, + "properties": { + "type": "object", + "description": "container properties", + "properties": { + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" } } } } } }, + "NGroupCGPropertyVolume": { + "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + } + } + }, "StorageProfile": { "type": "object", "description": "Storage profile for storage related settings of a container group profile.", From 69d6ec944daba7e510f26df5acb25a9f53f067f6 Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 16:26:24 -0400 Subject: [PATCH 15/42] properties fix --- .../2024-11-01-preview/containerInstance.json | 92 ++++++++++--------- 1 file changed, 47 insertions(+), 45 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 90ecc97e68ef..06b7922c9042 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3546,56 +3546,58 @@ "properties": { "type": "object", "description": "Container Group properties which can be set while creating or updating the nGroups", - "subnetIds": { - "type": "array", - "description": "Contains information about Virtual Network Subnet ARM Resource", - "items": { - "$ref": "#/definitions/ContainerGroupSubnetId" - } - }, - "volumes": { - "type": "array", - "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", - "items": { - "Volume": { - "description": "The properties of the volume.", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "The name of the volume.", - "type": "string" - }, - "azureFile": { - "description": "The Azure File volume.", - "$ref": "#/definitions/AzureFileVolume" + "properties": { + "subnetIds": { + "type": "array", + "description": "Contains information about Virtual Network Subnet ARM Resource", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "volumes": { + "type": "array", + "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", + "items": { + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + } } } + } - - } - }, - "containers": { - "type": "array", - "description": "Contains information about Container which can be set while creating or updating the nGroups.", - "items": { - "Container": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "container name" - }, + }, + "containers": { + "type": "array", + "description": "Contains information about Container which can be set while creating or updating the nGroups.", + "items": { + "Container": { + "type": "object", "properties": { - "type": "object", - "description": "container properties", + "name": { + "type": "string", + "description": "container name" + }, "properties": { - "volumeMounts": { - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" + "type": "object", + "description": "container properties", + "properties": { + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + } } } } From 8c8839ae206e4274e467bd7ecd255b4486e01a1b Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 16:35:26 -0400 Subject: [PATCH 16/42] revert --- .../2024-11-01-preview/containerInstance.json | 98 +++++++++---------- 1 file changed, 46 insertions(+), 52 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 06b7922c9042..d71c06c0ea7f 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3543,62 +3543,56 @@ "properties" ], "properties": { - "properties": { - "type": "object", - "description": "Container Group properties which can be set while creating or updating the nGroups", - "properties": { - "subnetIds": { - "type": "array", - "description": "Contains information about Virtual Network Subnet ARM Resource", - "items": { - "$ref": "#/definitions/ContainerGroupSubnetId" - } - }, - "volumes": { - "type": "array", - "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", - "items": { - "Volume": { - "description": "The properties of the volume.", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "The name of the volume.", - "type": "string" - }, - "azureFile": { - "description": "The Azure File volume.", - "$ref": "#/definitions/AzureFileVolume" - } - } + "subnetIds": { + "type": "array", + "description": "Contains information about Virtual Network Subnet ARM Resource", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "volumes": { + "type": "array", + "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", + "items": { + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" } - } - }, - "containers": { - "type": "array", - "description": "Contains information about Container which can be set while creating or updating the nGroups.", - "items": { - "Container": { + } + + } + }, + "containers": { + "type": "array", + "description": "Contains information about Container which can be set while creating or updating the nGroups.", + "items": { + "Container": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "container name" + }, + "properties": { "type": "object", + "description": "container properties", "properties": { - "name": { - "type": "string", - "description": "container name" - }, - "properties": { - "type": "object", - "description": "container properties", - "properties": { - "volumeMounts": { - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" - } - } + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" } } } From 049f60235fa3a3048ab079ad6515787e3b1feca8 Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 16:57:42 -0400 Subject: [PATCH 17/42] removed required --- .../preview/2024-11-01-preview/containerInstance.json | 6 ------ 1 file changed, 6 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 51c1a1292be0..c6367c8f8b12 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3539,9 +3539,6 @@ "NGroupContainerGroupProperties": { "type": "object", "description": "Container Group properties which can be set while creating or updating the nGroups.", - "required": [ - "properties" - ], "properties": { "subnetIds": { "type": "array", @@ -3765,9 +3762,6 @@ "ContainerGroupProfileProperties": { "description": "The container group profile properties", "type": "object", - "required": [ - "properties" - ], "properties": { "properties":{ "x-ms-client-flatten": true, From f9364dd3c50b9c87cf624406091c1efd1b7ba54f Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 17:13:30 -0400 Subject: [PATCH 18/42] remove requirement for properties --- .../preview/2024-11-01-preview/containerInstance.json | 1 - 1 file changed, 1 deletion(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index c6367c8f8b12..322b7e9f4b9d 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1419,7 +1419,6 @@ { "name": "ContainerGroupProfile", "in": "body", - "required": true, "schema": { "$ref": "#/definitions/ContainerGroupProfile" }, From 7fb2f2dae7a3525f638c8c68d80ac13e86a672bd Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 17:20:16 -0400 Subject: [PATCH 19/42] no change keep --- .../preview/2024-11-01-preview/containerInstance.json | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 322b7e9f4b9d..c6367c8f8b12 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1419,6 +1419,7 @@ { "name": "ContainerGroupProfile", "in": "body", + "required": true, "schema": { "$ref": "#/definitions/ContainerGroupProfile" }, From 1106277699808e197067b75bb0c75a43281705ee Mon Sep 17 00:00:00 2001 From: John Richardson Date: Wed, 23 Oct 2024 17:25:18 -0400 Subject: [PATCH 20/42] only use resource deinfition for patch --- .../preview/2024-11-01-preview/containerInstance.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index c6367c8f8b12..ec205ebd6237 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1417,13 +1417,13 @@ "$ref": "#/parameters/ContainerGroupProfileNameParameter" }, { - "name": "ContainerGroupProfile", - "in": "body", + "name": "Resource", + "description": "The container group profile resource with just the tags to be updated.", "required": true, + "in": "body", "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - }, - "description": "The ContainerGroupProfile object." + "$ref": "#/definitions/Resource" + } }, { "$ref": "#/parameters/ApiVersionParameter" From 3957c10e700617b97e31b4f87c6cd95951dd2c0c Mon Sep 17 00:00:00 2001 From: "REDMOND\\sandep" Date: Wed, 23 Oct 2024 14:37:29 -0700 Subject: [PATCH 21/42] Lint fixes --- .../2024-11-01-preview/containerInstance.json | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index ec205ebd6237..5f56bf67d5b1 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1446,6 +1446,9 @@ "headers": { "x-ms-correlation-request-id": { "type": "string" + }, + "Location": { + "type": "string" } } }, @@ -1455,7 +1458,8 @@ "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true }, "get": { "operationId": "ContainerGroupProfile_Get", @@ -1531,7 +1535,8 @@ "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-long-running-operation": true } } }, @@ -3441,7 +3446,11 @@ "enum": [ "Manual", "Rolling" - ] + ], + "x-ms-enum": { + "name": "NGroupUpdateMode", + "modelAsString": true + } }, "rollingUpdateProfile": { "type": "object", @@ -3449,12 +3458,12 @@ "properties": { "maxBatchPercent": { "type": "integer", - "format": "int64", + "format": "int32", "description": "Maximum percentage of total Container Groups which can be updated simultaneously by rolling update in one batch." }, "maxUnhealthyPercent": { "type": "integer", - "format": "int64", + "format": "int32", "description": "Maximum percentage of the updated Container Groups which can be in unhealthy state after each batch is updated." }, "pauseTimeBetweenBatches": { @@ -3475,7 +3484,7 @@ "properties": { "faultDomainCount": { "type": "integer", - "format": "int64", + "format": "int32", "description": "The number of fault domains to be used to spread CGs in a nGroup. This can only be specified during nGroup creation and is immutable after that." } } @@ -3518,7 +3527,7 @@ }, "revision": { "type": "integer", - "format": "int64", + "format": "int32", "description": "The revision of the CG profile is an optional property. If customer does not to provide a revision then nGroups will pickup the latest revision of CGProfile." }, "networkProfile": { From 5f247c4ed11a878fd355d16c039af43470395803 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 15:24:49 -0700 Subject: [PATCH 22/42] resolved breaking change --- .../2024-11-01-preview/containerInstance.json | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 5f56bf67d5b1..960d2c0dad8b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3332,13 +3332,6 @@ }, "description": "The nGroups zones. NOTE: Availability zones can only be set when you create the scale set" }, - "tags": { - "type": "object", - "description": "Tags is a dictionary where customer can provide flags to enable certain features. Eg: autoscale.enabled: true", - "additionalProperties": { - "type": "string" - } - }, "location": { "type": "string", "x-ms-mutability": [ @@ -3385,10 +3378,10 @@ }, "userAssignedIdentities": { "type": "object", - "description": "The list of user identities associated with the nGroups. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "description": "The list of user identities associated with the nGroup.", "additionalProperties": { - "type": "object", - "$ref": "../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/UserAssignedIdentity" + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "$ref": "#/definitions/UserAssignedIdentities" } } } From 62e83a23801479f03e225229b870c0d7b5bbb524 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 16:26:38 -0700 Subject: [PATCH 23/42] updated swagger --- .../2024-11-01-preview/containerInstance.json | 122 +++++++++--------- 1 file changed, 64 insertions(+), 58 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 960d2c0dad8b..7cc0f6b31b9f 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -834,7 +834,7 @@ "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/skus": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/skus": { "get": { "operationId": "NGroupsSkus_Get", "x-ms-examples": {}, @@ -873,11 +873,11 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}": { "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, - "summary": "Display information about a specified nGroup.", + "summary": "Display information about a specified NGroup.", "description": "Get the properties of the specified n group.", "parameters": [ { @@ -911,7 +911,7 @@ "put": { "operationId": "NGroups_CreateOrUpdate", "x-ms-examples": {}, - "description": "Create or update a nGroup.", + "description": "Create or update a NGroup.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -920,13 +920,13 @@ "$ref": "#/parameters/NGroupsNameParameter" }, { - "name": "nGroup", + "name": "NGroup", "in": "body", "required": true, "schema": { "$ref": "#/definitions/NGroup" }, - "description": "The nGroup object." + "description": "The NGroup object." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -973,8 +973,8 @@ "patch": { "operationId": "NGroups_Update", "x-ms-examples": {}, - "summary": "Update a specified nGroup.", - "description": "Update a specified nGroup.", + "summary": "Update a specified NGroup.", + "description": "Update a specified NGroup.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -983,13 +983,13 @@ "$ref": "#/parameters/NGroupsNameParameter" }, { - "name": "nGroup", + "name": "NGroup", "in": "body", "required": true, "schema": { "$ref": "#/definitions/NGroup" }, - "description": "The nGroup object." + "description": "The NGroup object." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1011,7 +1011,7 @@ } }, "202": { - "description": "nGroup update started", + "description": "NGroup update started", "headers": { "Azure-AsyncOperation": { "type": "string" @@ -1036,8 +1036,8 @@ "delete": { "operationId": "NGroups_Delete", "x-ms-examples": {}, - "summary": "Delete a nGroup.", - "description": "Deletes a nGroup.", + "summary": "Delete a NGroup.", + "description": "Deletes a NGroup.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1080,12 +1080,12 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/start": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/start": { "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, - "summary": "Starts all container groups in a nGroup.", - "description": "Starts all container groups in a nGroup. Compute resources will be allocated and billing will start.", + "summary": "Starts all container groups in a NGroup.", + "description": "Starts all container groups in a NGroup. Compute resources will be allocated and billing will start.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1125,12 +1125,12 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/stop": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/stop": { "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, - "summary": "Stops all container groups in a nGroup.", - "description": "Stops all container groups in a nGroup. Compute resources will be deallocated and billing will stop.", + "summary": "Stops all container groups in a NGroup.", + "description": "Stops all container groups in a NGroup. Compute resources will be deallocated and billing will stop.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1158,12 +1158,12 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/restart": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/restart": { "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, - "summary": "Restarts all container groups in a nGroup.", - "description": "Restarts all container groups in a nGroup in place. If container image has updates, new image will be downloaded.", + "summary": "Restarts all container groups in a NGroup.", + "description": "Restarts all container groups in a NGroup in place. If container image has updates, new image will be downloaded.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1203,12 +1203,12 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups": { "get": { "operationId": "NGroups_ListByResourceGroup", "x-ms-examples": {}, - "summary": "Gets a list of all nGroups under a resource group.", - "description": "Gets a list of all nGroups under a resource group.", + "summary": "Gets a list of all NGroups under a resource group.", + "description": "Gets a list of all NGroups under a resource group.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1239,12 +1239,12 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/ngroups": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/NGroups": { "get": { "operationId": "NGroups_List", "x-ms-examples": {}, - "summary": "Gets a list of all nGroups under a subscription.", - "description": "Gets a list of all nGroups under a subscription.", + "summary": "Gets a list of all NGroups under a subscription.", + "description": "Gets a list of all NGroups under a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -1341,7 +1341,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{ContainerGroupProfileName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { "put": { "operationId": "ContainerGroupProfile_CreateOrUpdate", "x-ms-examples": {}, @@ -1422,7 +1422,7 @@ "required": true, "in": "body", "schema": { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ContainerGroupProfile" } }, { @@ -3289,12 +3289,12 @@ }, "skuCapacity": { "type": "string", - "description": "The number of container groups of the nGroups." + "description": "The number of container groups of the NGroups." } } }, "NGroupsListResult": { - "description": "The nGroups list response that contains the nGroups properties.", + "description": "The NGroups list response that contains the NGroups properties.", "type": "object", "properties": { "value": { @@ -3313,24 +3313,20 @@ "NGroup": { "type": "object", "properties": { - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/NGroupProperties" }, "identity": { "$ref": "#/definitions/NGroupIdentity", - "description": "The identity of the nGroup, if configured." + "description": "The identity of the NGroup, if configured." }, "zones": { "type": "array", "items": { "type": "string" }, - "description": "The nGroups zones. NOTE: Availability zones can only be set when you create the scale set" + "description": "The NGroups zones. NOTE: Availability zones can only be set when you create the scale set" }, "location": { "type": "string", @@ -3346,25 +3342,25 @@ "$ref": "#/definitions/Resource" } ], - "description": "Describes a nGroup." + "description": "Describes a NGroup." }, "NGroupIdentity": { "type": "object", - "description": "Identity for the nGroup.", + "description": "Identity for the NGroup.", "properties": { "principalId": { "readOnly": true, "type": "string", - "description": "The principal id of the nGroup identity. This property will only be provided for a system assigned identity." + "description": "The principal id of the NGroup identity. This property will only be provided for a system assigned identity." }, "tenantId": { "readOnly": true, "type": "string", - "description": "The tenant id associated with the nGroup. This property will only be provided for a system assigned identity." + "description": "The tenant id associated with the NGroup. This property will only be provided for a system assigned identity." }, "type": { "type": "string", - "description": "The type of identity used for the nGroup. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the nGroup.", + "description": "The type of identity used for the NGroup. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the NGroup.", "enum": [ "SystemAssigned", "UserAssigned", @@ -3378,7 +3374,7 @@ }, "userAssignedIdentities": { "type": "object", - "description": "The list of user identities associated with the nGroup.", + "description": "The list of user identities associated with the NGroup.", "additionalProperties": { "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", "$ref": "#/definitions/UserAssignedIdentities" @@ -3403,7 +3399,7 @@ "$ref": "#/definitions/ContainerGroupProfileStub" }, "x-ms-identifiers": [], - "description": "The Container Group Profiles that could be used in a nGroup." + "description": "The Container Group Profiles that could be used in a NGroup." }, "provisioningState": { "readOnly": true, @@ -3428,7 +3424,7 @@ "description": "Used by the customer to specify the way to update the Container Groups in NGroup." } }, - "description": "Describes the properties of a nGroup." + "description": "Describes the properties of a NGroup." }, "UpdateProfile": { "type": "object", @@ -3478,7 +3474,7 @@ "faultDomainCount": { "type": "integer", "format": "int32", - "description": "The number of fault domains to be used to spread CGs in a nGroup. This can only be specified during nGroup creation and is immutable after that." + "description": "The number of fault domains to be used to spread CGs in a NGroup. This can only be specified during NGroup creation and is immutable after that." } } }, @@ -3501,7 +3497,7 @@ "type": "object", "properties": { "prefix": { - "description": "The prefix can be used when there are tooling limitations (e.g. on the Azure portal where CGs from multiple nGroups exist in the same RG). The prefix with the suffixed resource name must still follow Azure resource naming guidelines.", + "description": "The prefix can be used when there are tooling limitations (e.g. on the Azure portal where CGs from multiple NGroups exist in the same RG). The prefix with the suffixed resource name must still follow Azure resource naming guidelines.", "type": "string" } } @@ -3509,7 +3505,7 @@ } } }, - "description": "Describes the elastic profile of the nGroup" + "description": "Describes the elastic profile of the NGroup" }, "ContainerGroupProfileStub": { "type": "object", @@ -3521,7 +3517,7 @@ "revision": { "type": "integer", "format": "int32", - "description": "The revision of the CG profile is an optional property. If customer does not to provide a revision then nGroups will pickup the latest revision of CGProfile." + "description": "The revision of the CG profile is an optional property. If customer does not to provide a revision then NGroups will pickup the latest revision of CGProfile." }, "networkProfile": { "$ref": "#/definitions/NetworkProfile", @@ -3533,14 +3529,14 @@ }, "containerGroupProperties": { "$ref": "#/definitions/NGroupContainerGroupProperties", - "description": " Container Group properties which can be set while creating or updating the nGroups." + "description": " Container Group properties which can be set while creating or updating the NGroups." } }, "description": "The object that contains a reference to a Container Group Profile and it's other related properties." }, "NGroupContainerGroupProperties": { "type": "object", - "description": "Container Group properties which can be set while creating or updating the nGroups.", + "description": "Container Group properties which can be set while creating or updating the NGroups.", "properties": { "subnetIds": { "type": "array", @@ -3558,7 +3554,7 @@ }, "containers": { "type": "array", - "description": "Contains information about Container which can be set while creating or updating the nGroups.", + "description": "Contains information about Container which can be set while creating or updating the NGroups.", "items": { "$ref": "#/definitions/NGroupCGPropertyContainer" } @@ -3752,12 +3748,22 @@ }, "ContainerGroupProfile": { "type": "object", + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + }, + "properties": { + "$ref": "#/definitions/ContainerGroupProfileProperties" + } + }, "allOf": [ { "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/ContainerGroupProfileProperties" } ] }, @@ -3954,7 +3960,7 @@ "x-ms-parameter-location": "method" }, "NGroupsNameParameter": { - "name": "ngroupsName", + "name": "nGroupsName", "in": "path", "required": true, "type": "string", @@ -3965,7 +3971,7 @@ "x-ms-parameter-location": "method" }, "ContainerGroupProfileNameParameter": { - "name": "ContainerGroupProfileName", + "name": "containerGroupProfileName", "in": "path", "required": true, "type": "string", From f9ece7440451d5e98596869b698d72de357a31b3 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 16:43:55 -0700 Subject: [PATCH 24/42] lintdiffs resolved --- .../2024-11-01-preview/containerInstance.json | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 7cc0f6b31b9f..66275834385b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -834,7 +834,7 @@ "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/skus": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/skus": { "get": { "operationId": "NGroupsSkus_Get", "x-ms-examples": {}, @@ -873,7 +873,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}": { "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, @@ -1080,7 +1080,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/start": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/start": { "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, @@ -1125,7 +1125,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/stop": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/stop": { "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, @@ -1158,7 +1158,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups/{nGroupsName}/restart": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/restart": { "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, @@ -1203,7 +1203,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/NGroups": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups": { "get": { "operationId": "NGroups_ListByResourceGroup", "x-ms-examples": {}, @@ -1239,7 +1239,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/NGroups": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/nGroups": { "get": { "operationId": "NGroups_List", "x-ms-examples": {}, @@ -1417,9 +1417,8 @@ "$ref": "#/parameters/ContainerGroupProfileNameParameter" }, { - "name": "Resource", + "name": "ContainerGroupProfile", "description": "The container group profile resource with just the tags to be updated.", - "required": true, "in": "body", "schema": { "$ref": "#/definitions/ContainerGroupProfile" From 0ee3437b43edb66462bac40366c982e2bfbd7fb9 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 16:45:54 -0700 Subject: [PATCH 25/42] updated cgprofile patch --- .../preview/2024-11-01-preview/containerInstance.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 66275834385b..8aaa3f845e85 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1457,8 +1457,7 @@ "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - }, - "x-ms-long-running-operation": true + } }, "get": { "operationId": "ContainerGroupProfile_Get", From a7e5646682bae3b7418f73cc83b60f332b45bf15 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 20:18:22 -0700 Subject: [PATCH 26/42] resolved lintdiffs --- .../2024-11-01-preview/containerInstance.json | 27 ++++++------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 8aaa3f845e85..732d8e075892 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -834,7 +834,7 @@ "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/skus": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/skus": { "get": { "operationId": "NGroupsSkus_Get", "x-ms-examples": {}, @@ -873,7 +873,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}": { "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, @@ -1080,7 +1080,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/start": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/start": { "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, @@ -1125,7 +1125,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/stop": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/stop": { "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, @@ -1158,7 +1158,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups/{nGroupsName}/restart": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/restart": { "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, @@ -1203,7 +1203,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/nGroups": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups": { "get": { "operationId": "NGroups_ListByResourceGroup", "x-ms-examples": {}, @@ -1239,7 +1239,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/nGroups": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/ngroups": { "get": { "operationId": "NGroups_List", "x-ms-examples": {}, @@ -1421,7 +1421,7 @@ "description": "The container group profile resource with just the tags to be updated.", "in": "body", "schema": { - "$ref": "#/definitions/ContainerGroupProfile" + "$ref": "#/definitions/Resource" } }, { @@ -1440,17 +1440,6 @@ } } }, - "202": { - "description": "ContainerGroupProfile Updated", - "headers": { - "x-ms-correlation-request-id": { - "type": "string" - }, - "Location": { - "type": "string" - } - } - }, "default": { "description": "Error response describing why the operation failed.", "schema": { From 9c4efd77a558a12fc3e4a2d0e2d248d7d9ae1953 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 21:34:10 -0700 Subject: [PATCH 27/42] resolved lintdiff --- .../2024-11-01-preview/containerInstance.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 732d8e075892..fd5d9e4aebab 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -834,7 +834,7 @@ "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/skus": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/skus": { "get": { "operationId": "NGroupsSkus_Get", "x-ms-examples": {}, @@ -873,7 +873,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}": { "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, @@ -1080,7 +1080,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/start": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/start": { "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, @@ -1125,7 +1125,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/stop": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/stop": { "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, @@ -1158,7 +1158,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{nGroupsName}/restart": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/restart": { "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, @@ -1418,7 +1418,7 @@ }, { "name": "ContainerGroupProfile", - "description": "The container group profile resource with just the tags to be updated.", + "description": "Update a specified container group profile that will also update the revision.", "in": "body", "schema": { "$ref": "#/definitions/Resource" @@ -3947,7 +3947,7 @@ "x-ms-parameter-location": "method" }, "NGroupsNameParameter": { - "name": "nGroupsName", + "name": "ngroupsName", "in": "path", "required": true, "type": "string", From 9a4eb62f44b6f5eadb015e5aae88e9bc01efe8cf Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 21:59:21 -0700 Subject: [PATCH 28/42] updated nGroups descriptions --- .../2024-11-01-preview/containerInstance.json | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index fd5d9e4aebab..2dd0c53bb823 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -838,8 +838,8 @@ "get": { "operationId": "NGroupsSkus_Get", "x-ms-examples": {}, - "summary": "Get the resource sku, resource type, and sku capacity of the n groups.", - "description": "Get the resource sku, resource type, and sku capacity of the n groups.", + "summary": "Get the resource sku, resource type, and sku capacity of the NGroups resource.", + "description": "Get the resource sku, resource type, and sku capacity of the NGroups resource.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -877,8 +877,8 @@ "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, - "summary": "Display information about a specified NGroup.", - "description": "Get the properties of the specified n group.", + "summary": "Display information about a specified NGroups resource.", + "description": "Get the properties of the specified NGroups resource.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -911,7 +911,7 @@ "put": { "operationId": "NGroups_CreateOrUpdate", "x-ms-examples": {}, - "description": "Create or update a NGroup.", + "description": "Create or update a NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -973,8 +973,8 @@ "patch": { "operationId": "NGroups_Update", "x-ms-examples": {}, - "summary": "Update a specified NGroup.", - "description": "Update a specified NGroup.", + "summary": "Update a specified NGroups resource.", + "description": "Update a specified NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1036,8 +1036,8 @@ "delete": { "operationId": "NGroups_Delete", "x-ms-examples": {}, - "summary": "Delete a NGroup.", - "description": "Deletes a NGroup.", + "summary": "Delete a NGroups resource.", + "description": "Deletes a NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1084,8 +1084,8 @@ "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, - "summary": "Starts all container groups in a NGroup.", - "description": "Starts all container groups in a NGroup. Compute resources will be allocated and billing will start.", + "summary": "Starts all container groups in a NGroups resource.", + "description": "Starts all container groups in a NGroups resource. Compute resources will be allocated and billing will start.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1129,8 +1129,8 @@ "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, - "summary": "Stops all container groups in a NGroup.", - "description": "Stops all container groups in a NGroup. Compute resources will be deallocated and billing will stop.", + "summary": "Stops all container groups in a NGroups resource.", + "description": "Stops all container groups in a NGroups resource. Compute resources will be deallocated and billing will stop.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1162,8 +1162,8 @@ "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, - "summary": "Restarts all container groups in a NGroup.", - "description": "Restarts all container groups in a NGroup in place. If container image has updates, new image will be downloaded.", + "summary": "Restarts all container groups in a NGroups resource.", + "description": "Restarts all container groups in a NGroups resource in place. If container image has updates, new image will be downloaded.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1207,8 +1207,8 @@ "get": { "operationId": "NGroups_ListByResourceGroup", "x-ms-examples": {}, - "summary": "Gets a list of all NGroups under a resource group.", - "description": "Gets a list of all NGroups under a resource group.", + "summary": "Gets a list of all NGroups resources under a resource group.", + "description": "Gets a list of all NGroups resources under a resource group.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1243,8 +1243,8 @@ "get": { "operationId": "NGroups_List", "x-ms-examples": {}, - "summary": "Gets a list of all NGroups under a subscription.", - "description": "Gets a list of all NGroups under a subscription.", + "summary": "Gets a list of all NGroups resources under a subscription.", + "description": "Gets a list of all NGroups resources under a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -3254,11 +3254,11 @@ "items": { "$ref": "#/definitions/NGroupSkus" }, - "description": "The list of N Groups SKUs." + "description": "The list of NGroups SKUs." }, "nextLink": { "type": "string", - "description": "The URI to fetch the next page of N Groups SKUs." + "description": "The URI to fetch the next page of NGroups SKUs." } } }, @@ -3289,11 +3289,11 @@ "items": { "$ref": "#/definitions/NGroup" }, - "description": "The list of N Groups." + "description": "The list of NGroups." }, "nextLink": { "type": "string", - "description": "The URI to fetch the next page of N Groups." + "description": "The URI to fetch the next page of NGroups." } } }, @@ -3954,7 +3954,7 @@ "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", "minLength": 1, "maxLength": 63, - "description": "The N Groups name.", + "description": "The NGroups name.", "x-ms-parameter-location": "method" }, "ContainerGroupProfileNameParameter": { From c1d61eb004e4b844acaa8d832eaa85f7274970ed Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 23:37:42 -0700 Subject: [PATCH 29/42] updated descriptions --- .../preview/2024-11-01-preview/containerInstance.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 2dd0c53bb823..644d7440fbfd 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -877,7 +877,7 @@ "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, - "summary": "Display information about a specified NGroups resource.", + "summary": "Get the properties of the specified NGroups resource.", "description": "Get the properties of the specified NGroups resource.", "parameters": [ { @@ -911,6 +911,7 @@ "put": { "operationId": "NGroups_CreateOrUpdate", "x-ms-examples": {}, + "summary": "Create or update a NGroups resource.", "description": "Create or update a NGroups resource.", "parameters": [ { From 46b37bd09ce9b0321427833b1d621ec3f3900b52 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Wed, 23 Oct 2024 23:49:25 -0700 Subject: [PATCH 30/42] updated description --- .../2024-11-01-preview/containerInstance.json | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 644d7440fbfd..0136064dba99 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -911,8 +911,8 @@ "put": { "operationId": "NGroups_CreateOrUpdate", "x-ms-examples": {}, - "summary": "Create or update a NGroups resource.", - "description": "Create or update a NGroups resource.", + "summary": "Create or update the NGroups resource.", + "description": "Create or update the NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1037,8 +1037,8 @@ "delete": { "operationId": "NGroups_Delete", "x-ms-examples": {}, - "summary": "Delete a NGroups resource.", - "description": "Deletes a NGroups resource.", + "summary": "Delete the NGroups resource.", + "description": "Deletes the NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1085,8 +1085,8 @@ "post": { "operationId": "NGroups_Start", "x-ms-examples": {}, - "summary": "Starts all container groups in a NGroups resource.", - "description": "Starts all container groups in a NGroups resource. Compute resources will be allocated and billing will start.", + "summary": "Starts all container groups in the specified NGroups resource.", + "description": "Starts all container groups in the specified NGroups resource. Compute resources will be allocated and billing will start.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1130,8 +1130,8 @@ "post": { "operationId": "NGroups_Stop", "x-ms-examples": {}, - "summary": "Stops all container groups in a NGroups resource.", - "description": "Stops all container groups in a NGroups resource. Compute resources will be deallocated and billing will stop.", + "summary": "Stops all container groups in the specified NGroups resource.", + "description": "Stops all container groups in the specified NGroups resource. Compute resources will be deallocated and billing will stop.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1163,8 +1163,8 @@ "post": { "operationId": "NGroups_Restart", "x-ms-examples": {}, - "summary": "Restarts all container groups in a NGroups resource.", - "description": "Restarts all container groups in a NGroups resource in place. If container image has updates, new image will be downloaded.", + "summary": "Restarts all container groups in the specified NGroups resource.", + "description": "Restarts all container groups in the specified NGroups resource in place. If container image has updates, new image will be downloaded.", "parameters": [ { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3330,7 +3330,7 @@ "$ref": "#/definitions/Resource" } ], - "description": "Describes a NGroup." + "description": "Describes the NGroups resource." }, "NGroupIdentity": { "type": "object", @@ -3387,7 +3387,7 @@ "$ref": "#/definitions/ContainerGroupProfileStub" }, "x-ms-identifiers": [], - "description": "The Container Group Profiles that could be used in a NGroup." + "description": "The Container Group Profiles that could be used in the NGroups resource." }, "provisioningState": { "readOnly": true, @@ -3412,7 +3412,7 @@ "description": "Used by the customer to specify the way to update the Container Groups in NGroup." } }, - "description": "Describes the properties of a NGroup." + "description": "Describes the properties of the NGroups resource." }, "UpdateProfile": { "type": "object", @@ -3462,7 +3462,7 @@ "faultDomainCount": { "type": "integer", "format": "int32", - "description": "The number of fault domains to be used to spread CGs in a NGroup. This can only be specified during NGroup creation and is immutable after that." + "description": "The number of fault domains to be used to spread CGs in the NGroups resource. This can only be specified during NGroup creation and is immutable after that." } } }, From 95cff3589de94f83d443c3b23215cd351e9c9187 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Fri, 25 Oct 2024 11:23:57 -0700 Subject: [PATCH 31/42] updated CGProfile patch body --- .../preview/2024-11-01-preview/containerInstance.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 0136064dba99..fbf1ce1b7f1d 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1421,8 +1421,9 @@ "name": "ContainerGroupProfile", "description": "Update a specified container group profile that will also update the revision.", "in": "body", + "required": true, "schema": { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ContainerGroupProfile" } }, { @@ -3746,6 +3747,7 @@ "description": "The geo-location where the resource lives" }, "properties": { + "x-ms-client-flatten": true, "$ref": "#/definitions/ContainerGroupProfileProperties" } }, From c7cc70759f9e629a45d5d1e4b6ced01268388322 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 4 Nov 2024 16:30:45 -0800 Subject: [PATCH 32/42] removed required properties from patch --- .../2024-11-01-preview/containerInstance.json | 20 +++---------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index fbf1ce1b7f1d..be5938a3c964 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1421,7 +1421,6 @@ "name": "ContainerGroupProfile", "description": "Update a specified container group profile that will also update the revision.", "in": "body", - "required": true, "schema": { "$ref": "#/definitions/ContainerGroupProfile" } @@ -2449,11 +2448,7 @@ "type": "string", "x-ms-secret": true } - }, - "required": [ - "workspaceId", - "workspaceKey" - ] + } }, "ContainerGroupSubnetId": { "description": "Container group subnet information.", @@ -2527,11 +2522,7 @@ "type": "string", "description": "The FQDN for the IP." } - }, - "required": [ - "ports", - "type" - ] + } }, "Port": { "description": "The port exposed on the container group.", @@ -3078,12 +3069,7 @@ "type": "string", "description": "The keyvault managed identity." } - }, - "required": [ - "vaultBaseUrl", - "keyName", - "keyVersion" - ] + } }, "InitContainerDefinition": { "description": "The init container definition.", From 12b99d6244ffab96def01eb2bb938278ef2a4a9a Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Mon, 4 Nov 2024 17:28:53 -0800 Subject: [PATCH 33/42] lintfix and spellfix --- cSpell.json | 3 ++- .../preview/2024-11-01-preview/containerInstance.json | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cSpell.json b/cSpell.json index 2491e46eed0a..814f98b90e71 100644 --- a/cSpell.json +++ b/cSpell.json @@ -211,7 +211,8 @@ { "filename": "**/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/**/containerInstance.json", "words": [ - "ngroups" + "ngroups", + "transactionoptimized" ] }, { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index be5938a3c964..4893299cc1ea 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -2511,7 +2511,6 @@ "ResourceGroupReuse", "Noreuse" ], - "default": "Unsecure", "x-ms-enum": { "name": "dnsNameLabelReusePolicy", "modelAsString": true From d361e3ecbbe854ff93d6282824ec94c1a2352510 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 11:57:37 -0800 Subject: [PATCH 34/42] added CGProfile examples and revision APIs --- .../2024-11-01-preview/containerInstance.json | 124 +- ...fileCreateOrUpdate_CreateConfidential.json | 180 + ...leCreateOrUpdate_EncryptionProperties.json | 164 + ...GroupProfileCreateOrUpdate_Extensions.json | 191 + ...tainerGroupProfileGetByRevisionNumber.json | 81 + ...ContainerGroupProfileListAllRevisions.json | 84 + .../ContainerGroupProfilesCreateOrUpdate.json | 293 ++ .../ContainerGroupProfilesDelete.json | 12 + .../examples/ContainerGroupProfilesGet.json | 80 + .../ContainerGroupProfilesGetPriority.json | 81 + .../examples/ContainerGroupProfilesList.json | 82 + ...ainerGroupProfilesListByResourceGroup.json | 83 + .../examples/ContainerGroupProfilesPatch.json | 99 + .../examples/containerInstance.json | 3126 +++++++++++++++++ 14 files changed, 4677 insertions(+), 3 deletions(-) create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 4893299cc1ea..7b90e74c65fc 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1345,7 +1345,23 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { "put": { "operationId": "ContainerGroupProfile_CreateOrUpdate", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesCreateOrUpdate": { + "$ref": "./examples/ContainerGroupProfilesCreateOrUpdate.json" + }, + "ContainerGroupProfileCreateWithExtensions": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_Extensions.json" + }, + "ContainerGroupProfileWithEncryptionProperties": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json" + }, + "ConfidentialContainerGroupProfile": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json" + }, + "ContainerGroupsCreateWithPriority": { + "$ref": "./examples/ContainerGroupsProfileCreateOrUpdate_CreatePriority.json" + } + }, "summary": "Create or Update a ContainerGroupProfile", "description": "Create a CGProfile if it doesn't exist or update an existing CGProfile.", "parameters": [ @@ -1404,7 +1420,11 @@ }, "patch": { "operationId": "ContainerGroupProfile_Update", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesPatch": { + "$ref": "./examples/ContainerGroupProfilesPatch.json" + } + }, "summary": "Update a specified ContainerGroupProfile.", "description": "Update a specified container group profile.", "parameters": [ @@ -1485,7 +1505,11 @@ }, "delete": { "operationId": "ContainerGroupProfile_Delete", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesDelete": { + "$ref": "./examples/ContainerGroupProfilesDelete.json" + } + }, "summary": "Delete a ContainerGroupProfile.", "description": "Deletes a container group profile.", "parameters": [ @@ -1526,6 +1550,92 @@ }, "x-ms-long-running-operation": true } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions": { + "get": { + "operationId": "ContainerGroupProfile_ListAllRevisions", + "x-ms-examples": { + "ContainerGroupProfileListAllRevisions": { + "$ref": "./examples/ContainerGroupProfileListAllRevisions.json" + } + }, + "summary": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group.", + "description": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group. This operation returns properties of each revision of the specified container group profile including containers, image registry credentials, restart policy, IP address type, OS type volumes, revision number, etc.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions/{revisionNumber}": { + "get": { + "operationId": "ContainerGroupProfile_GetByRevisionNumber", + "x-ms-examples": { + "ContainerGroupProfileGetByRevisionNumber": { + "$ref": "./examples/ContainerGroupProfileGetByRevisionNumber.json" + } + }, + "summary": "Get the properties of the specified revision of the container group profile.", + "description": "Gets the properties of the specified revision of the container group profile in the given subscription and resource group. The operation returns the properties of container group profile including containers, image registry credentials, restart policy, IP address type, OS type, volumes, current revision number, etc.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RevisionNumberParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { @@ -3955,6 +4065,14 @@ "maxLength": 63, "description": "ContainerGroupProfile name.", "x-ms-parameter-location": "method" + }, + "RevisionNumberParameter": { + "name": "revisionNumber", + "in": "path", + "required": true, + "type": "string", + "description": "The revision number of the container group profile.", + "x-ms-parameter-location": "method" } } } diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json new file mode 100644 index 000000000000..c6152dca956d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "containerGroupProfile": { + "location": "westeurope", + "zones": [ + "1" + ], + "properties": { + "containers": [ + { + "name": "accdemo", + "properties": { + "command": [], + "environmentVariables": [], + "image": "confiimage", + "ports": [ + { + "port": 8000 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "osType": "Linux", + "sku": "Confidential", + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Confidential", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + }, + "revision": 0 + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "westeurope", + "zones": [ + "1" + ] + } + }, + "201": { + "body": { + "properties": { + "sku": "Confidential", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + }, + "revision": 1 + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "westeurope", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json new file mode 100644 index 000000000000..b02df971c286 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "containerGroupProfile": { + "location": "eastus2", + "zones": [ + "1" + ], + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "revision": 0 + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "eastus2", + "zones": [ + "1" + ] + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "key version", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "revision": 1 + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "eastus2", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json new file mode 100644 index 000000000000..8330874990bc --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json @@ -0,0 +1,191 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "containerGroupProfile": { + "location": "eastus2", + "zones": [ + "1" + ], + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Private" + }, + "osType": "Linux", + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + }, + "protectedSettings": { + "kubeConfig": "" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "revision": 0 + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "eastus2", + "zones": [ + "1" + ] + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "revision": 1 + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "location": "eastus2", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json new file mode 100644 index 000000000000..08954b595f28 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "revisionNumber": "1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json new file mode 100644 index 000000000000..5006d0bce8e2 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json new file mode 100644 index 000000000000..4d61d0b4ca58 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json @@ -0,0 +1,293 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "containerGroupProfile": { + "location": "west us", + "zones": [ + "1" + ], + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "workspaceKey": "workspaceKey", + "logType": "ContainerInsights", + "metadata": { + "pod-uuid": "test-metadata-value" + }, + "workspaceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg/providers/microsoft.operationalinsights/workspaces/workspace" + } + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKey": "accountKey" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": { + "secretKey1": "SecretValue1InBase64", + "secretKey2": "SecretValue2InBase64" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "logType": "ContainerInsights", + "metadata": { + "pod-uuid": "test-metadata-value" + } + } + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ], + "revision": 0 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "logType": "ContainerInsights", + "metadata": { + "pod-uuid": "test-metadata-value" + } + } + }, + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json new file mode 100644 index 000000000000..d7ce02cd3832 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json new file mode 100644 index 000000000000..747a82c66978 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json new file mode 100644 index 000000000000..1498eb75f3fc --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "demo", + "containerGroupProfileName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "priority": "Spot", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json new file mode 100644 index 000000000000..cf759ee364ed --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json new file mode 100644 index 000000000000..2b9b3284eabe --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "demo", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ], + "revision": 1 + }, + "type": "Microsoft.ContainerInstance/containerGroupProfiles" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json new file mode 100644 index 000000000000..9090b51765a6 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demoResource", + "containerGroupProfileName": "demo1", + "properties": { + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demoResource/providers/Microsoft.ContainerInstance/containerGroupProfiles/demo1", + "location": "WestUs", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroupProfiles", + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + }, + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ], + "revision": 2 + } + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json new file mode 100644 index 000000000000..f9ef1d01ad25 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json @@ -0,0 +1,3126 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-05-01-preview", + "title": "ContainerInstanceManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "Impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_List", + "x-ms-examples": { + "ContainerGroupsList": { + "$ref": "./examples/ContainerGroupsList.json" + } + }, + "summary": "Get a list of container groups in the specified subscription.", + "description": "Get a list of container groups in the specified subscription. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_ListByResourceGroup", + "x-ms-examples": { + "ContainerGroupsListByResourceGroup": { + "$ref": "./examples/ContainerGroupsListByResourceGroup.json" + } + }, + "summary": "Get a list of container groups in the specified subscription and resource group.", + "description": "Get a list of container groups in a specified subscription and resource group. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}": { + "get": { + "operationId": "ContainerGroups_Get", + "x-ms-examples": { + "ContainerGroupsGet_Succeeded": { + "$ref": "./examples/ContainerGroupsGet_Succeeded.json" + }, + "ContainerGroupsGet_Failed": { + "$ref": "./examples/ContainerGroupsGet_Failed.json" + }, + "ContainerGroupsGetWithPriority": { + "$ref": "./examples/ContainerGroupsGetPriority.json" + } + }, + "summary": "Get the properties of the specified container group.", + "description": "Gets the properties of the specified container group in the specified subscription and resource group. The operation returns the properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "ContainerGroups_CreateOrUpdate", + "x-ms-examples": { + "ContainerGroupsCreateOrUpdate": { + "$ref": "./examples/ContainerGroupsCreateOrUpdate.json" + }, + "ContainerGroupCreateWithExtensions": { + "$ref": "./examples/ContainerGroupExtensions.json" + }, + "ContainerGroupWithEncryptionProperties": { + "$ref": "./examples/ContainerGroupEncryptionProperties.json" + }, + "ConfidentialContainerGroup": { + "$ref": "./examples/ContainerGroupCreateConfidential.json" + }, + "ContainerGroupCreateOrUpdateWithStandbyPool": { + "$ref": "./examples/ContainerGroupCreateOrUpdateStandbyPool.json" + }, + "ContainerGroupsCreateWithPriority": { + "$ref": "./examples/ContainerGroupsCreatePriority.json" + } + }, + "summary": "Create or update container groups.", + "description": "Create or update container groups with specified configurations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerGroup", + "description": "The properties of the container group to be created or updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "201": { + "description": "Created - the container group is created.", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "ContainerGroups_Update", + "x-ms-examples": { + "ContainerGroupsUpdate": { + "$ref": "./examples/ContainerGroupsUpdate.json" + } + }, + "summary": "Update container groups.", + "description": "Updates container group tags with specified values.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "Resource", + "description": "The container group resource with just the tags to be updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/Resource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "ContainerGroups_Delete", + "x-ms-examples": { + "ContainerGroupsDelete": { + "$ref": "./examples/ContainerGroupsDelete.json" + } + }, + "summary": "Delete the specified container group.", + "description": "Delete the specified container group in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/restart": { + "post": { + "operationId": "ContainerGroups_Restart", + "x-ms-examples": { + "ContainerRestart": { + "$ref": "./examples/ContainerGroupsRestart.json" + } + }, + "summary": "Restarts all containers in a container group.", + "description": "Restarts all containers in a container group in place. If container image has updates, new image will be downloaded.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/stop": { + "post": { + "operationId": "ContainerGroups_Stop", + "x-ms-examples": { + "ContainerStop": { + "$ref": "./examples/ContainerGroupsStop.json" + } + }, + "summary": "Stops all containers in a container group.", + "description": "Stops all containers in a container group. Compute resources will be deallocated and billing will stop.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/start": { + "post": { + "operationId": "ContainerGroups_Start", + "x-ms-examples": { + "ContainerStart": { + "$ref": "./examples/ContainerGroupsStart.json" + } + }, + "summary": "Starts all containers in a container group.", + "description": "Starts all containers in a container group. Compute resources will be allocated and billing will start.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "202": { + "description": "Started - the container group is starting." + }, + "204": { + "description": "Started - the container group is already running or starting." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.ContainerInstance/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List the operations for Azure Container Instance service.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/usages": { + "get": { + "operationId": "Location_ListUsage", + "x-ms-examples": { + "ContainerUsage": { + "$ref": "./examples/ContainerGroupUsage.json" + } + }, + "description": "Get the usage for a subscription", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/logs": { + "get": { + "operationId": "Containers_ListLogs", + "x-ms-examples": { + "ContainerListLogs": { + "$ref": "./examples/ContainerListLogs.json" + } + }, + "summary": "Get the logs for a specified container instance.", + "description": "Get the logs for a specified container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "tail", + "in": "query", + "description": "The number of lines to show from the tail of the container instance log. If not provided, all available logs are shown up to 4mb.", + "type": "integer", + "format": "int32" + }, + { + "name": "timestamps", + "in": "query", + "description": "If true, adds a timestamp at the beginning of every line of log output. If not provided, defaults to false.", + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Logs" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/exec": { + "post": { + "operationId": "Containers_ExecuteCommand", + "x-ms-examples": { + "ContainerExec": { + "$ref": "./examples/ContainerExec.json" + } + }, + "summary": "Executes a command in a specific container instance.", + "description": "Executes a command for a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "containerExecRequest", + "in": "body", + "description": "The request for the exec command.", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerExecRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerExecResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/attach": { + "post": { + "operationId": "Containers_Attach", + "x-ms-examples": { + "ContainerAttach": { + "$ref": "./examples/ContainerAttach.json" + } + }, + "summary": "Attach to the output of a specific container instance.", + "description": "Attach to the output stream of a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerAttachResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/cachedImages": { + "get": { + "operationId": "Location_ListCachedImages", + "x-ms-examples": { + "CachedImages": { + "$ref": "./examples/CachedImagesList.json" + } + }, + "summary": "Get the list of cached images.", + "description": "Get the list of cached images on specific OS type for a subscription in a region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CachedImagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/capabilities": { + "get": { + "operationId": "Location_ListCapabilities", + "x-ms-examples": { + "GetCapabilities": { + "$ref": "./examples/CapabilitiesList.json" + } + }, + "summary": "Get the list of capabilities of the location.", + "description": "Get the list of CPU/memory/GPU capabilities of a region.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CapabilitiesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/outboundNetworkDependenciesEndpoints": { + "get": { + "operationId": "ContainerGroups_GetOutboundNetworkDependenciesEndpoints", + "x-ms-examples": {}, + "summary": "Get all network dependencies for container group.", + "description": "Gets all the network dependencies for this container group to allow complete control of network setting and configuration. For container groups, this will always be an empty list.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkDependenciesResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default": { + "delete": { + "operationId": "SubnetServiceAssociationLink_Delete", + "x-ms-examples": { + "SubnetServiceAssociationLinkDelete": { + "$ref": "./examples/SubnetServiceAssociationLinkDelete.json" + } + }, + "summary": "Delete container group virtual network association links.", + "description": "Delete container group virtual network association links. The operation does not delete other resources provided by the user.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualNetworkNameParameter" + }, + { + "$ref": "#/parameters/SubnetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { + "get": { + "operationId": "ContainerGroupProfiles_List", + "x-ms-examples": { + "ContainerGroupProfilesList": { + "$ref": "./examples/ContainerGroupProfilesList.json" + } + }, + "summary": "Get a list of container group profiles in the specified subscription.", + "description": "Get a list of container group profiles in the specified subscription. This operation returns properties of each container group profile including containers, image registry credentials, restart policy, IP address type, OS type,volumes,current revision number, etc.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { + "get": { + "operationId": "ContainerGroupProfiles_ListByResourceGroup", + "x-ms-examples": { + "ContainerGroupProfilesListByResourceGroup": { + "$ref": "./examples/ContainerGroupProfilesListByResourceGroup.json" + } + }, + "summary": "Get a list of container group profiles in the specified subscription and resource group.", + "description": "Get a list of container group profiles in a specified subscription and resource group. This operation returns properties of each container group profile including containers, image registry credentials, restart policy, IP address type, OS type volumes, current revision number, etc.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { + "get": { + "operationId": "ContainerGroupProfiles_Get", + "x-ms-examples": { + "ContainerGroupProfilesGet_Succeeded": { + "$ref": "./examples/ContainerGroupProfilesGet.json" + }, + "ContainerGroupProfilesGetWithPriority": { + "$ref": "./examples/ContainerGroupProfilesGetPriority.json" + } + }, + "summary": "Get the properties of the specified container group profile.", + "description": "Gets the properties of the specified container group profile in the specified subscription and resource group. The operation returns the properties of container group profile including containers, image registry credentials, restart policy, IP address type, OS type, volumes, current revision number, etc.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "ContainerGroupProfiles_CreateOrUpdate", + "x-ms-examples": { + "ContainerGroupProfilesCreateOrUpdate": { + "$ref": "./examples/ContainerGroupProfilesCreateOrUpdate.json" + }, + "ContainerGroupProfileCreateWithExtensions": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_Extensions.json" + }, + "ContainerGroupProfileWithEncryptionProperties": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json" + }, + "ConfidentialContainerGroupProfile": { + "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json" + }, + "ContainerGroupsCreateWithPriority": { + "$ref": "./examples/ContainerGroupsProfileCreateOrUpdate_CreatePriority.json" + } + }, + "summary": "Create or update container group profiles.", + "description": "Create or update container group profiles with specified configurations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "name": "containerGroupProfile", + "description": "The properties of the container group profile to be created or updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "201": { + "description": "Created - the container group profile is created.", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "operationId": "ContainerGroupProfiles_Patch", + "x-ms-examples": { + "ContainerGroupProfilesPatch": { + "$ref": "./examples/ContainerGroupProfilesPatch.json" + } + }, + "summary": "Patch container group profiles.", + "description": "Patches container group profile with specified properties.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "name": "properties", + "description": "The container group profile properties that need to be updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/ContainerGroupProfilePatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "ContainerGroupProfiles_Delete", + "x-ms-examples": { + "ContainerGroupProfilesDelete": { + "$ref": "./examples/ContainerGroupProfilesDelete.json" + } + }, + "summary": "Delete the specified container group profile.", + "description": "Delete the specified container group profile in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + } + ], + "responses": { + "200": { + "description": "OK - Delete started" + }, + "204": { + "description": "No Content - the specified container group profile was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions": { + "get": { + "operationId": "ContainerGroupProfile_ListAllRevisions", + "x-ms-examples": { + "ContainerGroupProfileListAllRevisions": { + "$ref": "./examples/ContainerGroupProfileListAllRevisions.json" + } + }, + "summary": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group.", + "description": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group. This operation returns properties of each revision of the specified container group profile including containers, image registry credentials, restart policy, IP address type, OS type volumes, revision number, etc.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions/{revisionNumber}": { + "get": { + "operationId": "ContainerGroupProfile_GetByRevisionNumber", + "x-ms-examples": { + "ContainerGroupProfileGetByRevisionNumber": { + "$ref": "./examples/ContainerGroupProfileGetByRevisionNumber.json" + } + }, + "summary": "Get the properties of the specified revision of the container group profile.", + "description": "Gets the properties of the specified revision of the container group profile in the given subscription and resource group. The operation returns the properties of container group profile including containers, image registry credentials, restart policy, IP address type, OS type, volumes, current revision number, etc.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupProfileNameParameter" + }, + { + "$ref": "#/parameters/RevisionNumberParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "Container": { + "description": "A container instance.", + "type": "object", + "required": [ + "properties", + "name" + ], + "properties": { + "name": { + "description": "The user-provided name of the container instance.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the container instance.", + "$ref": "#/definitions/ContainerProperties" + } + } + }, + "ContainerProperties": { + "description": "The container instance properties.", + "type": "object", + "properties": { + "image": { + "description": "The name of the image used to create the container instance.", + "type": "string" + }, + "command": { + "description": "The commands to execute within the container instance in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "ports": { + "description": "The exposed ports on the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerPort" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "environmentVariables": { + "description": "The environment variables to set in the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container instance. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the container instance has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "Current container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "Previous container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "resources": { + "description": "The resource requirements of the container instance.", + "$ref": "#/definitions/ResourceRequirements" + }, + "volumeMounts": { + "description": "The volume mounts available to the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "livenessProbe": { + "description": "The liveness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "readinessProbe": { + "description": "The readiness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "configMap": { + "description": "The config map.", + "$ref": "#/definitions/ConfigMap" + } + } + }, + "ConfigMap": { + "description": "The container config map.", + "type": "object", + "properties": { + "keyValuePairs": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The list of key value pairs associated with the config map of the container." + }, + "description": "The key value pairs dictionary in the config map." + } + } + }, + "SecurityContextDefinition": { + "description": "The security context for the container.", + "type": "object", + "properties": { + "privileged": { + "type": "boolean", + "description": "The flag to determine if the container permissions is elevated to Privileged." + }, + "allowPrivilegeEscalation": { + "type": "boolean", + "description": "A boolean value indicating whether the init process can elevate its privileges" + }, + "capabilities": { + "description": "The capabilities to add or drop from a container.", + "$ref": "#/definitions/SecurityContextCapabilitiesDefinition" + }, + "runAsGroup": { + "type": "integer", + "format": "int32", + "description": "Sets the User GID for the container." + }, + "runAsUser": { + "type": "integer", + "format": "int32", + "description": "Sets the User UID for the container." + }, + "seccompProfile": { + "type": "string", + "description": "a base64 encoded string containing the contents of the JSON in the seccomp profile" + } + } + }, + "SecurityContextCapabilitiesDefinition": { + "description": "The capabilities to add or drop from a container.", + "type": "object", + "properties": { + "add": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to add to the container." + }, + "drop": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to drop from the container." + } + } + }, + "ContainerState": { + "description": "The container instance state.", + "type": "object", + "readOnly": true, + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the container instance." + }, + "startTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state started." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The container instance exit codes correspond to those from the `docker run` command." + }, + "finishTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state finished." + }, + "detailStatus": { + "type": "string", + "readOnly": true, + "description": "The human-readable status of the container instance state." + } + } + }, + "Event": { + "description": "A container group or container instance event.", + "type": "object", + "readOnly": true, + "properties": { + "count": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The count of the event." + }, + "firstTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the earliest logged event." + }, + "lastTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the latest logged event." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The event name." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The event message." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The event type." + } + } + }, + "ResourceRequirements": { + "description": "The resource requirements.", + "type": "object", + "required": [ + "requests" + ], + "properties": { + "requests": { + "description": "The resource requests of this container instance.", + "$ref": "#/definitions/ResourceRequests" + }, + "limits": { + "description": "The resource limits of this container instance.", + "$ref": "#/definitions/ResourceLimits" + } + } + }, + "ResourceRequests": { + "description": "The resource requests.", + "type": "object", + "required": [ + "memoryInGB", + "cpu" + ], + "properties": { + "memoryInGB": { + "description": "The memory request in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "The CPU request of this container instance.", + "type": "number", + "format": "double" + }, + "gpu": { + "description": "The GPU request of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "ResourceLimits": { + "description": "The resource limits.", + "type": "object", + "properties": { + "memoryInGB": { + "description": "The memory limit in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "The CPU limit of this container instance.", + "type": "number", + "format": "double" + }, + "gpu": { + "description": "The GPU limit of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "GpuResource": { + "description": "The GPU resource.", + "type": "object", + "required": [ + "count", + "sku" + ], + "properties": { + "count": { + "description": "The count of the GPU resource.", + "type": "integer", + "format": "int32" + }, + "sku": { + "type": "string", + "description": "The SKU of the GPU resource.", + "enum": [ + "K80", + "P100", + "V100" + ], + "x-ms-enum": { + "name": "GpuSku", + "modelAsString": true + } + } + } + }, + "AzureFileVolume": { + "description": "The properties of the Azure File volume. Azure File shares are mounted as volumes.", + "type": "object", + "required": [ + "shareName", + "storageAccountName" + ], + "properties": { + "shareName": { + "description": "The name of the Azure File share to be mounted as a volume.", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the Azure File shared mounted as a volume is read-only.", + "type": "boolean" + }, + "storageAccountName": { + "description": "The name of the storage account that contains the Azure File share.", + "type": "string" + }, + "storageAccountKey": { + "description": "The storage account access key used to access the Azure File share.", + "type": "string" + } + } + }, + "EmptyDirVolume": { + "description": "The empty directory volume.", + "type": "object", + "properties": {} + }, + "SecretVolume": { + "description": "The secret volume.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "GitRepoVolume": { + "description": "Represents a volume that is populated with the contents of a git repository", + "required": [ + "repository" + ], + "properties": { + "directory": { + "description": "Target directory name. Must not contain or start with '..'. If '.' is supplied, the volume directory will be the git repository. Otherwise, if specified, the volume will contain the git repository in the subdirectory with the given name.", + "type": "string" + }, + "repository": { + "description": "Repository URL", + "type": "string" + }, + "revision": { + "description": "Commit hash for the specified revision.", + "type": "string" + } + } + }, + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + }, + "emptyDir": { + "description": "The empty directory volume.", + "$ref": "#/definitions/EmptyDirVolume" + }, + "secret": { + "description": "The secret volume.", + "$ref": "#/definitions/SecretVolume" + }, + "gitRepo": { + "description": "The git repo volume.", + "$ref": "#/definitions/GitRepoVolume" + } + } + }, + "VolumeMount": { + "description": "The properties of the volume mount.", + "type": "object", + "required": [ + "name", + "mountPath" + ], + "properties": { + "name": { + "description": "The name of the volume mount.", + "type": "string" + }, + "mountPath": { + "description": "The path within the container where the volume should be mounted. Must not contain colon (:).", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the volume mount is read-only.", + "type": "boolean" + } + } + }, + "ContainerExec": { + "type": "object", + "description": "The container execution command, for liveness or readiness probe", + "properties": { + "command": { + "description": "The commands to execute within the container.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ContainerHttpGet": { + "type": "object", + "description": "The container Http Get settings, for liveness or readiness probe", + "properties": { + "path": { + "description": "The path to probe.", + "type": "string" + }, + "port": { + "type": "integer", + "description": "The port number to probe.", + "format": "int32" + }, + "scheme": { + "description": "The scheme.", + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Scheme", + "modelAsString": true + } + }, + "httpHeaders": { + "description": "The HTTP headers.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpHeader" + }, + "x-ms-identifiers": [ + "name" + ] + } + }, + "required": [ + "port" + ] + }, + "ContainerProbe": { + "type": "object", + "description": "The container probe, for liveness or readiness", + "properties": { + "exec": { + "description": "The execution command to probe", + "$ref": "#/definitions/ContainerExec" + }, + "httpGet": { + "description": "The Http Get settings to probe", + "$ref": "#/definitions/ContainerHttpGet" + }, + "initialDelaySeconds": { + "description": "The initial delay seconds.", + "type": "integer", + "format": "int32" + }, + "periodSeconds": { + "description": "The period seconds.", + "type": "integer", + "format": "int32" + }, + "failureThreshold": { + "description": "The failure threshold.", + "type": "integer", + "format": "int32" + }, + "successThreshold": { + "description": "The success threshold.", + "type": "integer", + "format": "int32" + }, + "timeoutSeconds": { + "description": "The timeout seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "ContainerGroup": { + "description": "A container group.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ContainerGroupProperties" + } + ] + }, + "ContainerGroupProfile": { + "description": "A container group profile.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ContainerGroupProfileProperties" + } + ] + }, + "ContainerGroupProperties": { + "description": "The container group properties", + "type": "object", + "required": [ + "properties" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ContainerGroupIdentity", + "description": "The identity of the container group, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The container group properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the container group. This only appears in the response." + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "type": "string", + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "enum": [ + "Always", + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "ContainerGroupRestartPolicy", + "modelAsString": true + } + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "osType": { + "type": "string", + "description": "The operating system type required by the containers in the container group.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container group. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "events": { + "description": "The events of this container group.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The state of the container group. Only valid in response." + } + } + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "subnetIds": { + "type": "array", + "description": "The subnet resource IDs for a container group.", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "dnsConfig": { + "description": "The DNS config information for a container group.", + "$ref": "#/definitions/DnsConfiguration" + }, + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "priority": { + "type": "string", + "description": "The priority of the container group.", + "enum": [ + "Regular", + "Spot" + ], + "x-ms-enum": { + "name": "ContainerGroupPriority", + "modelAsString": true + } + }, + "containerGroupProfile": { + "description": "The reference container group profile properties.", + "$ref": "#/definitions/ContainerGroupProfileReferenceDefinition" + }, + "standbyPoolProfile": { + "description": "The reference standby pool profile properties.", + "$ref": "#/definitions/StandbyPoolProfileDefinition" + }, + "isCreatedFromStandbyPool": { + "readOnly": true, + "type": "boolean", + "description": "The flag indicating whether the container group is created by standby pool." + } + }, + "required": [ + "containers" + ] + } + } + }, + "ContainerGroupProfileProperties": { + "description": "The container group profile properties", + "type": "object", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The container group profile properties", + "properties": { + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "type": "string", + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "enum": [ + "Always", + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "ContainerGroupRestartPolicy", + "modelAsString": true + } + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "osType": { + "type": "string", + "description": "The operating system type required by the containers in the container group.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "priority": { + "type": "string", + "description": "The priority of the container group.", + "enum": [ + "Regular", + "Spot" + ], + "x-ms-enum": { + "name": "ContainerGroupPriority", + "modelAsString": true + } + }, + "revision": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The container group profile current revision number. This only appears in the response." + } + }, + "required": [ + "containers", + "osType" + ] + } + } + }, + "ContainerGroupProfileReferenceDefinition": { + "description": "The container group profile reference.", + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "arm-id", + "description": "The container group profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'." + }, + "revision": { + "type": "integer", + "format": "int32", + "description": "The container group profile reference revision." + } + } + }, + "StandbyPoolProfileDefinition": { + "description": "The standby pool profile reference.", + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "arm-id", + "description": "The standby pool profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'." + }, + "failContainerGroupCreateOnReuseFailure": { + "type": "boolean", + "description": "The flag to determine whether ACI should fail the create request if the container group can not be obtained from standby pool." + } + } + }, + "DeploymentExtensionSpec": { + "description": "Extension sidecars to be added to the deployment.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the extension." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Extension specific properties", + "properties": { + "extensionType": { + "type": "string", + "description": "Type of extension to be added." + }, + "version": { + "type": "string", + "description": "Version of the extension being used." + }, + "settings": { + "type": "object", + "description": "Settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "Protected settings for the extension." + } + }, + "required": [ + "extensionType", + "version" + ] + } + }, + "required": [ + "name" + ] + }, + "ContainerGroupIdentity": { + "description": "Identity for the container group.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the container group identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the container group. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the container group. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the container group.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group.", + "additionalProperties": { + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "$ref": "#/definitions/UserAssignedIdentities" + } + } + } + }, + "UserAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "ImageRegistryCredential": { + "description": "Image registry credential.", + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "The Docker image registry server without a protocol such as \"http\" and \"https\"." + }, + "username": { + "type": "string", + "description": "The username for the private registry." + }, + "password": { + "type": "string", + "description": "The password for the private registry.", + "x-ms-secret": true + }, + "identity": { + "type": "string", + "description": "The identity for the private registry." + }, + "identityUrl": { + "type": "string", + "description": "The identity URL for the private registry." + } + }, + "required": [ + "server" + ] + }, + "ContainerGroupDiagnostics": { + "description": "Container group diagnostic information.", + "type": "object", + "properties": { + "logAnalytics": { + "description": "Container group log analytics information.", + "$ref": "#/definitions/LogAnalytics" + } + } + }, + "LogAnalytics": { + "description": "Container group log analytics information.", + "type": "object", + "properties": { + "workspaceId": { + "description": "The workspace id for log analytics", + "type": "string" + }, + "workspaceKey": { + "description": "The workspace key for log analytics", + "type": "string", + "x-ms-secret": true + }, + "logType": { + "type": "string", + "description": "The log type to be used.", + "enum": [ + "ContainerInsights", + "ContainerInstanceLogs" + ], + "x-ms-enum": { + "name": "LogAnalyticsLogType", + "modelAsString": true + } + }, + "metadata": { + "type": "object", + "description": "Metadata for log analytics.", + "additionalProperties": { + "type": "string" + } + }, + "workspaceResourceId": { + "description": "The workspace resource id for log analytics", + "type": "string", + "x-ms-secret": true + } + }, + "required": [ + "workspaceId", + "workspaceKey" + ] + }, + "ContainerGroupSubnetId": { + "description": "Container group subnet information.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of virtual network and subnet.", + "type": "string" + }, + "name": { + "description": "Friendly name for the subnet.", + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "IpAddress": { + "description": "IP address for the container group.", + "type": "object", + "properties": { + "ports": { + "type": "array", + "description": "The list of ports exposed on the container group.", + "items": { + "$ref": "#/definitions/Port" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "type": { + "type": "string", + "description": "Specifies if the IP is exposed to the public internet or private VNET.", + "enum": [ + "Public", + "Private" + ], + "x-ms-enum": { + "name": "ContainerGroupIpAddressType", + "modelAsString": true + } + }, + "ip": { + "type": "string", + "description": "The IP exposed to the public internet." + }, + "dnsNameLabel": { + "type": "string", + "description": "The Dns name label for the IP." + }, + "autoGeneratedDomainNameLabelScope": { + "type": "string", + "description": "The value representing the security enum. The 'Unsecure' value is the default value if not selected and means the object's domain name label is not secured against subdomain takeover. The 'TenantReuse' value is the default value if selected and means the object's domain name label can be reused within the same tenant. The 'SubscriptionReuse' value means the object's domain name label can be reused within the same subscription. The 'ResourceGroupReuse' value means the object's domain name label can be reused within the same resource group. The 'NoReuse' value means the object's domain name label cannot be reused within the same resource group, subscription, or tenant.", + "enum": [ + "Unsecure", + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "Noreuse" + ], + "default": "Unsecure", + "x-ms-enum": { + "name": "dnsNameLabelReusePolicy", + "modelAsString": true + } + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "The FQDN for the IP." + } + }, + "required": [ + "ports", + "type" + ] + }, + "Port": { + "description": "The port exposed on the container group.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerGroupNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "description": "The port number.", + "format": "int32" + } + }, + "required": [ + "port" + ] + }, + "ContainerPort": { + "description": "The port exposed on the container instance.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port number exposed within the container group." + } + }, + "required": [ + "port" + ] + }, + "EnvironmentVariable": { + "description": "The environment variable to set within the container instance.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the environment variable." + }, + "value": { + "type": "string", + "description": "The value of the environment variable." + }, + "secureValue": { + "type": "string", + "description": "The value of the secure environment variable.", + "x-ms-secret": true + } + }, + "required": [ + "name" + ] + }, + "OperationListResult": { + "description": "The operation list response that contains all operations for Azure Container Instance service.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The list of operations." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of operations." + } + } + }, + "Operation": { + "description": "An operation for Azure Container Instance service.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "description": "The display information of the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the provider of the operation.", + "type": "string" + }, + "resource": { + "type": "string", + "description": "The name of the resource type of the operation." + }, + "operation": { + "description": "The friendly name of the operation.", + "type": "string" + }, + "description": { + "description": "The description of the operation.", + "type": "string" + } + } + }, + "properties": { + "type": "object", + "description": "The additional properties.", + "x-ms-client-flatten": true + }, + "origin": { + "type": "string", + "description": "The intended executor of the operation.", + "enum": [ + "User", + "System" + ], + "x-ms-enum": { + "name": "ContainerInstanceOperationsOrigin", + "modelAsString": true + } + } + }, + "required": [ + "name", + "display" + ] + }, + "UsageListResult": { + "description": "The response containing the usage data", + "type": "object", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "The usage data.", + "items": { + "$ref": "#/definitions/Usage" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "Usage": { + "description": "A single usage result", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the usage result" + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "Unit of the usage result" + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The current usage of the resource" + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "type": "object", + "description": "The name object of the resource", + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource" + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource" + } + } + } + } + }, + "ContainerGroupListResult": { + "description": "The container group list response that contains the container group properties.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroup" + }, + "description": "The list of container groups." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of container groups." + } + } + }, + "ContainerGroupProfileListResult": { + "description": "The container group profile list response that contains the container group profile properties.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroupProfile" + }, + "description": "The list of container group profiles." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of container group profiles." + } + } + }, + "ContainerGroupProfilePatch": { + "type": "object", + "description": "Properties of container group profile that need to be patched", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Logs": { + "description": "The logs.", + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The content of the log." + } + } + }, + "ContainerExecRequest": { + "description": "The container exec request.", + "type": "object", + "properties": { + "command": { + "type": "string", + "description": "The command to be executed." + }, + "terminalSize": { + "type": "object", + "description": "The size of the terminal.", + "properties": { + "rows": { + "type": "integer", + "format": "int32", + "description": "The row size of the terminal" + }, + "cols": { + "type": "integer", + "format": "int32", + "description": "The column size of the terminal" + } + } + } + } + }, + "ContainerExecResponse": { + "description": "The information for the container exec command.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the exec websocket." + }, + "password": { + "type": "string", + "description": "The password to start the exec command.", + "x-ms-secret": true + } + } + }, + "ContainerAttachResponse": { + "description": "The information for the output stream from container attach.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the output stream from the attach." + }, + "password": { + "type": "string", + "description": "The password to the output stream from the attach. Send as an Authorization header value when connecting to the websocketUri.", + "x-ms-secret": true + } + } + }, + "HttpHeader": { + "description": "The HTTP header.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The header name." + }, + "value": { + "type": "string", + "description": "The header value." + } + } + }, + "DnsConfiguration": { + "description": "DNS configuration for the container group.", + "type": "object", + "required": [ + "nameServers" + ], + "properties": { + "nameServers": { + "description": "The DNS servers for the container group.", + "type": "array", + "items": { + "type": "string" + } + }, + "searchDomains": { + "description": "The DNS search domains for hostname lookup in the container group.", + "type": "string" + }, + "options": { + "description": "The DNS options for the container group.", + "type": "string" + } + } + }, + "Resource": { + "type": "object", + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + }, + "zones": { + "description": "The zones for the container group.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CachedImagesListResult": { + "description": "The response containing cached images.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/cachedImages" + }, + "x-ms-identifiers": [ + "image" + ], + "description": "The list of cached images." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of cached images." + } + } + }, + "cachedImages": { + "description": "The cached image and OS type.", + "type": "object", + "required": [ + "osType", + "image" + ], + "properties": { + "osType": { + "type": "string", + "description": "The OS type of the cached image." + }, + "image": { + "type": "string", + "description": "The cached image name." + } + } + }, + "CapabilitiesListResult": { + "description": "The response containing list of capabilities.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Capabilities" + }, + "x-ms-identifiers": [ + "resourceType", + "location" + ], + "description": "The list of capabilities." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of capabilities." + } + } + }, + "Capabilities": { + "description": "The regional capabilities.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The resource type that this capability describes." + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The OS type that this capability describes." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The resource location." + }, + "ipAddressType": { + "type": "string", + "readOnly": true, + "description": "The ip address type that this capability describes." + }, + "gpu": { + "type": "string", + "readOnly": true, + "description": "The GPU sku that this capability describes." + }, + "capabilities": { + "type": "object", + "readOnly": true, + "description": "The supported capabilities.", + "properties": { + "maxMemoryInGB": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed memory request in GB." + }, + "maxCpu": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed CPU request in cores." + }, + "maxGpuCount": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed GPU count." + } + } + } + } + }, + "ContainerGroupSku": { + "description": "The container group SKU.", + "type": "string", + "enum": [ + "Standard", + "Dedicated", + "Confidential" + ], + "x-ms-enum": { + "name": "ContainerGroupSku", + "modelAsString": true + } + }, + "EncryptionProperties": { + "description": "The container group encryption properties.", + "type": "object", + "properties": { + "vaultBaseUrl": { + "description": "The keyvault base url.", + "type": "string" + }, + "keyName": { + "description": "The encryption key name.", + "type": "string" + }, + "keyVersion": { + "description": "The encryption key version.", + "type": "string" + }, + "identity": { + "type": "string", + "description": "The keyvault managed identity." + } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] + }, + "InitContainerDefinition": { + "description": "The init container definition.", + "type": "object", + "properties": { + "name": { + "description": "The name for the init container.", + "type": "string" + }, + "properties": { + "description": "The properties for the init container.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InitContainerPropertiesDefinition" + } + }, + "required": [ + "name", + "properties" + ] + }, + "InitContainerPropertiesDefinition": { + "description": "The init container definition properties.", + "type": "object", + "properties": { + "image": { + "description": "The image of the init container.", + "type": "string" + }, + "command": { + "description": "The command to execute within the init container in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "environmentVariables": { + "description": "The environment variables to set in the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the init container. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the init container has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "The current state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "The previous state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "volumeMounts": { + "description": "The volume mounts available to the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Container Instance service." + }, + "NetworkDependenciesResponse": { + "description": "Response for network dependencies, always empty list.", + "type": "array", + "items": { + "type": "string" + } + }, + "ConfidentialComputeProperties": { + "description": "The properties for confidential container group", + "type": "object", + "properties": { + "ccePolicy": { + "type": "string", + "description": "The base64 encoded confidential compute enforcement policy" + } + } + } + }, + "parameters": { + "ContainerGroupNameParameter": { + "name": "containerGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the container group.", + "x-ms-parameter-location": "method" + }, + "ContainerGroupProfileNameParameter": { + "name": "containerGroupProfileName", + "in": "path", + "required": true, + "pattern": "^(?!.*--)[a-z0-9]([-a-z0-9]*[a-z0-9])?$", + "minLength": 1, + "maxLength": 63, + "type": "string", + "description": "The name of the container group profile.", + "x-ms-parameter-location": "method" + }, + "RevisionNumberParameter": { + "name": "revisionNumber", + "in": "path", + "required": true, + "type": "string", + "description": "The revision number of the container group profile.", + "x-ms-parameter-location": "method" + }, + "VirtualNetworkNameParameter": { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network.", + "x-ms-parameter-location": "method" + }, + "SubnetNameParameter": { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet.", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id.", + "x-ms-parameter-location": "method" + } + } +} From e0b94a8b60b797c1a5e2d3918f795b1a23424a3b Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 12:15:03 -0800 Subject: [PATCH 35/42] fixed errors --- .../2024-11-01-preview/containerInstance.json | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 7b90e74c65fc..dc081e45f686 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1276,7 +1276,11 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { "operationId": "ContainerGroupProfile_ListBySubscription", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesList": { + "$ref": "./examples/ContainerGroupProfilesList.json" + } + }, "summary": "Gets a list of all container group profiles under a subscription.", "description": "Gets a list of all container group profiles under a subscription.", "parameters": [ @@ -1309,7 +1313,11 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { "operationId": "ContainerGroupProfile_ListByResourceGroup", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesListByResourceGroup": { + "$ref": "./examples/ContainerGroupProfilesListByResourceGroup.json" + } + }, "summary": "Gets a list of all container group profiles under a resource group.", "description": "Gets a list of all container group profiles under a resource group.", "parameters": [ @@ -1357,9 +1365,6 @@ }, "ConfidentialContainerGroupProfile": { "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json" - }, - "ContainerGroupsCreateWithPriority": { - "$ref": "./examples/ContainerGroupsProfileCreateOrUpdate_CreatePriority.json" } }, "summary": "Create or Update a ContainerGroupProfile", @@ -1471,7 +1476,14 @@ }, "get": { "operationId": "ContainerGroupProfile_Get", - "x-ms-examples": {}, + "x-ms-examples": { + "ContainerGroupProfilesGet_Succeeded": { + "$ref": "./examples/ContainerGroupProfilesGet.json" + }, + "ContainerGroupProfilesGetWithPriority": { + "$ref": "./examples/ContainerGroupProfilesGetPriority.json" + } + }, "summary": "Display information about a specified ContainerGroupProfile.", "description": "Get the properties of the specified container group profile.", "parameters": [ From 6e00b3b2b8acf82a0f33c2aeb2aa4e756f8af78d Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 12:54:28 -0800 Subject: [PATCH 36/42] fixed errors-2 --- .../2024-11-01-preview/containerInstance.json | 19 +- ...fileCreateOrUpdate_CreateConfidential.json | 2 +- ...leCreateOrUpdate_EncryptionProperties.json | 2 +- ...GroupProfileCreateOrUpdate_Extensions.json | 2 +- ...tainerGroupProfileGetByRevisionNumber.json | 2 +- ...ContainerGroupProfileListAllRevisions.json | 2 +- .../ContainerGroupProfilesCreateOrUpdate.json | 2 +- .../ContainerGroupProfilesDelete.json | 2 +- .../examples/ContainerGroupProfilesGet.json | 2 +- .../ContainerGroupProfilesGetPriority.json | 2 +- .../examples/ContainerGroupProfilesList.json | 2 +- ...ainerGroupProfilesListByResourceGroup.json | 2 +- .../examples/ContainerGroupProfilesPatch.json | 2 +- .../examples/containerInstance.json | 3126 ----------------- 14 files changed, 16 insertions(+), 3153 deletions(-) delete mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index dc081e45f686..ab11e5dedb7b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3843,24 +3843,13 @@ } }, "ContainerGroupProfile": { - "type": "object", - "properties": { - "location": { - "type": "string", - "x-ms-mutability": [ - "read", - "create" - ], - "description": "The geo-location where the resource lives" - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ContainerGroupProfileProperties" - } - }, + "description": "container group profile object", "allOf": [ { "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ContainerGroupProfileProperties" } ] }, diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json index c6152dca956d..70a1e258478b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", "containerGroupProfile": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json index b02df971c286..63140eb9ee10 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", "containerGroupProfile": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json index 8330874990bc..88a247375d8e 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", "containerGroupProfile": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json index 08954b595f28..ac30d94e7e22 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileGetByRevisionNumber.json @@ -4,7 +4,7 @@ "resourceGroupName": "demo", "containerGroupProfileName": "demo1", "revisionNumber": "1", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json index 5006d0bce8e2..0ef0bf71740b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileListAllRevisions.json @@ -3,7 +3,7 @@ "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json index 4d61d0b4ca58..b3de386f4dea 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", "containerGroupProfile": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json index d7ce02cd3832..f708609e2cb1 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1" }, diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json index 747a82c66978..2cb4b90932f5 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGet.json @@ -3,7 +3,7 @@ "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json index 1498eb75f3fc..4b2d390fb575 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesGetPriority.json @@ -3,7 +3,7 @@ "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json index cf759ee364ed..02aaeb122cdd 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesList.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json index 2b9b3284eabe..74ccf692c42c 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesListByResourceGroup.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", "resourceGroupName": "demo", - "api-version": "2024-05-01-preview" + "api-version": "2024-11-01-preview" }, "responses": { "200": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json index 9090b51765a6..c8650e266f5a 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesPatch.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2024-05-01-preview", + "api-version": "2024-11-01-preview", "resourceGroupName": "demoResource", "containerGroupProfileName": "demo1", "properties": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json deleted file mode 100644 index f9ef1d01ad25..000000000000 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/containerInstance.json +++ /dev/null @@ -1,3126 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2024-05-01-preview", - "title": "ContainerInstanceManagementClient" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "Impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroups": { - "get": { - "operationId": "ContainerGroups_List", - "x-ms-examples": { - "ContainerGroupsList": { - "$ref": "./examples/ContainerGroupsList.json" - } - }, - "summary": "Get a list of container groups in the specified subscription.", - "description": "Get a list of container groups in the specified subscription. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups": { - "get": { - "operationId": "ContainerGroups_ListByResourceGroup", - "x-ms-examples": { - "ContainerGroupsListByResourceGroup": { - "$ref": "./examples/ContainerGroupsListByResourceGroup.json" - } - }, - "summary": "Get a list of container groups in the specified subscription and resource group.", - "description": "Get a list of container groups in a specified subscription and resource group. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}": { - "get": { - "operationId": "ContainerGroups_Get", - "x-ms-examples": { - "ContainerGroupsGet_Succeeded": { - "$ref": "./examples/ContainerGroupsGet_Succeeded.json" - }, - "ContainerGroupsGet_Failed": { - "$ref": "./examples/ContainerGroupsGet_Failed.json" - }, - "ContainerGroupsGetWithPriority": { - "$ref": "./examples/ContainerGroupsGetPriority.json" - } - }, - "summary": "Get the properties of the specified container group.", - "description": "Gets the properties of the specified container group in the specified subscription and resource group. The operation returns the properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "operationId": "ContainerGroups_CreateOrUpdate", - "x-ms-examples": { - "ContainerGroupsCreateOrUpdate": { - "$ref": "./examples/ContainerGroupsCreateOrUpdate.json" - }, - "ContainerGroupCreateWithExtensions": { - "$ref": "./examples/ContainerGroupExtensions.json" - }, - "ContainerGroupWithEncryptionProperties": { - "$ref": "./examples/ContainerGroupEncryptionProperties.json" - }, - "ConfidentialContainerGroup": { - "$ref": "./examples/ContainerGroupCreateConfidential.json" - }, - "ContainerGroupCreateOrUpdateWithStandbyPool": { - "$ref": "./examples/ContainerGroupCreateOrUpdateStandbyPool.json" - }, - "ContainerGroupsCreateWithPriority": { - "$ref": "./examples/ContainerGroupsCreatePriority.json" - } - }, - "summary": "Create or update container groups.", - "description": "Create or update container groups with specified configurations.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - }, - { - "name": "containerGroup", - "description": "The properties of the container group to be created or updated.", - "required": true, - "in": "body", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - }, - "201": { - "description": "Created - the container group is created.", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "operationId": "ContainerGroups_Update", - "x-ms-examples": { - "ContainerGroupsUpdate": { - "$ref": "./examples/ContainerGroupsUpdate.json" - } - }, - "summary": "Update container groups.", - "description": "Updates container group tags with specified values.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - }, - { - "name": "Resource", - "description": "The container group resource with just the tags to be updated.", - "required": true, - "in": "body", - "schema": { - "$ref": "#/definitions/Resource" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "operationId": "ContainerGroups_Delete", - "x-ms-examples": { - "ContainerGroupsDelete": { - "$ref": "./examples/ContainerGroupsDelete.json" - } - }, - "summary": "Delete the specified container group.", - "description": "Delete the specified container group in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroup" - } - }, - "202": { - "description": "Delete started." - }, - "204": { - "description": "No Content - the specified container group was not found." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/restart": { - "post": { - "operationId": "ContainerGroups_Restart", - "x-ms-examples": { - "ContainerRestart": { - "$ref": "./examples/ContainerGroupsRestart.json" - } - }, - "summary": "Restarts all containers in a container group.", - "description": "Restarts all containers in a container group in place. If container image has updates, new image will be downloaded.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "204": { - "description": "NoContent" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/stop": { - "post": { - "operationId": "ContainerGroups_Stop", - "x-ms-examples": { - "ContainerStop": { - "$ref": "./examples/ContainerGroupsStop.json" - } - }, - "summary": "Stops all containers in a container group.", - "description": "Stops all containers in a container group. Compute resources will be deallocated and billing will stop.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "204": { - "description": "NoContent" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/start": { - "post": { - "operationId": "ContainerGroups_Start", - "x-ms-examples": { - "ContainerStart": { - "$ref": "./examples/ContainerGroupsStart.json" - } - }, - "summary": "Starts all containers in a container group.", - "description": "Starts all containers in a container group. Compute resources will be allocated and billing will start.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "202": { - "description": "Started - the container group is starting." - }, - "204": { - "description": "Started - the container group is already running or starting." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/providers/Microsoft.ContainerInstance/operations": { - "get": { - "tags": [ - "Operations" - ], - "operationId": "Operations_List", - "x-ms-examples": { - "OperationsList": { - "$ref": "./examples/OperationsList.json" - } - }, - "description": "List the operations for Azure Container Instance service.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/usages": { - "get": { - "operationId": "Location_ListUsage", - "x-ms-examples": { - "ContainerUsage": { - "$ref": "./examples/ContainerGroupUsage.json" - } - }, - "description": "Get the usage for a subscription", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/UsageListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/logs": { - "get": { - "operationId": "Containers_ListLogs", - "x-ms-examples": { - "ContainerListLogs": { - "$ref": "./examples/ContainerListLogs.json" - } - }, - "summary": "Get the logs for a specified container instance.", - "description": "Get the logs for a specified container instance in a specified resource group and container group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - }, - { - "name": "containerName", - "in": "path", - "description": "The name of the container instance.", - "required": true, - "type": "string" - }, - { - "name": "tail", - "in": "query", - "description": "The number of lines to show from the tail of the container instance log. If not provided, all available logs are shown up to 4mb.", - "type": "integer", - "format": "int32" - }, - { - "name": "timestamps", - "in": "query", - "description": "If true, adds a timestamp at the beginning of every line of log output. If not provided, defaults to false.", - "type": "boolean" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Logs" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/exec": { - "post": { - "operationId": "Containers_ExecuteCommand", - "x-ms-examples": { - "ContainerExec": { - "$ref": "./examples/ContainerExec.json" - } - }, - "summary": "Executes a command in a specific container instance.", - "description": "Executes a command for a specific container instance in a specified resource group and container group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - }, - { - "name": "containerName", - "in": "path", - "description": "The name of the container instance.", - "required": true, - "type": "string" - }, - { - "name": "containerExecRequest", - "in": "body", - "description": "The request for the exec command.", - "required": true, - "schema": { - "$ref": "#/definitions/ContainerExecRequest" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerExecResponse" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/attach": { - "post": { - "operationId": "Containers_Attach", - "x-ms-examples": { - "ContainerAttach": { - "$ref": "./examples/ContainerAttach.json" - } - }, - "summary": "Attach to the output of a specific container instance.", - "description": "Attach to the output stream of a specific container instance in a specified resource group and container group.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - }, - { - "name": "containerName", - "in": "path", - "description": "The name of the container instance.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerAttachResponse" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/cachedImages": { - "get": { - "operationId": "Location_ListCachedImages", - "x-ms-examples": { - "CachedImages": { - "$ref": "./examples/CachedImagesList.json" - } - }, - "summary": "Get the list of cached images.", - "description": "Get the list of cached images on specific OS type for a subscription in a region.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/CachedImagesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/capabilities": { - "get": { - "operationId": "Location_ListCapabilities", - "x-ms-examples": { - "GetCapabilities": { - "$ref": "./examples/CapabilitiesList.json" - } - }, - "summary": "Get the list of capabilities of the location.", - "description": "Get the list of CPU/memory/GPU capabilities of a region.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/LocationParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/CapabilitiesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/outboundNetworkDependenciesEndpoints": { - "get": { - "operationId": "ContainerGroups_GetOutboundNetworkDependenciesEndpoints", - "x-ms-examples": {}, - "summary": "Get all network dependencies for container group.", - "description": "Gets all the network dependencies for this container group to allow complete control of network setting and configuration. For container groups, this will always be an empty list.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/NetworkDependenciesResponse" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default": { - "delete": { - "operationId": "SubnetServiceAssociationLink_Delete", - "x-ms-examples": { - "SubnetServiceAssociationLinkDelete": { - "$ref": "./examples/SubnetServiceAssociationLinkDelete.json" - } - }, - "summary": "Delete container group virtual network association links.", - "description": "Delete container group virtual network association links. The operation does not delete other resources provided by the user.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/VirtualNetworkNameParameter" - }, - { - "$ref": "#/parameters/SubnetNameParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Delete started." - }, - "204": { - "description": "No Content - the specified container group was not found." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { - "get": { - "operationId": "ContainerGroupProfiles_List", - "x-ms-examples": { - "ContainerGroupProfilesList": { - "$ref": "./examples/ContainerGroupProfilesList.json" - } - }, - "summary": "Get a list of container group profiles in the specified subscription.", - "description": "Get a list of container group profiles in the specified subscription. This operation returns properties of each container group profile including containers, image registry credentials, restart policy, IP address type, OS type,volumes,current revision number, etc.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfileListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { - "get": { - "operationId": "ContainerGroupProfiles_ListByResourceGroup", - "x-ms-examples": { - "ContainerGroupProfilesListByResourceGroup": { - "$ref": "./examples/ContainerGroupProfilesListByResourceGroup.json" - } - }, - "summary": "Get a list of container group profiles in the specified subscription and resource group.", - "description": "Get a list of container group profiles in a specified subscription and resource group. This operation returns properties of each container group profile including containers, image registry credentials, restart policy, IP address type, OS type volumes, current revision number, etc.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfileListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { - "get": { - "operationId": "ContainerGroupProfiles_Get", - "x-ms-examples": { - "ContainerGroupProfilesGet_Succeeded": { - "$ref": "./examples/ContainerGroupProfilesGet.json" - }, - "ContainerGroupProfilesGetWithPriority": { - "$ref": "./examples/ContainerGroupProfilesGetPriority.json" - } - }, - "summary": "Get the properties of the specified container group profile.", - "description": "Gets the properties of the specified container group profile in the specified subscription and resource group. The operation returns the properties of container group profile including containers, image registry credentials, restart policy, IP address type, OS type, volumes, current revision number, etc.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "operationId": "ContainerGroupProfiles_CreateOrUpdate", - "x-ms-examples": { - "ContainerGroupProfilesCreateOrUpdate": { - "$ref": "./examples/ContainerGroupProfilesCreateOrUpdate.json" - }, - "ContainerGroupProfileCreateWithExtensions": { - "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_Extensions.json" - }, - "ContainerGroupProfileWithEncryptionProperties": { - "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json" - }, - "ConfidentialContainerGroupProfile": { - "$ref": "./examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json" - }, - "ContainerGroupsCreateWithPriority": { - "$ref": "./examples/ContainerGroupsProfileCreateOrUpdate_CreatePriority.json" - } - }, - "summary": "Create or update container group profiles.", - "description": "Create or update container group profiles with specified configurations.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - }, - { - "name": "containerGroupProfile", - "description": "The properties of the container group profile to be created or updated.", - "required": true, - "in": "body", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - }, - "201": { - "description": "Created - the container group profile is created.", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "operationId": "ContainerGroupProfiles_Patch", - "x-ms-examples": { - "ContainerGroupProfilesPatch": { - "$ref": "./examples/ContainerGroupProfilesPatch.json" - } - }, - "summary": "Patch container group profiles.", - "description": "Patches container group profile with specified properties.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - }, - { - "name": "properties", - "description": "The container group profile properties that need to be updated.", - "required": true, - "in": "body", - "schema": { - "$ref": "#/definitions/ContainerGroupProfilePatch" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "operationId": "ContainerGroupProfiles_Delete", - "x-ms-examples": { - "ContainerGroupProfilesDelete": { - "$ref": "./examples/ContainerGroupProfilesDelete.json" - } - }, - "summary": "Delete the specified container group profile.", - "description": "Delete the specified container group profile in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - } - ], - "responses": { - "200": { - "description": "OK - Delete started" - }, - "204": { - "description": "No Content - the specified container group profile was not found." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions": { - "get": { - "operationId": "ContainerGroupProfile_ListAllRevisions", - "x-ms-examples": { - "ContainerGroupProfileListAllRevisions": { - "$ref": "./examples/ContainerGroupProfileListAllRevisions.json" - } - }, - "summary": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group.", - "description": "Get a list of all the revisions of the specified container group profile in the given subscription and resource group. This operation returns properties of each revision of the specified container group profile including containers, image registry credentials, restart policy, IP address type, OS type volumes, revision number, etc.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfileListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions/{revisionNumber}": { - "get": { - "operationId": "ContainerGroupProfile_GetByRevisionNumber", - "x-ms-examples": { - "ContainerGroupProfileGetByRevisionNumber": { - "$ref": "./examples/ContainerGroupProfileGetByRevisionNumber.json" - } - }, - "summary": "Get the properties of the specified revision of the container group profile.", - "description": "Gets the properties of the specified revision of the container group profile in the given subscription and resource group. The operation returns the properties of container group profile including containers, image registry credentials, restart policy, IP address type, OS type, volumes, current revision number, etc.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ContainerGroupProfileNameParameter" - }, - { - "$ref": "#/parameters/RevisionNumberParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ContainerGroupProfile" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "Container": { - "description": "A container instance.", - "type": "object", - "required": [ - "properties", - "name" - ], - "properties": { - "name": { - "description": "The user-provided name of the container instance.", - "type": "string" - }, - "properties": { - "x-ms-client-flatten": true, - "description": "The properties of the container instance.", - "$ref": "#/definitions/ContainerProperties" - } - } - }, - "ContainerProperties": { - "description": "The container instance properties.", - "type": "object", - "properties": { - "image": { - "description": "The name of the image used to create the container instance.", - "type": "string" - }, - "command": { - "description": "The commands to execute within the container instance in exec form.", - "type": "array", - "items": { - "type": "string" - } - }, - "ports": { - "description": "The exposed ports on the container instance.", - "type": "array", - "items": { - "$ref": "#/definitions/ContainerPort" - }, - "x-ms-identifiers": [ - "port" - ] - }, - "environmentVariables": { - "description": "The environment variables to set in the container instance.", - "type": "array", - "items": { - "$ref": "#/definitions/EnvironmentVariable" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "instanceView": { - "description": "The instance view of the container instance. Only valid in response.", - "readOnly": true, - "type": "object", - "properties": { - "restartCount": { - "readOnly": true, - "type": "integer", - "format": "int32", - "description": "The number of times that the container instance has been restarted." - }, - "currentState": { - "readOnly": true, - "description": "Current container instance state.", - "$ref": "#/definitions/ContainerState" - }, - "previousState": { - "readOnly": true, - "description": "Previous container instance state.", - "$ref": "#/definitions/ContainerState" - }, - "events": { - "readOnly": true, - "description": "The events of the container instance.", - "type": "array", - "items": { - "$ref": "#/definitions/Event" - }, - "x-ms-identifiers": [ - "name", - "type" - ] - } - } - }, - "resources": { - "description": "The resource requirements of the container instance.", - "$ref": "#/definitions/ResourceRequirements" - }, - "volumeMounts": { - "description": "The volume mounts available to the container instance.", - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "livenessProbe": { - "description": "The liveness probe.", - "$ref": "#/definitions/ContainerProbe" - }, - "readinessProbe": { - "description": "The readiness probe.", - "$ref": "#/definitions/ContainerProbe" - }, - "securityContext": { - "description": "The container security properties.", - "$ref": "#/definitions/SecurityContextDefinition" - }, - "configMap": { - "description": "The config map.", - "$ref": "#/definitions/ConfigMap" - } - } - }, - "ConfigMap": { - "description": "The container config map.", - "type": "object", - "properties": { - "keyValuePairs": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The list of key value pairs associated with the config map of the container." - }, - "description": "The key value pairs dictionary in the config map." - } - } - }, - "SecurityContextDefinition": { - "description": "The security context for the container.", - "type": "object", - "properties": { - "privileged": { - "type": "boolean", - "description": "The flag to determine if the container permissions is elevated to Privileged." - }, - "allowPrivilegeEscalation": { - "type": "boolean", - "description": "A boolean value indicating whether the init process can elevate its privileges" - }, - "capabilities": { - "description": "The capabilities to add or drop from a container.", - "$ref": "#/definitions/SecurityContextCapabilitiesDefinition" - }, - "runAsGroup": { - "type": "integer", - "format": "int32", - "description": "Sets the User GID for the container." - }, - "runAsUser": { - "type": "integer", - "format": "int32", - "description": "Sets the User UID for the container." - }, - "seccompProfile": { - "type": "string", - "description": "a base64 encoded string containing the contents of the JSON in the seccomp profile" - } - } - }, - "SecurityContextCapabilitiesDefinition": { - "description": "The capabilities to add or drop from a container.", - "type": "object", - "properties": { - "add": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The capabilities to add to the container." - }, - "drop": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The capabilities to drop from the container." - } - } - }, - "ContainerState": { - "description": "The container instance state.", - "type": "object", - "readOnly": true, - "properties": { - "state": { - "type": "string", - "readOnly": true, - "description": "The state of the container instance." - }, - "startTime": { - "type": "string", - "readOnly": true, - "format": "date-time", - "description": "The date-time when the container instance state started." - }, - "exitCode": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The container instance exit codes correspond to those from the `docker run` command." - }, - "finishTime": { - "type": "string", - "readOnly": true, - "format": "date-time", - "description": "The date-time when the container instance state finished." - }, - "detailStatus": { - "type": "string", - "readOnly": true, - "description": "The human-readable status of the container instance state." - } - } - }, - "Event": { - "description": "A container group or container instance event.", - "type": "object", - "readOnly": true, - "properties": { - "count": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The count of the event." - }, - "firstTimestamp": { - "type": "string", - "readOnly": true, - "format": "date-time", - "description": "The date-time of the earliest logged event." - }, - "lastTimestamp": { - "type": "string", - "readOnly": true, - "format": "date-time", - "description": "The date-time of the latest logged event." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The event name." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The event message." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The event type." - } - } - }, - "ResourceRequirements": { - "description": "The resource requirements.", - "type": "object", - "required": [ - "requests" - ], - "properties": { - "requests": { - "description": "The resource requests of this container instance.", - "$ref": "#/definitions/ResourceRequests" - }, - "limits": { - "description": "The resource limits of this container instance.", - "$ref": "#/definitions/ResourceLimits" - } - } - }, - "ResourceRequests": { - "description": "The resource requests.", - "type": "object", - "required": [ - "memoryInGB", - "cpu" - ], - "properties": { - "memoryInGB": { - "description": "The memory request in GB of this container instance.", - "type": "number", - "format": "double" - }, - "cpu": { - "description": "The CPU request of this container instance.", - "type": "number", - "format": "double" - }, - "gpu": { - "description": "The GPU request of this container instance.", - "$ref": "#/definitions/GpuResource" - } - } - }, - "ResourceLimits": { - "description": "The resource limits.", - "type": "object", - "properties": { - "memoryInGB": { - "description": "The memory limit in GB of this container instance.", - "type": "number", - "format": "double" - }, - "cpu": { - "description": "The CPU limit of this container instance.", - "type": "number", - "format": "double" - }, - "gpu": { - "description": "The GPU limit of this container instance.", - "$ref": "#/definitions/GpuResource" - } - } - }, - "GpuResource": { - "description": "The GPU resource.", - "type": "object", - "required": [ - "count", - "sku" - ], - "properties": { - "count": { - "description": "The count of the GPU resource.", - "type": "integer", - "format": "int32" - }, - "sku": { - "type": "string", - "description": "The SKU of the GPU resource.", - "enum": [ - "K80", - "P100", - "V100" - ], - "x-ms-enum": { - "name": "GpuSku", - "modelAsString": true - } - } - } - }, - "AzureFileVolume": { - "description": "The properties of the Azure File volume. Azure File shares are mounted as volumes.", - "type": "object", - "required": [ - "shareName", - "storageAccountName" - ], - "properties": { - "shareName": { - "description": "The name of the Azure File share to be mounted as a volume.", - "type": "string" - }, - "readOnly": { - "description": "The flag indicating whether the Azure File shared mounted as a volume is read-only.", - "type": "boolean" - }, - "storageAccountName": { - "description": "The name of the storage account that contains the Azure File share.", - "type": "string" - }, - "storageAccountKey": { - "description": "The storage account access key used to access the Azure File share.", - "type": "string" - } - } - }, - "EmptyDirVolume": { - "description": "The empty directory volume.", - "type": "object", - "properties": {} - }, - "SecretVolume": { - "description": "The secret volume.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "GitRepoVolume": { - "description": "Represents a volume that is populated with the contents of a git repository", - "required": [ - "repository" - ], - "properties": { - "directory": { - "description": "Target directory name. Must not contain or start with '..'. If '.' is supplied, the volume directory will be the git repository. Otherwise, if specified, the volume will contain the git repository in the subdirectory with the given name.", - "type": "string" - }, - "repository": { - "description": "Repository URL", - "type": "string" - }, - "revision": { - "description": "Commit hash for the specified revision.", - "type": "string" - } - } - }, - "Volume": { - "description": "The properties of the volume.", - "type": "object", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "The name of the volume.", - "type": "string" - }, - "azureFile": { - "description": "The Azure File volume.", - "$ref": "#/definitions/AzureFileVolume" - }, - "emptyDir": { - "description": "The empty directory volume.", - "$ref": "#/definitions/EmptyDirVolume" - }, - "secret": { - "description": "The secret volume.", - "$ref": "#/definitions/SecretVolume" - }, - "gitRepo": { - "description": "The git repo volume.", - "$ref": "#/definitions/GitRepoVolume" - } - } - }, - "VolumeMount": { - "description": "The properties of the volume mount.", - "type": "object", - "required": [ - "name", - "mountPath" - ], - "properties": { - "name": { - "description": "The name of the volume mount.", - "type": "string" - }, - "mountPath": { - "description": "The path within the container where the volume should be mounted. Must not contain colon (:).", - "type": "string" - }, - "readOnly": { - "description": "The flag indicating whether the volume mount is read-only.", - "type": "boolean" - } - } - }, - "ContainerExec": { - "type": "object", - "description": "The container execution command, for liveness or readiness probe", - "properties": { - "command": { - "description": "The commands to execute within the container.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "ContainerHttpGet": { - "type": "object", - "description": "The container Http Get settings, for liveness or readiness probe", - "properties": { - "path": { - "description": "The path to probe.", - "type": "string" - }, - "port": { - "type": "integer", - "description": "The port number to probe.", - "format": "int32" - }, - "scheme": { - "description": "The scheme.", - "type": "string", - "enum": [ - "http", - "https" - ], - "x-ms-enum": { - "name": "Scheme", - "modelAsString": true - } - }, - "httpHeaders": { - "description": "The HTTP headers.", - "type": "array", - "items": { - "$ref": "#/definitions/HttpHeader" - }, - "x-ms-identifiers": [ - "name" - ] - } - }, - "required": [ - "port" - ] - }, - "ContainerProbe": { - "type": "object", - "description": "The container probe, for liveness or readiness", - "properties": { - "exec": { - "description": "The execution command to probe", - "$ref": "#/definitions/ContainerExec" - }, - "httpGet": { - "description": "The Http Get settings to probe", - "$ref": "#/definitions/ContainerHttpGet" - }, - "initialDelaySeconds": { - "description": "The initial delay seconds.", - "type": "integer", - "format": "int32" - }, - "periodSeconds": { - "description": "The period seconds.", - "type": "integer", - "format": "int32" - }, - "failureThreshold": { - "description": "The failure threshold.", - "type": "integer", - "format": "int32" - }, - "successThreshold": { - "description": "The success threshold.", - "type": "integer", - "format": "int32" - }, - "timeoutSeconds": { - "description": "The timeout seconds.", - "type": "integer", - "format": "int32" - } - } - }, - "ContainerGroup": { - "description": "A container group.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/ContainerGroupProperties" - } - ] - }, - "ContainerGroupProfile": { - "description": "A container group profile.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/ContainerGroupProfileProperties" - } - ] - }, - "ContainerGroupProperties": { - "description": "The container group properties", - "type": "object", - "required": [ - "properties" - ], - "properties": { - "identity": { - "$ref": "#/definitions/ContainerGroupIdentity", - "description": "The identity of the container group, if configured." - }, - "properties": { - "x-ms-client-flatten": true, - "type": "object", - "description": "The container group properties", - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The provisioning state of the container group. This only appears in the response." - }, - "containers": { - "type": "array", - "description": "The containers within the container group.", - "items": { - "$ref": "#/definitions/Container" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "imageRegistryCredentials": { - "type": "array", - "description": "The image registry credentials by which the container group is created from.", - "items": { - "$ref": "#/definitions/ImageRegistryCredential" - }, - "x-ms-identifiers": [ - "username" - ] - }, - "restartPolicy": { - "type": "string", - "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "enum": [ - "Always", - "OnFailure", - "Never" - ], - "x-ms-enum": { - "name": "ContainerGroupRestartPolicy", - "modelAsString": true - } - }, - "ipAddress": { - "description": "The IP address type of the container group.", - "$ref": "#/definitions/IpAddress" - }, - "osType": { - "type": "string", - "description": "The operating system type required by the containers in the container group.", - "enum": [ - "Windows", - "Linux" - ], - "x-ms-enum": { - "name": "OperatingSystemTypes", - "modelAsString": true - } - }, - "volumes": { - "type": "array", - "description": "The list of volumes that can be mounted by containers in this container group.", - "items": { - "$ref": "#/definitions/Volume" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "instanceView": { - "description": "The instance view of the container group. Only valid in response.", - "readOnly": true, - "type": "object", - "properties": { - "events": { - "description": "The events of this container group.", - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Event" - }, - "x-ms-identifiers": [ - "name", - "type" - ] - }, - "state": { - "readOnly": true, - "type": "string", - "description": "The state of the container group. Only valid in response." - } - } - }, - "diagnostics": { - "description": "The diagnostic information for a container group.", - "$ref": "#/definitions/ContainerGroupDiagnostics" - }, - "subnetIds": { - "type": "array", - "description": "The subnet resource IDs for a container group.", - "items": { - "$ref": "#/definitions/ContainerGroupSubnetId" - } - }, - "dnsConfig": { - "description": "The DNS config information for a container group.", - "$ref": "#/definitions/DnsConfiguration" - }, - "sku": { - "description": "The SKU for a container group.", - "$ref": "#/definitions/ContainerGroupSku" - }, - "encryptionProperties": { - "description": "The encryption properties for a container group.", - "$ref": "#/definitions/EncryptionProperties" - }, - "initContainers": { - "type": "array", - "description": "The init containers for a container group.", - "items": { - "$ref": "#/definitions/InitContainerDefinition" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "extensions": { - "type": "array", - "description": "extensions used by virtual kubelet", - "items": { - "$ref": "#/definitions/DeploymentExtensionSpec" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "confidentialComputeProperties": { - "description": "The properties for confidential container group", - "$ref": "#/definitions/ConfidentialComputeProperties" - }, - "priority": { - "type": "string", - "description": "The priority of the container group.", - "enum": [ - "Regular", - "Spot" - ], - "x-ms-enum": { - "name": "ContainerGroupPriority", - "modelAsString": true - } - }, - "containerGroupProfile": { - "description": "The reference container group profile properties.", - "$ref": "#/definitions/ContainerGroupProfileReferenceDefinition" - }, - "standbyPoolProfile": { - "description": "The reference standby pool profile properties.", - "$ref": "#/definitions/StandbyPoolProfileDefinition" - }, - "isCreatedFromStandbyPool": { - "readOnly": true, - "type": "boolean", - "description": "The flag indicating whether the container group is created by standby pool." - } - }, - "required": [ - "containers" - ] - } - } - }, - "ContainerGroupProfileProperties": { - "description": "The container group profile properties", - "type": "object", - "required": [ - "properties" - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "type": "object", - "description": "The container group profile properties", - "properties": { - "containers": { - "type": "array", - "description": "The containers within the container group.", - "items": { - "$ref": "#/definitions/Container" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "imageRegistryCredentials": { - "type": "array", - "description": "The image registry credentials by which the container group is created from.", - "items": { - "$ref": "#/definitions/ImageRegistryCredential" - }, - "x-ms-identifiers": [ - "username" - ] - }, - "restartPolicy": { - "type": "string", - "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "enum": [ - "Always", - "OnFailure", - "Never" - ], - "x-ms-enum": { - "name": "ContainerGroupRestartPolicy", - "modelAsString": true - } - }, - "ipAddress": { - "description": "The IP address type of the container group.", - "$ref": "#/definitions/IpAddress" - }, - "osType": { - "type": "string", - "description": "The operating system type required by the containers in the container group.", - "enum": [ - "Windows", - "Linux" - ], - "x-ms-enum": { - "name": "OperatingSystemTypes", - "modelAsString": true - } - }, - "volumes": { - "type": "array", - "description": "The list of volumes that can be mounted by containers in this container group.", - "items": { - "$ref": "#/definitions/Volume" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "diagnostics": { - "description": "The diagnostic information for a container group.", - "$ref": "#/definitions/ContainerGroupDiagnostics" - }, - "sku": { - "description": "The SKU for a container group.", - "$ref": "#/definitions/ContainerGroupSku" - }, - "encryptionProperties": { - "description": "The encryption properties for a container group.", - "$ref": "#/definitions/EncryptionProperties" - }, - "initContainers": { - "type": "array", - "description": "The init containers for a container group.", - "items": { - "$ref": "#/definitions/InitContainerDefinition" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "extensions": { - "type": "array", - "description": "extensions used by virtual kubelet", - "items": { - "$ref": "#/definitions/DeploymentExtensionSpec" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "confidentialComputeProperties": { - "description": "The properties for confidential container group", - "$ref": "#/definitions/ConfidentialComputeProperties" - }, - "priority": { - "type": "string", - "description": "The priority of the container group.", - "enum": [ - "Regular", - "Spot" - ], - "x-ms-enum": { - "name": "ContainerGroupPriority", - "modelAsString": true - } - }, - "revision": { - "readOnly": true, - "type": "integer", - "format": "int32", - "description": "The container group profile current revision number. This only appears in the response." - } - }, - "required": [ - "containers", - "osType" - ] - } - } - }, - "ContainerGroupProfileReferenceDefinition": { - "description": "The container group profile reference.", - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "arm-id", - "description": "The container group profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'." - }, - "revision": { - "type": "integer", - "format": "int32", - "description": "The container group profile reference revision." - } - } - }, - "StandbyPoolProfileDefinition": { - "description": "The standby pool profile reference.", - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "arm-id", - "description": "The standby pool profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'." - }, - "failContainerGroupCreateOnReuseFailure": { - "type": "boolean", - "description": "The flag to determine whether ACI should fail the create request if the container group can not be obtained from standby pool." - } - } - }, - "DeploymentExtensionSpec": { - "description": "Extension sidecars to be added to the deployment.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the extension." - }, - "properties": { - "type": "object", - "x-ms-client-flatten": true, - "description": "Extension specific properties", - "properties": { - "extensionType": { - "type": "string", - "description": "Type of extension to be added." - }, - "version": { - "type": "string", - "description": "Version of the extension being used." - }, - "settings": { - "type": "object", - "description": "Settings for the extension." - }, - "protectedSettings": { - "type": "object", - "description": "Protected settings for the extension." - } - }, - "required": [ - "extensionType", - "version" - ] - } - }, - "required": [ - "name" - ] - }, - "ContainerGroupIdentity": { - "description": "Identity for the container group.", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of the container group identity. This property will only be provided for a system assigned identity." - }, - "tenantId": { - "readOnly": true, - "type": "string", - "description": "The tenant id associated with the container group. This property will only be provided for a system assigned identity." - }, - "type": { - "type": "string", - "description": "The type of identity used for the container group. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the container group.", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ], - "x-ms-enum": { - "name": "ResourceIdentityType", - "modelAsString": false - } - }, - "userAssignedIdentities": { - "type": "object", - "description": "The list of user identities associated with the container group.", - "additionalProperties": { - "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "$ref": "#/definitions/UserAssignedIdentities" - } - } - } - }, - "UserAssignedIdentities": { - "type": "object", - "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } - }, - "ImageRegistryCredential": { - "description": "Image registry credential.", - "type": "object", - "properties": { - "server": { - "type": "string", - "description": "The Docker image registry server without a protocol such as \"http\" and \"https\"." - }, - "username": { - "type": "string", - "description": "The username for the private registry." - }, - "password": { - "type": "string", - "description": "The password for the private registry.", - "x-ms-secret": true - }, - "identity": { - "type": "string", - "description": "The identity for the private registry." - }, - "identityUrl": { - "type": "string", - "description": "The identity URL for the private registry." - } - }, - "required": [ - "server" - ] - }, - "ContainerGroupDiagnostics": { - "description": "Container group diagnostic information.", - "type": "object", - "properties": { - "logAnalytics": { - "description": "Container group log analytics information.", - "$ref": "#/definitions/LogAnalytics" - } - } - }, - "LogAnalytics": { - "description": "Container group log analytics information.", - "type": "object", - "properties": { - "workspaceId": { - "description": "The workspace id for log analytics", - "type": "string" - }, - "workspaceKey": { - "description": "The workspace key for log analytics", - "type": "string", - "x-ms-secret": true - }, - "logType": { - "type": "string", - "description": "The log type to be used.", - "enum": [ - "ContainerInsights", - "ContainerInstanceLogs" - ], - "x-ms-enum": { - "name": "LogAnalyticsLogType", - "modelAsString": true - } - }, - "metadata": { - "type": "object", - "description": "Metadata for log analytics.", - "additionalProperties": { - "type": "string" - } - }, - "workspaceResourceId": { - "description": "The workspace resource id for log analytics", - "type": "string", - "x-ms-secret": true - } - }, - "required": [ - "workspaceId", - "workspaceKey" - ] - }, - "ContainerGroupSubnetId": { - "description": "Container group subnet information.", - "type": "object", - "properties": { - "id": { - "description": "Resource ID of virtual network and subnet.", - "type": "string" - }, - "name": { - "description": "Friendly name for the subnet.", - "type": "string" - } - }, - "required": [ - "id" - ] - }, - "IpAddress": { - "description": "IP address for the container group.", - "type": "object", - "properties": { - "ports": { - "type": "array", - "description": "The list of ports exposed on the container group.", - "items": { - "$ref": "#/definitions/Port" - }, - "x-ms-identifiers": [ - "port" - ] - }, - "type": { - "type": "string", - "description": "Specifies if the IP is exposed to the public internet or private VNET.", - "enum": [ - "Public", - "Private" - ], - "x-ms-enum": { - "name": "ContainerGroupIpAddressType", - "modelAsString": true - } - }, - "ip": { - "type": "string", - "description": "The IP exposed to the public internet." - }, - "dnsNameLabel": { - "type": "string", - "description": "The Dns name label for the IP." - }, - "autoGeneratedDomainNameLabelScope": { - "type": "string", - "description": "The value representing the security enum. The 'Unsecure' value is the default value if not selected and means the object's domain name label is not secured against subdomain takeover. The 'TenantReuse' value is the default value if selected and means the object's domain name label can be reused within the same tenant. The 'SubscriptionReuse' value means the object's domain name label can be reused within the same subscription. The 'ResourceGroupReuse' value means the object's domain name label can be reused within the same resource group. The 'NoReuse' value means the object's domain name label cannot be reused within the same resource group, subscription, or tenant.", - "enum": [ - "Unsecure", - "TenantReuse", - "SubscriptionReuse", - "ResourceGroupReuse", - "Noreuse" - ], - "default": "Unsecure", - "x-ms-enum": { - "name": "dnsNameLabelReusePolicy", - "modelAsString": true - } - }, - "fqdn": { - "readOnly": true, - "type": "string", - "description": "The FQDN for the IP." - } - }, - "required": [ - "ports", - "type" - ] - }, - "Port": { - "description": "The port exposed on the container group.", - "type": "object", - "properties": { - "protocol": { - "type": "string", - "description": "The protocol associated with the port.", - "enum": [ - "TCP", - "UDP" - ], - "x-ms-enum": { - "name": "ContainerGroupNetworkProtocol", - "modelAsString": true - } - }, - "port": { - "type": "integer", - "description": "The port number.", - "format": "int32" - } - }, - "required": [ - "port" - ] - }, - "ContainerPort": { - "description": "The port exposed on the container instance.", - "type": "object", - "properties": { - "protocol": { - "type": "string", - "description": "The protocol associated with the port.", - "enum": [ - "TCP", - "UDP" - ], - "x-ms-enum": { - "name": "ContainerNetworkProtocol", - "modelAsString": true - } - }, - "port": { - "type": "integer", - "format": "int32", - "description": "The port number exposed within the container group." - } - }, - "required": [ - "port" - ] - }, - "EnvironmentVariable": { - "description": "The environment variable to set within the container instance.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the environment variable." - }, - "value": { - "type": "string", - "description": "The value of the environment variable." - }, - "secureValue": { - "type": "string", - "description": "The value of the secure environment variable.", - "x-ms-secret": true - } - }, - "required": [ - "name" - ] - }, - "OperationListResult": { - "description": "The operation list response that contains all operations for Azure Container Instance service.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - }, - "x-ms-identifiers": [ - "name" - ], - "description": "The list of operations." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of operations." - } - } - }, - "Operation": { - "description": "An operation for Azure Container Instance service.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the operation." - }, - "display": { - "description": "The display information of the operation.", - "type": "object", - "properties": { - "provider": { - "description": "The name of the provider of the operation.", - "type": "string" - }, - "resource": { - "type": "string", - "description": "The name of the resource type of the operation." - }, - "operation": { - "description": "The friendly name of the operation.", - "type": "string" - }, - "description": { - "description": "The description of the operation.", - "type": "string" - } - } - }, - "properties": { - "type": "object", - "description": "The additional properties.", - "x-ms-client-flatten": true - }, - "origin": { - "type": "string", - "description": "The intended executor of the operation.", - "enum": [ - "User", - "System" - ], - "x-ms-enum": { - "name": "ContainerInstanceOperationsOrigin", - "modelAsString": true - } - } - }, - "required": [ - "name", - "display" - ] - }, - "UsageListResult": { - "description": "The response containing the usage data", - "type": "object", - "properties": { - "value": { - "readOnly": true, - "type": "array", - "description": "The usage data.", - "items": { - "$ref": "#/definitions/Usage" - }, - "x-ms-identifiers": [ - "name" - ] - } - } - }, - "Usage": { - "description": "A single usage result", - "type": "object", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Id of the usage result" - }, - "unit": { - "readOnly": true, - "type": "string", - "description": "Unit of the usage result" - }, - "currentValue": { - "readOnly": true, - "type": "integer", - "format": "int32", - "description": "The current usage of the resource" - }, - "limit": { - "readOnly": true, - "type": "integer", - "format": "int32", - "description": "The maximum permitted usage of the resource." - }, - "name": { - "readOnly": true, - "type": "object", - "description": "The name object of the resource", - "properties": { - "value": { - "readOnly": true, - "type": "string", - "description": "The name of the resource" - }, - "localizedValue": { - "readOnly": true, - "type": "string", - "description": "The localized name of the resource" - } - } - } - } - }, - "ContainerGroupListResult": { - "description": "The container group list response that contains the container group properties.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ContainerGroup" - }, - "description": "The list of container groups." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of container groups." - } - } - }, - "ContainerGroupProfileListResult": { - "description": "The container group profile list response that contains the container group profile properties.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ContainerGroupProfile" - }, - "description": "The list of container group profiles." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of container group profiles." - } - } - }, - "ContainerGroupProfilePatch": { - "type": "object", - "description": "Properties of container group profile that need to be patched", - "properties": { - "tags": { - "type": "object", - "description": "Resource tags.", - "additionalProperties": { - "type": "string" - } - } - } - }, - "Logs": { - "description": "The logs.", - "type": "object", - "properties": { - "content": { - "type": "string", - "description": "The content of the log." - } - } - }, - "ContainerExecRequest": { - "description": "The container exec request.", - "type": "object", - "properties": { - "command": { - "type": "string", - "description": "The command to be executed." - }, - "terminalSize": { - "type": "object", - "description": "The size of the terminal.", - "properties": { - "rows": { - "type": "integer", - "format": "int32", - "description": "The row size of the terminal" - }, - "cols": { - "type": "integer", - "format": "int32", - "description": "The column size of the terminal" - } - } - } - } - }, - "ContainerExecResponse": { - "description": "The information for the container exec command.", - "type": "object", - "properties": { - "webSocketUri": { - "type": "string", - "description": "The uri for the exec websocket." - }, - "password": { - "type": "string", - "description": "The password to start the exec command.", - "x-ms-secret": true - } - } - }, - "ContainerAttachResponse": { - "description": "The information for the output stream from container attach.", - "type": "object", - "properties": { - "webSocketUri": { - "type": "string", - "description": "The uri for the output stream from the attach." - }, - "password": { - "type": "string", - "description": "The password to the output stream from the attach. Send as an Authorization header value when connecting to the websocketUri.", - "x-ms-secret": true - } - } - }, - "HttpHeader": { - "description": "The HTTP header.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The header name." - }, - "value": { - "type": "string", - "description": "The header value." - } - } - }, - "DnsConfiguration": { - "description": "DNS configuration for the container group.", - "type": "object", - "required": [ - "nameServers" - ], - "properties": { - "nameServers": { - "description": "The DNS servers for the container group.", - "type": "array", - "items": { - "type": "string" - } - }, - "searchDomains": { - "description": "The DNS search domains for hostname lookup in the container group.", - "type": "string" - }, - "options": { - "description": "The DNS options for the container group.", - "type": "string" - } - } - }, - "Resource": { - "type": "object", - "description": "The Resource model definition.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The resource id." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The resource name." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The resource type." - }, - "location": { - "type": "string", - "description": "The resource location." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The resource tags." - }, - "zones": { - "description": "The zones for the container group.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "x-ms-azure-resource": true - }, - "CachedImagesListResult": { - "description": "The response containing cached images.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/cachedImages" - }, - "x-ms-identifiers": [ - "image" - ], - "description": "The list of cached images." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of cached images." - } - } - }, - "cachedImages": { - "description": "The cached image and OS type.", - "type": "object", - "required": [ - "osType", - "image" - ], - "properties": { - "osType": { - "type": "string", - "description": "The OS type of the cached image." - }, - "image": { - "type": "string", - "description": "The cached image name." - } - } - }, - "CapabilitiesListResult": { - "description": "The response containing list of capabilities.", - "type": "object", - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Capabilities" - }, - "x-ms-identifiers": [ - "resourceType", - "location" - ], - "description": "The list of capabilities." - }, - "nextLink": { - "type": "string", - "description": "The URI to fetch the next page of capabilities." - } - } - }, - "Capabilities": { - "description": "The regional capabilities.", - "type": "object", - "properties": { - "resourceType": { - "type": "string", - "readOnly": true, - "description": "The resource type that this capability describes." - }, - "osType": { - "type": "string", - "readOnly": true, - "description": "The OS type that this capability describes." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The resource location." - }, - "ipAddressType": { - "type": "string", - "readOnly": true, - "description": "The ip address type that this capability describes." - }, - "gpu": { - "type": "string", - "readOnly": true, - "description": "The GPU sku that this capability describes." - }, - "capabilities": { - "type": "object", - "readOnly": true, - "description": "The supported capabilities.", - "properties": { - "maxMemoryInGB": { - "type": "number", - "readOnly": true, - "description": "The maximum allowed memory request in GB." - }, - "maxCpu": { - "type": "number", - "readOnly": true, - "description": "The maximum allowed CPU request in cores." - }, - "maxGpuCount": { - "type": "number", - "readOnly": true, - "description": "The maximum allowed GPU count." - } - } - } - } - }, - "ContainerGroupSku": { - "description": "The container group SKU.", - "type": "string", - "enum": [ - "Standard", - "Dedicated", - "Confidential" - ], - "x-ms-enum": { - "name": "ContainerGroupSku", - "modelAsString": true - } - }, - "EncryptionProperties": { - "description": "The container group encryption properties.", - "type": "object", - "properties": { - "vaultBaseUrl": { - "description": "The keyvault base url.", - "type": "string" - }, - "keyName": { - "description": "The encryption key name.", - "type": "string" - }, - "keyVersion": { - "description": "The encryption key version.", - "type": "string" - }, - "identity": { - "type": "string", - "description": "The keyvault managed identity." - } - }, - "required": [ - "vaultBaseUrl", - "keyName", - "keyVersion" - ] - }, - "InitContainerDefinition": { - "description": "The init container definition.", - "type": "object", - "properties": { - "name": { - "description": "The name for the init container.", - "type": "string" - }, - "properties": { - "description": "The properties for the init container.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/InitContainerPropertiesDefinition" - } - }, - "required": [ - "name", - "properties" - ] - }, - "InitContainerPropertiesDefinition": { - "description": "The init container definition properties.", - "type": "object", - "properties": { - "image": { - "description": "The image of the init container.", - "type": "string" - }, - "command": { - "description": "The command to execute within the init container in exec form.", - "type": "array", - "items": { - "type": "string" - } - }, - "environmentVariables": { - "description": "The environment variables to set in the init container.", - "type": "array", - "items": { - "$ref": "#/definitions/EnvironmentVariable" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "instanceView": { - "description": "The instance view of the init container. Only valid in response.", - "readOnly": true, - "type": "object", - "properties": { - "restartCount": { - "readOnly": true, - "type": "integer", - "format": "int32", - "description": "The number of times that the init container has been restarted." - }, - "currentState": { - "readOnly": true, - "description": "The current state of the init container.", - "$ref": "#/definitions/ContainerState" - }, - "previousState": { - "readOnly": true, - "description": "The previous state of the init container.", - "$ref": "#/definitions/ContainerState" - }, - "events": { - "readOnly": true, - "description": "The events of the init container.", - "type": "array", - "items": { - "$ref": "#/definitions/Event" - }, - "x-ms-identifiers": [ - "name", - "type" - ] - } - } - }, - "volumeMounts": { - "description": "The volume mounts available to the init container.", - "type": "array", - "items": { - "$ref": "#/definitions/VolumeMount" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "securityContext": { - "description": "The container security properties.", - "$ref": "#/definitions/SecurityContextDefinition" - } - } - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "#/definitions/CloudErrorBody" - } - }, - "description": "An error response from the Container Instance service." - }, - "CloudErrorBody": { - "x-ms-external": true, - "properties": { - "code": { - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." - }, - "message": { - "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." - }, - "target": { - "type": "string", - "description": "The target of the particular error. For example, the name of the property in error." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/CloudErrorBody" - }, - "x-ms-identifiers": [ - "message", - "target" - ], - "description": "A list of additional details about the error." - } - }, - "description": "An error response from the Container Instance service." - }, - "NetworkDependenciesResponse": { - "description": "Response for network dependencies, always empty list.", - "type": "array", - "items": { - "type": "string" - } - }, - "ConfidentialComputeProperties": { - "description": "The properties for confidential container group", - "type": "object", - "properties": { - "ccePolicy": { - "type": "string", - "description": "The base64 encoded confidential compute enforcement policy" - } - } - } - }, - "parameters": { - "ContainerGroupNameParameter": { - "name": "containerGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the container group.", - "x-ms-parameter-location": "method" - }, - "ContainerGroupProfileNameParameter": { - "name": "containerGroupProfileName", - "in": "path", - "required": true, - "pattern": "^(?!.*--)[a-z0-9]([-a-z0-9]*[a-z0-9])?$", - "minLength": 1, - "maxLength": 63, - "type": "string", - "description": "The name of the container group profile.", - "x-ms-parameter-location": "method" - }, - "RevisionNumberParameter": { - "name": "revisionNumber", - "in": "path", - "required": true, - "type": "string", - "description": "The revision number of the container group profile.", - "x-ms-parameter-location": "method" - }, - "VirtualNetworkNameParameter": { - "name": "virtualNetworkName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the virtual network.", - "x-ms-parameter-location": "method" - }, - "SubnetNameParameter": { - "name": "subnetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the subnet.", - "x-ms-parameter-location": "method" - }, - "OperationIdParameter": { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The operation Id.", - "x-ms-parameter-location": "method" - } - } -} From 2802930cbec1c3cee23fcf464d10a0ac03de05da Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 13:13:26 -0800 Subject: [PATCH 37/42] updated cgprofile examples --- .../2024-11-01-preview/containerInstance.json | 22 +++++++++++++++---- ...fileCreateOrUpdate_CreateConfidential.json | 2 +- ...leCreateOrUpdate_EncryptionProperties.json | 2 +- ...GroupProfileCreateOrUpdate_Extensions.json | 2 +- .../ContainerGroupProfilesCreateOrUpdate.json | 2 +- .../ContainerGroupProfilesDelete.json | 8 ++++++- 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index ab11e5dedb7b..1a3b1e9856d9 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1443,11 +1443,12 @@ "$ref": "#/parameters/ContainerGroupProfileNameParameter" }, { - "name": "ContainerGroupProfile", - "description": "Update a specified container group profile that will also update the revision.", + "name": "properties", + "description": "The container group profile properties that need to be updated.", + "required": true, "in": "body", "schema": { - "$ref": "#/definitions/ContainerGroupProfile" + "$ref": "#/definitions/ContainerGroupProfilePatch" } }, { @@ -1542,7 +1543,7 @@ "202": { "description": "Accepted", "headers": { - "Ax-ms-correlation-request-id": { + "x-ms-correlation-request-id": { "type": "string" }, "Location": { @@ -3842,6 +3843,19 @@ } } }, + "ContainerGroupProfilePatch": { + "type": "object", + "description": "Properties of container group profile that need to be patched", + "properties": { + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + } + } + }, "ContainerGroupProfile": { "description": "container group profile object", "allOf": [ diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json index 70a1e258478b..01616d27fdf5 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_CreateConfidential.json @@ -4,7 +4,7 @@ "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "containerGroupProfile": { + "ContainerGroupProfile": { "location": "westeurope", "zones": [ "1" diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json index 63140eb9ee10..19714b782cc0 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_EncryptionProperties.json @@ -4,7 +4,7 @@ "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "containerGroupProfile": { + "ContainerGroupProfile": { "location": "eastus2", "zones": [ "1" diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json index 88a247375d8e..81145ce0f70b 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfileCreateOrUpdate_Extensions.json @@ -4,7 +4,7 @@ "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "containerGroupProfile": { + "ContainerGroupProfile": { "location": "eastus2", "zones": [ "1" diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json index b3de386f4dea..dd3345c54c89 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesCreateOrUpdate.json @@ -4,7 +4,7 @@ "api-version": "2024-11-01-preview", "resourceGroupName": "demo", "containerGroupProfileName": "demo1", - "containerGroupProfile": { + "ContainerGroupProfile": { "location": "west us", "zones": [ "1" diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json index f708609e2cb1..22c25eee7138 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/examples/ContainerGroupProfilesDelete.json @@ -6,7 +6,13 @@ "containerGroupProfileName": "demo1" }, "responses": { - "200": {}, + "202": { + "description": "Accepted", + "headers": { + "x-ms-correlation-request-id": "00000000-0000-0000-0000-000000000000", + "Location": "eastus2euap" + } + }, "204": {} } } From bd15fb89824399309c2a00b886709ae6e7bb439b Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 13:21:07 -0800 Subject: [PATCH 38/42] fixed breaking changes --- .../2024-11-01-preview/containerInstance.json | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 1a3b1e9856d9..211ac0678ba0 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -2571,7 +2571,11 @@ "type": "string", "x-ms-secret": true } - } + }, + "required": [ + "workspaceId", + "workspaceKey" + ] }, "ContainerGroupSubnetId": { "description": "Container group subnet information.", @@ -2644,7 +2648,11 @@ "type": "string", "description": "The FQDN for the IP." } - } + }, + "required": [ + "ports", + "type" + ] }, "Port": { "description": "The port exposed on the container group.", @@ -3191,7 +3199,12 @@ "type": "string", "description": "The keyvault managed identity." } - } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] }, "InitContainerDefinition": { "description": "The init container definition.", From 0f94603730f6340ed493327fc40b321be613e315 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Tue, 5 Nov 2024 14:04:58 -0800 Subject: [PATCH 39/42] fixed breaking change --- .../preview/2024-11-01-preview/containerInstance.json | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 211ac0678ba0..9ecb363a1314 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -2638,6 +2638,7 @@ "ResourceGroupReuse", "Noreuse" ], + "default": "Unsecure", "x-ms-enum": { "name": "dnsNameLabelReusePolicy", "modelAsString": true From f1d6c16258f673e2bf4fd4e39758a35929382766 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Fri, 8 Nov 2024 14:32:59 -0800 Subject: [PATCH 40/42] fixed linter warnings --- .../2024-11-01-preview/containerInstance.json | 134 ++++++++---------- 1 file changed, 62 insertions(+), 72 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 9ecb363a1314..9461511534bb 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -834,50 +834,11 @@ "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}/skus": { - "get": { - "operationId": "NGroupsSkus_Get", - "x-ms-examples": {}, - "summary": "Get the resource sku, resource type, and sku capacity of the NGroups resource.", - "description": "Get the resource sku, resource type, and sku capacity of the NGroups resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/NGroupsNameParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/NGroupsSkusList" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/ngroups/{ngroupsName}": { "get": { "operationId": "NGroups_Get", "x-ms-examples": {}, - "summary": "Get the properties of the specified NGroups resource.", + "summary": "NGroups GET REST API", "description": "Get the properties of the specified NGroups resource.", "parameters": [ { @@ -911,8 +872,8 @@ "put": { "operationId": "NGroups_CreateOrUpdate", "x-ms-examples": {}, - "summary": "Create or update the NGroups resource.", - "description": "Create or update the NGroups resource.", + "summary": "NGroup PUT REST API", + "description": "Create or update a NGroups resource.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -962,7 +923,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -974,7 +935,7 @@ "patch": { "operationId": "NGroups_Update", "x-ms-examples": {}, - "summary": "Update a specified NGroups resource.", + "summary": "NGroups PATCH REST API", "description": "Update a specified NGroups resource.", "parameters": [ { @@ -1025,7 +986,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1037,7 +998,7 @@ "delete": { "operationId": "NGroups_Delete", "x-ms-examples": {}, - "summary": "Delete the NGroups resource.", + "summary": "NGroups Delete REST API", "description": "Deletes the NGroups resource.", "parameters": [ { @@ -1071,7 +1032,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1116,7 +1077,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1194,7 +1155,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1208,7 +1169,7 @@ "get": { "operationId": "NGroups_ListByResourceGroup", "x-ms-examples": {}, - "summary": "Gets a list of all NGroups resources under a resource group.", + "summary": "GET NGroups under a resource group REST API.", "description": "Gets a list of all NGroups resources under a resource group.", "parameters": [ { @@ -1244,7 +1205,7 @@ "get": { "operationId": "NGroups_List", "x-ms-examples": {}, - "summary": "Gets a list of all NGroups resources under a subscription.", + "summary": "List NGroups in a subscription.", "description": "Gets a list of all NGroups resources under a subscription.", "parameters": [ { @@ -1275,13 +1236,13 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { - "operationId": "ContainerGroupProfile_ListBySubscription", + "operationId": "CGProfiles_ListBySubscription", "x-ms-examples": { "ContainerGroupProfilesList": { "$ref": "./examples/ContainerGroupProfilesList.json" } }, - "summary": "Gets a list of all container group profiles under a subscription.", + "summary": "List container group profiles in a subscription.", "description": "Gets a list of all container group profiles under a subscription.", "parameters": [ { @@ -1312,13 +1273,13 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles": { "get": { - "operationId": "ContainerGroupProfile_ListByResourceGroup", + "operationId": "CGProfiles_ListByResourceGroup", "x-ms-examples": { "ContainerGroupProfilesListByResourceGroup": { "$ref": "./examples/ContainerGroupProfilesListByResourceGroup.json" } }, - "summary": "Gets a list of all container group profiles under a resource group.", + "summary": "List container group profiles in a resource group.", "description": "Gets a list of all container group profiles under a resource group.", "parameters": [ { @@ -1352,7 +1313,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}": { "put": { - "operationId": "ContainerGroupProfile_CreateOrUpdate", + "operationId": "CGProfile_CreateOrUpdate", "x-ms-examples": { "ContainerGroupProfilesCreateOrUpdate": { "$ref": "./examples/ContainerGroupProfilesCreateOrUpdate.json" @@ -1418,19 +1379,19 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } } }, "patch": { - "operationId": "ContainerGroupProfile_Update", + "operationId": "CGProfile_Update", "x-ms-examples": { "ContainerGroupProfilesPatch": { "$ref": "./examples/ContainerGroupProfilesPatch.json" } }, - "summary": "Update a specified ContainerGroupProfile.", + "summary": "Container group profile PATCH REST API.", "description": "Update a specified container group profile.", "parameters": [ { @@ -1470,7 +1431,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } } @@ -1517,13 +1478,13 @@ } }, "delete": { - "operationId": "ContainerGroupProfile_Delete", + "operationId": "CGProfile_Delete", "x-ms-examples": { "ContainerGroupProfilesDelete": { "$ref": "./examples/ContainerGroupProfilesDelete.json" } }, - "summary": "Delete a ContainerGroupProfile.", + "summary": "Container group profile DELETE REST API.", "description": "Deletes a container group profile.", "parameters": [ { @@ -1557,7 +1518,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1566,7 +1527,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions": { "get": { - "operationId": "ContainerGroupProfile_ListAllRevisions", + "operationId": "CGProfile_ListAllRevisions", "x-ms-examples": { "ContainerGroupProfileListAllRevisions": { "$ref": "./examples/ContainerGroupProfileListAllRevisions.json" @@ -1609,7 +1570,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}/revisions/{revisionNumber}": { "get": { - "operationId": "ContainerGroupProfile_GetByRevisionNumber", + "operationId": "CGProfile_GetByRevisionNumber", "x-ms-examples": { "ContainerGroupProfileGetByRevisionNumber": { "$ref": "./examples/ContainerGroupProfileGetByRevisionNumber.json" @@ -3378,7 +3339,10 @@ "items": { "$ref": "#/definitions/NGroupSkus" }, - "description": "The list of NGroups SKUs." + "description": "The list of NGroups SKUs.", + "x-ms-identifiers": [ + "sku" + ] }, "nextLink": { "type": "string", @@ -3424,6 +3388,10 @@ "NGroup": { "type": "object", "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData", + "readOnly": true + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/NGroupProperties" @@ -3661,19 +3629,26 @@ "description": "Contains information about the volumes that can be mounted by Containers in the Container Groups.", "items": { "$ref": "#/definitions/NGroupCGPropertyVolume" - } + }, + "x-ms-identifiers": [ + "name" + ] }, "containers": { "type": "array", "description": "Contains information about Container which can be set while creating or updating the NGroups.", "items": { "$ref": "#/definitions/NGroupCGPropertyContainer" - } + }, + "x-ms-identifiers": [ + "name" + ] } } }, "NGroupCGPropertyContainer": { "type": "object", + "description": "Container properties that can be provided with NGroups object.", "properties": { "name": { "type": "string", @@ -3687,7 +3662,10 @@ "type": "array", "items": { "$ref": "#/definitions/VolumeMount" - } + }, + "x-ms-identifiers": [ + "name" + ] } } } @@ -3719,12 +3697,16 @@ "items": { "$ref": "#/definitions/FileShare", "description": "List of file shares that will be created and mounted on CGs." - } + }, + "x-ms-identifiers": [ + "name" + ] } } }, "FileShare": { "type": "object", + "description": "File shares that can be mounted on container groups.", "properties": { "name": { "type": "string" @@ -3795,7 +3777,10 @@ "description": "List of Application Gateway Backend Address Pools.", "items": { "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" - } + }, + "x-ms-identifiers": [ + "resource" + ] } } }, @@ -3808,12 +3793,16 @@ "description": "List of Load Balancer Backend Address Pools.", "items": { "$ref": "#/definitions/LoadBalancerBackendAddressPool" - } + }, + "x-ms-identifiers": [ + "resource" + ] } } }, "LoadBalancerBackendAddressPool": { "type": "object", + "description": "NGroups load balancer backend address pool", "properties": { "resource": { "type": "string", @@ -3823,6 +3812,7 @@ }, "ApplicationGatewayBackendAddressPool": { "type": "object", + "description": "NGroups application gateway backend address pool", "properties": { "resource": { "type": "string", From aeaddd7a41e0898b166daaaa285f5b9dfe9f8c86 Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Fri, 8 Nov 2024 15:35:13 -0800 Subject: [PATCH 41/42] fixed lint warnings and update CGProfile structure --- .../2024-11-01-preview/containerInstance.json | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 9461511534bb..5936a8baf738 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -1437,7 +1437,7 @@ } }, "get": { - "operationId": "ContainerGroupProfile_Get", + "operationId": "CGProfile_Get", "x-ms-examples": { "ContainerGroupProfilesGet_Succeeded": { "$ref": "./examples/ContainerGroupProfilesGet.json" @@ -3862,23 +3862,27 @@ }, "ContainerGroupProfile": { "description": "container group profile object", + "type": "object", + "properties": { + "systemData": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerGroupProfileProperties" + } + }, "allOf": [ { "$ref": "#/definitions/Resource" - }, - { - "$ref": "#/definitions/ContainerGroupProfileProperties" } ] }, "ContainerGroupProfileProperties": { - "description": "The container group profile properties", "type": "object", + "description": "The container group profile properties", "properties": { - "properties":{ - "x-ms-client-flatten": true, - "type": "object", - "description": "The container group profile properties", "properties":{ "sku": { "description": "The SKU for a container group.", @@ -3996,8 +4000,7 @@ } } } - } - }, + }, "parameters": { "SubscriptionIdParameter": { "name": "subscriptionId", From d8b6af23b049fa1759cd6f6995d5c3187002e4ee Mon Sep 17 00:00:00 2001 From: Shivam Gupta Date: Fri, 8 Nov 2024 15:55:26 -0800 Subject: [PATCH 42/42] fixed CGProperties structure --- .../2024-11-01-preview/containerInstance.json | 230 +++++++++--------- 1 file changed, 114 insertions(+), 116 deletions(-) diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json index 5936a8baf738..107fbdc817b1 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-11-01-preview/containerInstance.json @@ -3883,124 +3883,122 @@ "type": "object", "description": "The container group profile properties", "properties": { - "properties":{ - "sku": { - "description": "The SKU for a container group.", - "$ref": "#/definitions/ContainerGroupSku" - }, - "encryptionProperties": { - "description": "The encryption properties for a container group.", - "$ref": "#/definitions/EncryptionProperties" - }, - "containers": { - "type": "array", - "description": "The containers within the container group.", - "items": { - "$ref": "#/definitions/Container" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "initContainers": { - "type": "array", - "description": "The init containers for a container group.", - "items": { - "$ref": "#/definitions/InitContainerDefinition" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "extensions": { - "type": "array", - "description": "extensions used by virtual kubelet", - "items": { - "$ref": "#/definitions/DeploymentExtensionSpec" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "imageRegistryCredentials": { - "type": "array", - "description": "The image registry credentials by which the container group is created from.", - "items": { - "$ref": "#/definitions/ImageRegistryCredential" - }, - "x-ms-identifiers": [ - "username" - ] - }, - "restartPolicy": { - "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", - "$ref": "#/definitions/ContainerGroupRestartPolicy" - }, - "shutdownGracePeriod": { - "description": "Shutdown grace period for containers in a container group.", - "type": "string", - "format": "date-time" - }, - "ipAddress": { - "description": "The IP address type of the container group.", - "$ref": "#/definitions/IpAddress" - }, - "timeToLive": { - "description": "Post completion time to live for containers of a CG", - "type": "string", - "format": "date-time" - }, - "osType": { - "description": "The operating system type required by the containers in the container group.", - "$ref": "#/definitions/OSType" - }, - "volumes": { - "type": "array", - "description": "The list of volumes that can be mounted by containers in this container group.", - "items": { - "$ref": "#/definitions/Volume" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "diagnostics": { - "description": "The diagnostic information for a container group.", - "$ref": "#/definitions/ContainerGroupDiagnostics" - }, - "priority": { - "description": "The priority of the container group.", - "$ref": "#/definitions/Priority" - }, - "confidentialComputeProperties": { - "description": "The properties for confidential container group", - "$ref": "#/definitions/ConfidentialComputeProperties" - }, - "securityContext": { - "description": "The container security properties.", - "$ref": "#/definitions/SecurityContextDefinition" - }, - "revision": { - "description": "Container group profile current revision number", - "type": "integer", - "format": "int64" - }, - "registeredRevisions": { - "type": "array", - "items": { - "type": "integer", - "format": "int64" - }, - "description": "Registered revisions are calculated at request time based off the records in the table logs." - }, - "useKrypton": { - "type": "boolean", - "description": "Gets or sets Krypton use property." - } - } + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "$ref": "#/definitions/ContainerGroupRestartPolicy" + }, + "shutdownGracePeriod": { + "description": "Shutdown grace period for containers in a container group.", + "type": "string", + "format": "date-time" + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "timeToLive": { + "description": "Post completion time to live for containers of a CG", + "type": "string", + "format": "date-time" + }, + "osType": { + "description": "The operating system type required by the containers in the container group.", + "$ref": "#/definitions/OSType" + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "priority": { + "description": "The priority of the container group.", + "$ref": "#/definitions/Priority" + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "revision": { + "description": "Container group profile current revision number", + "type": "integer", + "format": "int64" + }, + "registeredRevisions": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "description": "Registered revisions are calculated at request time based off the records in the table logs." + }, + "useKrypton": { + "type": "boolean", + "description": "Gets or sets Krypton use property." } } - }, + } + }, "parameters": { "SubscriptionIdParameter": { "name": "subscriptionId",