Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swagger for Lease Container API in Feb18, March18Preview, Jul18 & Nov18. #5480

Merged
merged 9 commits into from
Mar 30, 2019
Original file line number Diff line number Diff line change
Expand Up @@ -597,6 +597,56 @@
}
}
}
},
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": {
"post": {
"tags": [
"BlobContainers"
],
"operationId": "BlobContainers_Lease",
"x-ms-examples": {
"Acquire a lease on a container": {
"$ref": "./examples/BlobContainersLease_Acquire.json"
},
"Break a lease on a container": {
"$ref": "./examples/BlobContainersLease_Break.json"
}
},
"description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.",
"parameters": [
{
"$ref": "./storage.json#/parameters/ResourceGroupName"
},
{
"$ref": "./storage.json#/parameters/StorageAccountName"
},
{
"$ref": "#/parameters/ContainerName"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
},
{
"name": "parameters",
"in": "body",
"schema": {
"$ref": "#/definitions/LeaseContainerRequest"
},
"description": "Lease Container request body."
}
],
"responses": {
"200": {
"description": "OK -- Lease Container operation completed successfully.",
"schema": {
"$ref": "#/definitions/LeaseContainerResponse"
}
}
}
}
}
},
"definitions": {
Expand Down Expand Up @@ -917,6 +967,54 @@
}
},
"description": "The list of blob containers."
},
"LeaseContainerRequest": {
"properties": {
"action": {
"type": "string",
"enum": [
"Acquire",
"Renew",
"Change",
"Release",
"Break"
],
"description": "Specifies the lease action. Can be one of the available actions."
},
"leaseId": {
"type": "string",
"description": "Identifies the lease. Can be specified in any valid GUID string format."
},
"breakPeriod": {
"type": "integer",
"description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60."
},
"leaseDuration": {
"type": "integer",
"description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires."
},
"proposedLeaseId": {
"type": "string",
"description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format."
}
},
"required": [
"action"
],
"description": "Lease Container request schema."
},
"LeaseContainerResponse": {
"properties": {
"leaseId": {
"type": "string",
"description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease."
},
"leaseTimeSeconds": {
"type": "string",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why this is a string, instead of number? also can we include this field in example?

"description": "Approximate time remaining in the lease period, in seconds."
}
},
"description": "Lease Container response schema."
}
},
"parameters": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "res3376",
"accountName": "sto328",
"containerName": "container6185",
"api-version": "2018-03-01-preview",
"monitor": "true",
"parameters": {
"properties": {
"Action": 0,
"LeaseId": null,
"BreakPeriod": null,
"LeaseDuration": -1,
"ProposedLeaseId": null
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185",
"name": "container6185",
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"properties": {
"LeaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d"
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "res3376",
"accountName": "sto328",
"containerName": "container6185",
"api-version": "2018-03-01-preview",
"monitor": "true",
"parameters": {
"properties": {
"Action": 4,
"LeaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d",
"BreakPeriod": null,
"LeaseDuration": null,
"ProposedLeaseId": null
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185",
"name": "container6185",
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"properties": {
"LeaseTimeSeconds": "0"
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -597,6 +597,56 @@
}
}
}
},
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": {
"post": {
"tags": [
"BlobContainers"
],
"operationId": "BlobContainers_Lease",
"x-ms-examples": {
"Acquire a lease on a container": {
"$ref": "./examples/BlobContainersLease_Acquire.json"
},
"Break a lease on a container": {
"$ref": "./examples/BlobContainersLease_Break.json"
}
},
"description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.",
"parameters": [
{
"$ref": "./storage.json#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/AccountName"
},
{
"$ref": "#/parameters/ContainerName"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
},
{
"name": "parameters",
"in": "body",
"schema": {
"$ref": "#/definitions/LeaseContainerRequest"
},
"description": "Lease Container request body."
}
],
"responses": {
"200": {
"description": "OK -- Lease Container operation completed successfully.",
"schema": {
"$ref": "#/definitions/LeaseContainerResponse"
}
}
}
}
}
},
"definitions": {
Expand Down Expand Up @@ -917,6 +967,54 @@
}
},
"description": "The list of blob containers."
},
"LeaseContainerRequest": {
"properties": {
"action": {
"type": "string",
"enum": [
"Acquire",
"Renew",
"Change",
"Release",
"Break"
],
"description": "Specifies the lease action. Can be one of the available actions."
},
"leaseId": {
"type": "string",
"description": "Identifies the lease. Can be specified in any valid GUID string format."
},
"breakPeriod": {
"type": "integer",
"description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60."
},
"leaseDuration": {
"type": "integer",
"description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires."
},
"proposedLeaseId": {
"type": "string",
"description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format."
}
},
"required": [
"action"
],
"description": "Lease Container request schema."
},
"LeaseContainerResponse": {
"properties": {
"leaseId": {
"type": "string",
"description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease."
},
"leaseTimeSeconds": {
"type": "string",
"description": "Approximate time remaining in the lease period, in seconds."
}
},
"description": "Lease Container response schema."
}
},
"parameters": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "res3376",
"accountName": "sto328",
"containerName": "container6185",
"api-version": "2018-02-01",
"monitor": "true",
"parameters": {
"properties": {
"Action": 0,
"LeaseId": null,
"BreakPeriod": null,
"LeaseDuration": -1,
"ProposedLeaseId": null
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185",
"name": "container6185",
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"properties": {
"LeaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d"
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "res3376",
"accountName": "sto328",
"containerName": "container6185",
"api-version": "2018-03-01-preview",
"monitor": "true",
"parameters": {
"properties": {
"Action": 4,
"LeaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d",
"BreakPeriod": null,
"LeaseDuration": null,
"ProposedLeaseId": null
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185",
"name": "container6185",
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"properties": {
"LeaseTimeSeconds": "0"
}
}
}
}
}
Loading