diff --git a/custom-words.txt b/custom-words.txt index cfe6420bea89..56144162c328 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -2259,3 +2259,4 @@ XLSM DOCM multislot Tebibytes +NodePool diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsCreate.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsCreate.json new file mode 100644 index 000000000000..562c800c041f --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsCreate.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "snapshot1", + "parameters": { + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + }, + "201": { + "body": { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsDelete.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsDelete.json new file mode 100644 index 000000000000..5db108e83393 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "snapshot1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsGet.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsGet.json new file mode 100644 index 000000000000..b8f0bacfc973 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "snapshot1" + }, + "responses": { + "200": { + "body": { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsList.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsList.json new file mode 100644 index 000000000000..dafca72b4df6 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsListByResourceGroup.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsListByResourceGroup.json new file mode 100644 index 000000000000..89b58abe2329 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsListByResourceGroup.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + ] + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsUpdateTags.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsUpdateTags.json new file mode 100644 index 000000000000..d0f4396951d8 --- /dev/null +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/examples/SnapshotsUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2021-08-01", + "subscriptionId": "subid1", + "resourceGroupName": "rg1", + "resourceName": "snapshot1", + "parameters": { + "tags": { + "key2": "new-val2", + "key3": "val3" + } + } + }, + "responses": { + "200": { + "body": { + "name": "snapshot1", + "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/snapshots/snapshot1", + "type": "Microsoft.ContainerService/Snapshots", + "location": "westus", + "tags": { + "key1": "val1", + "key2": "val2" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2021-08-09T20:13:23.298420761Z" + }, + "properties": { + "creationData": { + "sourceResourceId": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/cluster1/agentPools/pool0" + }, + "snapshotType": "NodePool" + } + } + } + } +} diff --git a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/managedClusters.json b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/managedClusters.json index cb795a7bd880..2c915f97670e 100644 --- a/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/managedClusters.json +++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/stable/2021-08-01/managedClusters.json @@ -1920,6 +1920,273 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "summary": "Gets a list of snapshots in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Snapshots": { + "$ref": "./examples/SnapshotsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "summary": "Lists snapshots in the specified subscription and resource group.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Snapshots by Resource Group": { + "$ref": "./examples/SnapshotsListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/snapshots/{resourceName}": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "summary": "Gets a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Snapshot": { + "$ref": "./examples/SnapshotsGet.json" + } + } + }, + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "summary": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "The snapshot to create or update." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create/Update Snapshot": { + "$ref": "./examples/SnapshotsCreate.json" + } + } + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_UpdateTags", + "summary": "Updates tags on a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update snapshot Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Snapshot Tags": { + "$ref": "./examples/SnapshotsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "summary": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Snapshot": { + "$ref": "./examples/SnapshotsDelete.json" + } + } + } } }, "definitions": { @@ -5086,6 +5353,76 @@ "description": "This is the ARM ID of the source object to be used to create the target object." } } + }, + "SnapshotListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "The list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of snapshot results.", + "readOnly": true + } + }, + "description": "The response from the List Snapshots operation." + }, + "Snapshot": { + "type": "object", + "properties": { + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true, + "description": "The system metadata relating to this snapshot." + }, + "properties": { + "description": "Properties of a snapshot.", + "$ref": "#/definitions/SnapshotProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A node pool snapshot resource." + }, + "SnapshotProperties": { + "type": "object", + "properties": { + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "CreationData to be used to specify the source agent pool resource ID to create this snapshot." + }, + "snapshotType": { + "$ref": "#/definitions/SnapshotType" + } + }, + "description": "Properties used to configure a node pool snapshot." + }, + "SnapshotType": { + "type": "string", + "default": "NodePool", + "enum": [ + "NodePool" + ], + "x-ms-enum": { + "name": "SnapshotType", + "modelAsString": true, + "values": [ + { + "value": "NodePool", + "description": "The snapshot is a snapshot of a node pool." + } + ] + }, + "description": "The type of a snapshot. The default is NodePool." } }, "parameters": {