From 61af68a428b0b7588c11045f8e6b59773f720d2c Mon Sep 17 00:00:00 2001 From: Diane Fleming Date: Wed, 14 May 2014 12:09:08 -0500 Subject: [PATCH] Clean up unneeded files and create parent pom.xml file Change-Id: I3dbaeb584ca461ab949d42d9a05449f559ff3891 author: diane fleming --- pom.xml | 48 + v1/pom.xml | 70 +- v1/src/openstack-blockstorage-devguide.xml | 1150 +++++------------ v1/src/samples/snapshot_create_request.json | 8 - v1/src/samples/snapshot_create_response.json | 11 - .../snapshot_list_detail_response.json | 22 - .../snapshot_list_simple_response.json | 22 - v1/src/samples/snapshot_show_response.json | 11 - v1/src/samples/snapshot_update_request.json | 6 - v1/src/samples/snapshot_update_response.json | 11 - v1/src/samples/volume_create_request.json | 10 - v1/src/samples/volume_create_response.json | 19 - .../samples/volume_list_detail_response.json | 38 - .../samples/volume_list_simple_response.json | 38 - v1/src/samples/volume_show_response.json | 21 - v1/src/samples/volume_type_list_response.json | 14 - v1/src/samples/volume_type_show_response.json | 9 - v1/src/samples/volume_update_request.json | 9 - v1/src/samples/volume_update_response.json | 19 - v2/pom.xml | 60 +- v2/src/openstack-blockstorage-devguide.xml | 12 - v2/src/samples/snapshot_create_request.xml | 6 - v2/src/samples/snapshot_create_response.xml | 11 - .../samples/snapshot_list_detail_response.xml | 28 - .../samples/snapshot_list_simple_response.xml | 23 - v2/src/samples/snapshot_update_request.xml | 4 - v2/src/samples/snapshot_update_response.xml | 14 - v2/src/samples/volume_create_request.xml | 11 - v2/src/samples/volume_create_response.xml | 9 - 29 files changed, 439 insertions(+), 1275 deletions(-) create mode 100644 pom.xml delete mode 100644 v1/src/samples/snapshot_create_request.json delete mode 100644 v1/src/samples/snapshot_create_response.json delete mode 100644 v1/src/samples/snapshot_list_detail_response.json delete mode 100644 v1/src/samples/snapshot_list_simple_response.json delete mode 100644 v1/src/samples/snapshot_show_response.json delete mode 100644 v1/src/samples/snapshot_update_request.json delete mode 100644 v1/src/samples/snapshot_update_response.json delete mode 100644 v1/src/samples/volume_create_request.json delete mode 100644 v1/src/samples/volume_create_response.json delete mode 100644 v1/src/samples/volume_list_detail_response.json delete mode 100644 v1/src/samples/volume_list_simple_response.json delete mode 100644 v1/src/samples/volume_show_response.json delete mode 100644 v1/src/samples/volume_type_list_response.json delete mode 100644 v1/src/samples/volume_type_show_response.json delete mode 100644 v1/src/samples/volume_update_request.json delete mode 100644 v1/src/samples/volume_update_response.json delete mode 100644 v2/src/samples/snapshot_create_request.xml delete mode 100644 v2/src/samples/snapshot_create_response.xml delete mode 100644 v2/src/samples/snapshot_list_detail_response.xml delete mode 100644 v2/src/samples/snapshot_list_simple_response.xml delete mode 100644 v2/src/samples/snapshot_update_request.xml delete mode 100644 v2/src/samples/snapshot_update_response.xml delete mode 100644 v2/src/samples/volume_create_request.xml delete mode 100644 v2/src/samples/volume_create_response.xml diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..56747b2 --- /dev/null +++ b/pom.xml @@ -0,0 +1,48 @@ + + 4.0.0 + + org.openstack.docs + parent-pom + 1.0.0-SNAPSHOT + pom + + + v1 + v2 + + + + Rackspace Research Repositories + + true + + + + rackspace-research + Rackspace Research Repository + http://maven.research.rackspacecloud.com/content/groups/public/ + + + + + rackspace-research + Rackspace Research Repository + http://maven.research.rackspacecloud.com/content/groups/public/ + + + + + + + + com.rackspace.cloud.api + clouddocs-maven-plugin + 1.15.0 + + + + + + diff --git a/v1/pom.xml b/v1/pom.xml index 2623794..e0bc4d2 100644 --- a/v1/pom.xml +++ b/v1/pom.xml @@ -1,31 +1,32 @@ - - + + org.openstack.docs + parent-pom + 1.0.0-SNAPSHOT + ../pom.xml + 4.0.0 - - org.openstack.docs - openstack-block-storage-api-guide - 1.0.0-SNAPSHOT + openstack-v1 jar - OpenStack Block Storage Service Developer Guide v1.0 + OpenStack Block Storage API v1 Reference + + + local + 1 + - - - UTF-8 - - src - com.rackspace.cloud.api clouddocs-maven-plugin - 1.15.0 + + generate-webhelp @@ -43,24 +44,23 @@ appendix toc,title article/appendix nop article toc,title - book title,figure,table,example,equation - chapter toc,title + book toc,title,figure,table,example,equation + chapter toc + section toc part toc,title - preface toc,title + preface toc qandadiv toc qandaset toc reference toc,title set toc,title - - - + 1 + 0 + 1 1.0 ${basedir}/target/docbkx/webhelp/api/openstack-block-storage 0 openstack-blockstorage-devguide-1.0 - @@ -81,7 +81,6 @@ - @@ -94,29 +93,6 @@ openstack - - - - Rackspace Research Repositories - - true - - - - rackspace-research - Rackspace Research Repository - http://maven.research.rackspacecloud.com/content/groups/public/ - - - - - rackspace-research - Rackspace Research Repository - http://maven.research.rackspacecloud.com/content/groups/public/ - - - - - + \ No newline at end of file diff --git a/v1/src/openstack-blockstorage-devguide.xml b/v1/src/openstack-blockstorage-devguide.xml index c2f5577..b5e7cbe 100644 --- a/v1/src/openstack-blockstorage-devguide.xml +++ b/v1/src/openstack-blockstorage-devguide.xml @@ -1,31 +1,23 @@ - GET'> PUT'> POST'> DELETE'> - - + + + - - - - - '> - - '> ]> - - + + OpenStack Block Storage API v1 Reference + + Block Storage API Reference - &PRODNAME; Developer Guide - &PRODNAME; Developer Guide + + + + + + + OpenStack Foundation + + - 2012 + 2010-2014 + OpenStack Foundation - API v1.0 - &PRODNAME; - 2013-02-24 + API v1 and extensions + OpenStack Block Storage + - - Copyright details are filled in by the template. + + Copyright details are filled in by the + template. - This document is intended for software developers interested in developing applications - using the &PRODNAME; Application Programming Interface (API). + This document is intended for software developers + interested in developing applications using the &PRODNAME; + Application Programming Interface + (API). - 2013-02-18 @@ -93,15 +102,18 @@ format="SVG" scale="60"/> Preface - The Cinder project provides volume management with the OpenStack compute service. - This document describes the features available with the &APIv1;. + OpenStack Block Storage provides volume management with + OpenStack Compute. + This document describes the features available with the + &API;. We welcome feedback, comments and bug reports at bugs.launchpad.net/Cinder. + xlink:href="http://bugs.launchpad.net/cinder" + >bugs.launchpad.net/Cinder.
- Intended Audience - This Guide is intended to assist software developers who want to develop applications - using the &APIv1;. It assumes the reader has a general understanding of storage and is - familiar with: + Intended audience + This guide is for software developers who develop + applications by using the &API;. It assumes the reader has a + general understanding of storage and is familiar with: ReSTful web services @@ -114,32 +126,37 @@ format="SVG" scale="60"/>
- -
- Additional Resources - You can download the most current versions of the API-related documents from docs.openstack.org/api/. - This API uses standard HTTP 1.1 response codes as documented at: Resources + You can download the most current versions of the + API-related documents from docs.openstack.org/api/. + This API uses standard HTTP 1.1 response codes as + documented at: www.w3.org/Protocols/rfc2616/rfc2616-sec10.html.
+ xmlns:m="http://www.w3.org/1998/Math/MathML" + xmlns:html="http://www.w3.org/1999/xhtml"> Overview - &PRODNAME; is a block-level storage solution that allows customers to mount drives or - volumes to their OpenStack Compute servers. The two primary use cases are (1) to - allow customers to scale their storage independently from their compute resources, and (2) to - allow customers to utilize high performance storage to serve database or I/O-intensive + &PRODNAME; is a block-level storage solution that allows + customers to mount drives or volumes to their OpenStack Compute + servers. The two primary use cases are (1) to allow + customers to scale their storage independently from their + compute resources, and (2) to allow customers to utilize high + performance storage to serve database or I/O-intensive applications. - Interactions with Block Storage occur programmatically via the Block Storage API as - described in this Developer Guide. + Interactions with Block Storage occur programmatically via + the Block Storage API as described in this Developer + Guide. Highlights of &PRODNAME; include: - Mount a drive to a Compute server to scale storage without paying for more compute - capability. + Mount a drive to a Compute server to scale storage + without paying for more compute capability. @@ -147,15 +164,16 @@ format="SVG" scale="60"/> Notes - &PRODNAME; is an add-on feature to OpenStack Nova Compute in Folsom versions and - earlier. + &PRODNAME; is an add-on feature to OpenStack Nova + Compute in Folsom versions and earlier. - Block Storage is multi-tenant rather than dedicated. + Block Storage is multi-tenant rather than + dedicated. - Block Storage allows you to create snapshots that you can save, list, and - restore. + Block Storage allows you to create snapshots that you + can save, list, and restore. @@ -163,114 +181,123 @@ format="SVG" scale="60"/>
Glossary - To use the Block Storage API effectively, you should understand several key concepts: + To use the &PRODNAME; API effectively, you should + understand several key concepts:
Volume - A volume is a detachable block storage device. You can think of it as a USB hard - drive. It can only be attached to one instance at a time. + A volume is a detachable block storage device. You can + think of it as a USB hard drive. It can only be attached to + one instance at a time.
Snapshot - A snapshot is a point in time copy of the data contained in a volume. + A snapshot is a point in time copy of the data contained + in a volume.
- Volume Type - The volume type is the type of a block storage volume. You may define whatever types - work best for you, such as SATA, SCSCI, SSD, etc. These can be customized or defined by + Volume type + The volume type is the type of a block storage volume. + You may define whatever types work best for you, such as + SATA, SCSCI, SSD, etc. These can be customized or defined by the OpenStack admin. - You may also define extra_specs associated with your volume types. For instance, you - could have a VolumeType=SATA, with extra_specs (RPM=10000, RAID-Level=5) . Extra_specs are - defined and customized by the admin. + You may also define extra_specs associated with your + volume types. For instance, you could have a + VolumeType=SATA, with extra_specs (RPM=10000, RAID-Level=5) + . Extra_specs are defined and customized by the + admin.
Instance - An instance is a virtual machine that runs inside the cloud. + An instance is a virtual machine that runs inside the + cloud.
- -
- High-Level Task Flow + High-level task flow The high-level task flow for Cinder is as follows: The tenant creates a volume. - For example, the tenant creates a 30G volume called vol1. + For example, the tenant creates a 30G volume called + vol1. $cinder create --display-name vol1 30 - This gives the tenant a volume id 521752a6-acf6-4b2d-bc7a-119f9148cd8c. The tenant + This gives the tenant a volume id + 521752a6-acf6-4b2d-bc7a-119f9148cd8c. The tenant attaches that volume to a virtual machine (VM) 616fb98f-46ca-475e-917e-2563e5a8cd19: - For example - A:$ nova volume-attach 616fb98f-46ca-475e-917e-2563e5a8cd19 521752a6-acf6-4b2d-bc7a-119f9148cd8c /dev/vdb - + For example A: + $ nova volume-attach 616fb98f-46ca-475e-917e-2563e5a8cd19 521752a6-acf6-4b2d-bc7a-119f9148cd8c /dev/vdb
- - General API Information - + + General API information
Authentication - You can use cURL to try the - authentication process in two steps: get a token; send the token to a service. - - Get an authentication token by providing your username and either your API key or - your password. Here are examples of both approaches: - You can request a token by providing your username and your - password. - - curl -X POST https://auth.api.openstackcloud.com/v2.0/tokens -d '{"auth":{"passwordCredentials":{"username": "joecool", "password":"coolword"}, "tenantId":"5"}}' -H 'Content-type: application/json' - - Successful authentication returns a token which you can use as evidence that your - identity has already been authenticated. To use the token, pass it to other services - as an X-Auth-Token header. - Authentication also returns a service catalog, listing the endpoints you can use - for Cloud services. - - - Use the authentication token to send a GET to a service you would like to use. - - - - - Authentication tokens are typically valid for 24 hours. Applications should be designed - to re-authenticate after receiving a 401 (Unauthorized) response from a service endpoint. + You can use cURL to try the authentication process in two steps: + get a token; send the token to a service. + + + Get an authentication token by providing your username + and either your API key or your password. Here are + examples of both approaches: + You can request a token by providing your + username and your password. + + curl -X POST https://auth.api.openstackcloud.com/v2.0/tokens -d '{"auth":{"passwordCredentials":{"username": "joecool", "password":"coolword"}, "tenantId":"5"}}' -H 'Content-type: application/json' + + Successful authentication returns a token which you + can use as evidence that your identity has already been + authenticated. To use the token, pass it to other services + as an X-Auth-Token header. + Authentication also returns a service catalog, listing + the endpoints you can use for Cloud services. + + + Use the authentication token to send a GET to a + service you would like to use. + + + Authentication tokens are typically valid for 24 hours. + Applications should be designed to re-authenticate after + receiving a 401 (Unauthorized) response from a service + endpoint. - If you are programmatically parsing an authentication response, please be aware that - service names are stable for the life of the particular service and can be used as keys. - You should also be aware that a user's service catalog can include multiple uniquely-named - services which perform similar functions. + If you are programmatically parsing an authentication + response, please be aware that service names are stable for + the life of the particular service and can be used as keys. + You should also be aware that a user's service catalog can + include multiple uniquely-named services which perform + similar functions.
- Request/Response Types - The Block Storage API supports both the JSON and XML data serialization formats. The - request format is specified using the Content-Type header and is required for - calls that have a request body. The response format can be specified in requests either by - using the Accept header or by adding an .xml or .json - extension to the request URI. Note that it is possible for a response to be serialized using - a format different from the request. If no response format is specified, JSON is the - default. If conflicting formats are specified using both an Accept header and a - query extension, the query extension takes precedence. - Some operations support an Atom representation that can be used to - efficiently determine when the state of services has changed. + Request and response types + The Block Storage API supports both the JSON and XML data + serialization formats. The request format is specified using + the Content-Type header and is required for calls + that have a request body. The response format can be specified + in requests either by using the Accept header or + by adding an .xml or .json extension + to the request URI. Note that it is possible for a response to + be serialized using a format different from the request. If no + response format is specified, JSON is the default. If + conflicting formats are specified using both an + Accept header and a query extension, the query + extension takes precedence. + Some operations support an Atom + representation that can be used to efficiently determine when + the state of services has changed. @@ -297,11 +324,13 @@ format="SVG" scale="60"/>
Response Formats
- In the request example below, notice that Content-Type is set to - application/json, but application/xml is - requested via the Accept header: + In the request example below, notice that + Content-Type is set to + application/json, but + application/xml is requested via the + Accept header: - Request with Headers (Getting Volume Types) + Get volume types: Request with headers GET /v1/441446/types HTTP/1.1 Host: dfw.blockstorage.api.openstackcloud.com @@ -309,9 +338,10 @@ format="SVG" scale="60"/> Accept: application/xml - Therefore an XML response format is returned: + Therefore an XML response format + is returned: - Response with Headers + Get volume types: Response with headers HTTP/1.1 200 OK Date: Fri, 20 Jul 2012 20:32:13 GMT @@ -333,21 +363,26 @@ format="SVG" scale="60"/>
Limits - All accounts, by default, have a preconfigured set of thresholds (or limits) to manage - capacity and prevent abuse of the system. The system recognizes two kinds of limits: - rate limits and absolute limits. Rate limits - are thresholds that are reset after a certain amount of time passes. Absolute limits are - fixed. + All accounts, by default, have a preconfigured set of + thresholds (or limits) to manage capacity and prevent abuse of + the system. The system recognizes two kinds of limits: + rate limits and absolute + limits. Rate limits are thresholds that are + reset after a certain amount of time passes. Absolute limits + are fixed.
- Rate Limits - Rate limits are specified in terms of both a human-readable wild-card URI and a - machine-processable regular expression. The regular expression boundary matcher '^' takes - effect after the root URI path. For example, the regular expression ^/v1.0/instances would - match the bolded portion of the following URI: - https://dfw.blockstorage.api.openstackcloud.com/v1.0/instances. - The following table specifies the default rate limits for all API operations for all - &GET;, &POST;, &PUT;, and &DELETE; calls for volumes: + Rate limits + Rate limits are specified in terms of both a + human-readable wild-card URI and a machine-processable + regular expression. The regular expression boundary matcher + '^' takes effect after the root URI path. For example, the + regular expression ^/v1.0/instances would match the bolded + portion of the following URI: + https://dfw.blockstorage.api.openstackcloud.com/v1.0/instances. + The following table specifies the default rate limits + for all API operations for all &GET;, &POST;, &PUT;, and + &DELETE; calls for volumes: @@ -391,16 +426,21 @@ format="SVG" scale="60"/>
Default Rate Limits
- Rate limits are applied in order relative to the verb, going from least to most - specific. For example, although the threshold for &POST; to /v1.0/* is 10 per minute, one - cannot &POST; to /v1.0/* more than 50 times within a single day. - If you exceed the thresholds established for your account, a 413 (Rate - Control) HTTP response will be returned with a Retry-After - header to notify the client when it can attempt to try again. + Rate limits are applied in order relative to the verb, + going from least to most specific. For example, although the + threshold for &POST; to /v1.0/* is 10 per minute, one cannot + &POST; to /v1.0/* more than 50 times within a single + day. + If you exceed the thresholds established for your + account, a 413 (Rate Control) HTTP + response will be returned with a Retry-After + header to notify the client when it can attempt to try + again.
- Absolute Limits - Refer to the following table for the absolute limits that are set. + Absolute limits + Refer to the following table for the absolute limits + that are set. @@ -416,7 +456,8 @@ format="SVG" scale="60"/> - + @@ -424,14 +465,17 @@ format="SVG" scale="60"/>
- Date/Time Format - The Block Storage Service uses an ISO-8601 compliant date format for the display and - consumption of date/time values. + Date and time format + The Block Storage Service uses an ISO-8601 compliant date + format for the display and consumption of date/time + values. - DB Service Date/Time Format + DB service date and time format yyyy-MM-dd'T'HH:mm:ss.SSSZ - See the table below for a description of the date/time format codes. - May 19th, 2011 at 8:07:08 AM, GMT-5 would have the following format: + See the table below for a description of the date/time + format codes. + May 19th, 2011 at 8:07:08 AM, GMT-5 would have the + following format: 2011-05-19T08:07:08-05:00
Absolute Limits
Block StorageMaximum amount of block storage (in gigabytes)Maximum amount of block storage (in + gigabytes) 1 TB
@@ -485,11 +529,13 @@ format="SVG" scale="60"/>
Faults - When an error occurs, the Block Storage Service returns a fault object containing an - HTTP error response code that denotes the type of error. In the body of the response, the - system will return additional information about the fault. - The following table lists possible fault types with their associated error codes and - descriptions. + When an error occurs, the Block Storage Service returns a + fault object containing an HTTP error response code that + denotes the type of error. In the body of the response, the + system will return additional information about the + fault. + The following table lists possible fault types with their + associated error codes and descriptions.
@@ -502,70 +548,83 @@ format="SVG" scale="60"/> - + - + - + - + - + - + - + - + - + - + - + - The following two instanceFault examples show errors when the server has - erred or cannot perform the requested operation: + The following two instanceFault examples show + errors when the server has erred or cannot perform the + requested operation: - Example instanceFault Response: XML + Example instancefault: XML response HTTP/1.1 500 Internal Server Error Content-Type: application/xml Content-Length: 121 @@ -575,8 +634,8 @@ Date: Mon, 28 Nov 2011 18:19:37 GMT - Example Fault Response: JSON -HTTP/1.1 500 Internal Server Error + Example fault: JSON response + HTTP/1.1 500 Internal Server Error Content-Length: 120 Content-Type: application/json; charset=UTF-8 Date: Tue, 29 Nov 2011 00:33:48 GMT @@ -584,678 +643,173 @@ Date: Tue, 29 Nov 2011 00:33:48 GMT - The error code (code) is returned in the body of the response for - convenience. The message element returns a human-readable message that is - appropriate for display to the end user. The details element is optional and - may contain information that is useful for tracking down an error, such as a stack trace. - The details element may or may not be appropriate for display to an end user, - depending on the role and experience of the end user. - The fault's root element (for example, instanceFault) may change depending - on the type of error. - The following two badRequest examples show errors - when the volume size is invalid: + The error code (code) is returned in the body + of the response for convenience. The message + element returns a human-readable message that is appropriate + for display to the end user. The details element + is optional and may contain information that is useful for + tracking down an error, such as a stack trace. The + details element may or may not be appropriate + for display to an end user, depending on the role and + experience of the end user. + The fault's root element (for example, + instanceFault) may change depending on the type + of error. + The following + badRequest examples show errors when the volume + size is not valie: - Example badRequest Fault on Volume Size Errors: XML -HTTP/1.1 400 None + Example badRequest fault and volume size errors: XML + request + HTTP/1.1 400 None Content-Type: application/xml Content-Length: 121 Date: Mon, 28 Nov 2011 18:19:37 GMT - Example badRequest Fault on Volume Size Errors: JSON -HTTP/1.1 400 None + Example badRequest fault and volume size errors: JSON + request + HTTP/1.1 400 None Content-Length: 120 Content-Type: application/json; charset=UTF-8 Date: Tue, 29 Nov 2011 00:33:48 GMT - - - + - The next two examples show itemNotFound errors: + The next two examples show itemNotFound + errors: - Example itemNotFound Fault: XML - HTTP/1.1 404 Not Found + Example itemNotFound fault: XML response + HTTP/1.1 404 Not Found Content-Length: 147 Content-Type: application/xml; charset=UTF-8 Date: Mon, 28 Nov 2011 19:50:15 GMT - Example itemNotFound Fault: JSON - HTTP/1.1 404 Not Found + Example itemNotFound fault: JSON response + HTTP/1.1 404 Not Found Content-Length: 78 Content-Type: application/json; charset=UTF-8 Date: Tue, 29 Nov 2011 00:35:24 GMT - - - + - - API Operations + + API operations
Volumes - A volume is a detachable block storage device. You can think of it as a USB hard drive. - It can only be attached to one instance at a time. - When making an API call to create, list, or delete volume(s), - the following status values are possible: + A volume is a detachable block storage device. You can + think of it as a USB hard drive. It can only be attached to + one instance at a time. + When making an API call to + create, list, or delete volume(s), the following status values + are possible: CREATING – The volume is being created. - AVAILABLE – The volume is read to be attached to an instance. + AVAILABLE – The volume is read to be attached to + an instance. - ATTACHING – The volume is attaching to an instance. + ATTACHING – The volume is attaching to an + instance. - IN-USE – The volume is attached to an instance. + IN-USE – The volume is attached to an + instance. DELETING – The volume is being deleted. - ERROR – An error has occurred with the volume. + ERROR – An error has occurred with the + volume. - ERROR_DELETING – There was an error deleting the volume. + ERROR_DELETING – There was an error deleting the + volume. - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Create Volume - -
- - - - - - - - - - - - - - - - - - - Create Volumes: JSON Request - -GET /v1/volumes -Content-Type: application/json -Accept: application/json - - - - - - - Create Volumes: JSON Response - - - - - Returns status code 200 on success - -
- List Volume Summaries - -
- - - - - - - - - - - - - - - - - - - List Volumes: Request - -GET /v1/volumes -Accept: application/json - - - - List Volumes: JSON Response - - - - - Returns status code 200 on success - The response from list volume summary is the same as list volume details in v1. This is - corrected in v2. - -
- List Volume Details - -
- - - - - - - - - - - - - - - - - - - List Volumes: Request - -GET /v1/volumes/details -Accept: application/json - - - - List Volumes: JSON Response - - - - - Returns status code 200 on success - -
- Show Volume - -
- - - - - - - - - - - - - - - - - - - Show Volume: Request - -GET /v1/volumes/2402b902-0b7a-458c-9c07-7435a826f794 -Accept: application/json - - - - Show Volume: JSON Response - - - - - Returns status code 200 on success - -
- Update Volume - -
- - - - - - - - - - - - - - - - - - - Update Volume: JSON Request - -PUT /v1/volumes2402b902-0b7a-458c-9c07-7435a826f794 -Content-Type: application/json -Accept: application/json - - - - - - - Update Volume: JSON Response - - - - - Returns status code 200 on success - -
- Delete Volume - -
- - - - - - - - - - - - - - - - - - - Delete Volume: Request - -DELETE /v1/volumes/521752a6-acf6-4b2d-bc7a-119f9148cd8c - - - - Delete Volume: Response - -The response body will be empty with status code 202. - - - You cannot delete a volume if it has snapshots associated with it. - + + + + + + + + + + + + +
Snapshots - A snapshot is a point in time copy of the data contained in a - volume. - When making an API call to create, list, or delete snapshot(s), the following status - values are possible: + A snapshot is a point in time + copy of the data contained in a volume. + When making an API call to create, list, or delete + snapshot(s), the following status values are possible: CREATING – The snapshot is being created. - AVAILABLE – The snapshot is ready to be used. + AVAILABLE – The snapshot is ready to be + used. DELETING – The snapshot is being deleted. - ERROR – An error occurred with the snapshot. + ERROR – An error occurred with the + snapshot. - ERROR_DELETING – There was an error deleting the snapshot. + ERROR_DELETING – There was an error deleting the + snapshot. -
- Create Snapshot - -
- - - - - - - - - - - - - - - - - - - Create Snapshot: JSON Request - - POST /v1/snapshots - Content-Type: application/json - Accept: application/json - - - - - - - Create Snapshot: JSON Response - - - - - Returns status code 202 on success - -
- List Snapshot Summaries - -
- - - - - - - - - - - - - - - - - - - List Snapshots: Request - -GET /v1/snapshots -Accept: application/json - - - - List Snapshots: JSON Response - - - - - Returns status code 200 on success - The response from list snapshots summary is the same as list snapshot details in v1. - -
- List Snapshot Details - -
- - - - - - - - - - - - - - - - - - - List Snapshots Details: Request - -GET /v1/snapshots/details -Accept: application/json - - - - List Snapshots Details: JSON Response - - - - - Returns status code 200 on success - -
- Show Snapshot - -
- - - - - - - - - - - - - - - - - - - Show Snapshot: Request - -GET /v1/snapshots/3fbbcccf-d058-4502-8844-6feeffdf4cb5 -Accept: application/json - - - - Show Snapshot: JSON Response - - - - - Returns status code 200 on success - -
- Update Snapshot - -
- - - - - - - - - - - - - - - - - - - Update Snapshot: JSON Request - -PUT /v1/snapshots/2402b902-0b7a-458c-9c07-7435a826f794 -Content-Type: application/json -Accept: application/json - - - - - - - Update Snapshot: JSON Response - - - - - Returns status code 200 on success - -
- Delete Snapshot - -
- - - - - - - - - - - - - - - - - - - Delete Snapshot: Request - -DELETE /v1/snapshots/3fbbcccf-d058-4502-8844-6feeffdf4cb5 - - - - Delete Snapshot: Response - -The response body will be empty with status code 202. - - - + + + + +
- Volume Types -
- List Volume Types - -
- - - - - - - - - - - - - - - - - - - List Volume Types: Request - -GET /v1/types -Accept: application/json - - - - List Volume Types: JSON Response - - - - - Returns status code 200 on success - -
- Show Volume Type - -
- - - - - - - - - - - - - - - - - - - Show Volume Type: Request - -GET /v1/types/6685584b-1eac-4da6-b5c3-555430cf68ff -Accept: application/json - - - - Show Volume Type: JSON Response - - - - - Returns status code 200 on success - + Volume types + + + + + + + + + +
+ Quota sets extension (os-quota-sets) + Administrators only, depending on policy settings. View, + update, and delete quotas for a tenant. +
diff --git a/v1/src/samples/snapshot_create_request.json b/v1/src/samples/snapshot_create_request.json deleted file mode 100644 index 22fb4e0..0000000 --- a/v1/src/samples/snapshot_create_request.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "snapshot": { - "display_name": "snap-001", - "display_description": "Daily backup", - "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", - "force": true - } -} \ No newline at end of file diff --git a/v1/src/samples/snapshot_create_response.json b/v1/src/samples/snapshot_create_response.json deleted file mode 100644 index f4263b1..0000000 --- a/v1/src/samples/snapshot_create_response.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "snapshot": { - "created_at": "2013-02-19T00:24:54.179025", - "display_description": "Daily backup", - "display_name": "snap-001", - "id": "2d843196-eff1-4a0c-980e-10fee5df2bea", - "size": 10, - "status": "creating", - "volume_id": "da450d0c-0920-4785-80dd-b024515200ce" - } -} diff --git a/v1/src/samples/snapshot_list_detail_response.json b/v1/src/samples/snapshot_list_detail_response.json deleted file mode 100644 index 3210b90..0000000 --- a/v1/src/samples/snapshot_list_detail_response.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "snapshots": [ - { - "id": "3fbbcccf-d058-4502-8844-6feeffdf4cb5", - "display_name": "snap-001", - "display_description": "Daily backup", - "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", - "status": "available", - "size": 10, - "created_at": "2012-02-29T03:50:07Z" - }, - { - "id": "e479997c-650b-40a4-9dfe-77655818b0d2", - "display_name": "snap-002", - "display_description": "Weekly backup", - "volume_id": "76b8950a-8594-4e5b-8dce-0dfa9c696358", - "status": "available", - "size": 25, - "created_at": "2012-03-19T01:52:47Z" - } - ] -} diff --git a/v1/src/samples/snapshot_list_simple_response.json b/v1/src/samples/snapshot_list_simple_response.json deleted file mode 100644 index 3210b90..0000000 --- a/v1/src/samples/snapshot_list_simple_response.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "snapshots": [ - { - "id": "3fbbcccf-d058-4502-8844-6feeffdf4cb5", - "display_name": "snap-001", - "display_description": "Daily backup", - "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", - "status": "available", - "size": 10, - "created_at": "2012-02-29T03:50:07Z" - }, - { - "id": "e479997c-650b-40a4-9dfe-77655818b0d2", - "display_name": "snap-002", - "display_description": "Weekly backup", - "volume_id": "76b8950a-8594-4e5b-8dce-0dfa9c696358", - "status": "available", - "size": 25, - "created_at": "2012-03-19T01:52:47Z" - } - ] -} diff --git a/v1/src/samples/snapshot_show_response.json b/v1/src/samples/snapshot_show_response.json deleted file mode 100644 index 5b06b81..0000000 --- a/v1/src/samples/snapshot_show_response.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "snapshot": { - "id": "3fbbcccf-d058-4502-8844-6feeffdf4cb5", - "display_name": "snap-001", - "display_description": "Daily backup", - "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", - "status": "creating", - "size": 30, - "created_at": "2012-02-29T03:50:07Z" - } -} \ No newline at end of file diff --git a/v1/src/samples/snapshot_update_request.json b/v1/src/samples/snapshot_update_request.json deleted file mode 100644 index 0a98646..0000000 --- a/v1/src/samples/snapshot_update_request.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "snapshot":{ - "display_name":"snap-002", - "display_description":"This is yet, another snapshot." - } -} diff --git a/v1/src/samples/snapshot_update_response.json b/v1/src/samples/snapshot_update_response.json deleted file mode 100644 index 68cb085..0000000 --- a/v1/src/samples/snapshot_update_response.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "snapshot": { - "created_at": "2013-02-20T08:11:34.000000", - "display_description": "This is yet, another snapshot", - "display_name": "vol-002", - "id": "4b502fcb-1f26-45f8-9fe5-3b9a0a52eaf2", - "size": 1, - "status": "available", - "volume_id": "2402b902-0b7a-458c-9c07-7435a826f794" - } -} diff --git a/v1/src/samples/volume_create_request.json b/v1/src/samples/volume_create_request.json deleted file mode 100644 index 66ba872..0000000 --- a/v1/src/samples/volume_create_request.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "volume": { - "display_name": "vol-001", - "display_description": "Another volume.", - "size": 30, - "volume_type": "289da7f8-6440-407c-9fb4-7db01ec49164", - "metadata": {"contents": "junk"}, - "availability_zone": "us-east1" - } -} \ No newline at end of file diff --git a/v1/src/samples/volume_create_response.json b/v1/src/samples/volume_create_response.json deleted file mode 100644 index 3d398b0..0000000 --- a/v1/src/samples/volume_create_response.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "volume": { - "attachments": [], - "availability_zone": "us-east1", - "bootable": "false", - "created_at": "2013-02-20T07:36:44.893964", - "display_description": "Another volume.", - "display_name": "vol-001", - "id": "2402b902-0b7a-458c-9c07-7435a826f794", - "metadata": { - "contents": "junk" - }, - "size": 30, - "snapshot_id": null, - "source_volid": null, - "status": "creating", - "volume_type": "289da7f8-6440-407c-9fb4-7db01ec49164" - } -} diff --git a/v1/src/samples/volume_list_detail_response.json b/v1/src/samples/volume_list_detail_response.json deleted file mode 100644 index ddc5b6e..0000000 --- a/v1/src/samples/volume_list_detail_response.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "volumes": [ - { - "attachments": [], - "availability_zone": "us-east1", - "bootable": "false", - "created_at": "2013-02-18T23:47:37.000000", - "display_description": "yet another volume", - "display_name": "vol-002", - "id": "dfd9dd41-1353-450a-b5ac-a6037ee43cd8", - "metadata": { - "contents": "some more junk" - }, - "size": 30, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "SATA" - }, - { - "attachments": [], - "availability_zone": "us-east1", - "bootable": "false", - "created_at": "2013-02-18T23:44:47.000000", - "display_description": "another volume", - "display_name": "vol-001", - "id": "da450d0c-0920-4785-80dd-b024515200ce", - "metadata": { - "contents": "junk" - }, - "size": 10, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "SATA" - } - ] -} diff --git a/v1/src/samples/volume_list_simple_response.json b/v1/src/samples/volume_list_simple_response.json deleted file mode 100644 index ddc5b6e..0000000 --- a/v1/src/samples/volume_list_simple_response.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "volumes": [ - { - "attachments": [], - "availability_zone": "us-east1", - "bootable": "false", - "created_at": "2013-02-18T23:47:37.000000", - "display_description": "yet another volume", - "display_name": "vol-002", - "id": "dfd9dd41-1353-450a-b5ac-a6037ee43cd8", - "metadata": { - "contents": "some more junk" - }, - "size": 30, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "SATA" - }, - { - "attachments": [], - "availability_zone": "us-east1", - "bootable": "false", - "created_at": "2013-02-18T23:44:47.000000", - "display_description": "another volume", - "display_name": "vol-001", - "id": "da450d0c-0920-4785-80dd-b024515200ce", - "metadata": { - "contents": "junk" - }, - "size": 10, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "SATA" - } - ] -} diff --git a/v1/src/samples/volume_show_response.json b/v1/src/samples/volume_show_response.json deleted file mode 100644 index 5fd13f7..0000000 --- a/v1/src/samples/volume_show_response.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "volume": { - "attachments": [], - "availability_zone": "nova", - "bootable": "false", - "created_at": "2013-02-20T07:36:44.000000", - "display_description": "another volume foo", - "display_name": "vol-002", - "id": "2402b902-0b7a-458c-9c07-7435a826f794", - "metadata": { - "content": "junk" - }, - "os-vol-host-attr:host": "precise64", - "os-vol-tenant-attr:tenant_id": "dee102070e654627a1f96acc5dcad496", - "size": 1, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "None" - } -} diff --git a/v1/src/samples/volume_type_list_response.json b/v1/src/samples/volume_type_list_response.json deleted file mode 100644 index 867fb30..0000000 --- a/v1/src/samples/volume_type_list_response.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "volume_types": [ - { - "extra_specs": {}, - "id": "6685584b-1eac-4da6-b5c3-555430cf68ff", - "name": "SSD" - }, - { - "extra_specs": {}, - "id": "8eb69a46-df97-4e41-9586-9a40a7533803", - "name": "SATA" - } - ] -} diff --git a/v1/src/samples/volume_type_show_response.json b/v1/src/samples/volume_type_show_response.json deleted file mode 100644 index 0c42fd9..0000000 --- a/v1/src/samples/volume_type_show_response.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "volume_type":{ - "id":"6685584b-1eac-4da6-b5c3-555430cf68ff", - "name":"SSD", - "extra_specs":{ - - } - } -} diff --git a/v1/src/samples/volume_update_request.json b/v1/src/samples/volume_update_request.json deleted file mode 100644 index 918fe21..0000000 --- a/v1/src/samples/volume_update_request.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "volume":{ - "display_name":"vol-002", - "display_description":"This is yet, another volume.", - "metadata":{ - "contents":"junk" - } - } -} \ No newline at end of file diff --git a/v1/src/samples/volume_update_response.json b/v1/src/samples/volume_update_response.json deleted file mode 100644 index d6bd97d..0000000 --- a/v1/src/samples/volume_update_response.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "volume": { - "attachments": [], - "availability_zone": "nova", - "bootable": "false", - "created_at": "2013-02-20T07:36:44.000000", - "display_description": "This is yet, another volume.", - "display_name": "vol-002", - "id": "2402b902-0b7a-458c-9c07-7435a826f794", - "metadata": { - "tier": "1" - }, - "size": 1, - "snapshot_id": null, - "source_volid": null, - "status": "available", - "volume_type": "None" - } -} diff --git a/v2/pom.xml b/v2/pom.xml index 8abd6ca..2b56652 100644 --- a/v2/pom.xml +++ b/v2/pom.xml @@ -1,31 +1,32 @@ - - + + org.openstack.docs + parent-pom + 1.0.0-SNAPSHOT + ../pom.xml + 4.0.0 - - org.openstack.docs - openstack-block-storage-api-guide - 2.0.0 + openstack-v2 jar - OpenStack Block Storage Service API Guide v2 + OpenStack Block Storage API v2 and Extensions Reference + + + local + 1 + - - - UTF-8 - - src - com.rackspace.cloud.api clouddocs-maven-plugin - 1.15.0 + + generate-webhelp @@ -56,15 +57,10 @@ 1 0 1 - - - 2.0 ${basedir}/target/docbkx/webhelp/api/openstack-block-storage 0 openstack-blockstorage-devguide-2.0 - @@ -85,7 +81,6 @@ - @@ -98,29 +93,6 @@ openstack - - - - Rackspace Research Repositories - - true - - - - rackspace-research - Rackspace Research Repository - http://maven.research.rackspacecloud.com/content/groups/public/ - - - - - rackspace-research - Rackspace Research Repository - http://maven.research.rackspacecloud.com/content/groups/public/ - - - - - + \ No newline at end of file diff --git a/v2/src/openstack-blockstorage-devguide.xml b/v2/src/openstack-blockstorage-devguide.xml index cf87a4f..cb0e46a 100644 --- a/v2/src/openstack-blockstorage-devguide.xml +++ b/v2/src/openstack-blockstorage-devguide.xml @@ -1,10 +1,5 @@ - - - - GET'> PUT'> @@ -14,19 +9,12 @@ - - - - - '> - - - diff --git a/v2/src/samples/snapshot_create_response.xml b/v2/src/samples/snapshot_create_response.xml deleted file mode 100644 index a2f041c..0000000 --- a/v2/src/samples/snapshot_create_response.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - \ No newline at end of file diff --git a/v2/src/samples/snapshot_list_detail_response.xml b/v2/src/samples/snapshot_list_detail_response.xml deleted file mode 100644 index f36674e..0000000 --- a/v2/src/samples/snapshot_list_detail_response.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - diff --git a/v2/src/samples/snapshot_list_simple_response.xml b/v2/src/samples/snapshot_list_simple_response.xml deleted file mode 100644 index 17f4a6c..0000000 --- a/v2/src/samples/snapshot_list_simple_response.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/v2/src/samples/snapshot_update_request.xml b/v2/src/samples/snapshot_update_request.xml deleted file mode 100644 index feeafed..0000000 --- a/v2/src/samples/snapshot_update_request.xml +++ /dev/null @@ -1,4 +0,0 @@ - - diff --git a/v2/src/samples/snapshot_update_response.xml b/v2/src/samples/snapshot_update_response.xml deleted file mode 100644 index 9ce9f8f..0000000 --- a/v2/src/samples/snapshot_update_response.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - diff --git a/v2/src/samples/volume_create_request.xml b/v2/src/samples/volume_create_request.xml deleted file mode 100644 index 987f816..0000000 --- a/v2/src/samples/volume_create_request.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - junk - - diff --git a/v2/src/samples/volume_create_response.xml b/v2/src/samples/volume_create_response.xml deleted file mode 100644 index de5614d..0000000 --- a/v2/src/samples/volume_create_response.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - -
badRequest 400There was one or more errors in the user request.There was one or more errors in the user + request.
unauthorized 401The supplied token is not authorized to access the resources, either - it's expired or invalid.The supplied token is not authorized to + access the resources, either it's expired or + invalid.
forbidden 403Access to the requested resource was denied.Access to the requested resource was + denied.
itemNotFound 404The back-end services did not find anything matching the - Request-URI.The back-end services did not find + anything matching the Request-URI.
badMethod 405The request method is not allowed for this resource.The request method is not allowed for this + resource.
overLimit 413Either the number of entities in the request is larger than allowed - limits, or the user has exceeded allowable request rate limits. See the - details element for more specifics. Contact support if you think you - need higher request rate limits.Either the number of entities in the + request is larger than allowed limits, or the user has + exceeded allowable request rate limits. See the + details element for more specifics. + Contact support if you think you need higher request + rate limits.
badMediaType 415The requested content type is not supported by this service.The requested content type is not + supported by this service.
unprocessableEntity 422The requested resource could not be processed on at the moment.The requested resource could not be + processed on at the moment.
instanceFault 500This is a generic server error and the message contains the reason for - the error. This error could wrap several error messages and is a catch all.This is a generic server error and the + message contains the reason for the error. This error + could wrap several error messages and is a catch + all.
notImplemented 501The requested method or resource is not implemented.The requested method or resource is not + implemented.
serviceUnavailable 503The Block Storage Service is not available.The Block Storage Service is not + available.
VerbURIDescription
&GET;/volumesLists a summary of all volumes defined in Cinder that are accessible to the tenant - who submits the request.
&GET;/volumes/volume_idLists detailed information for the specified volume.
&POST;/volumesCreates a new Cinder volume.
&PUT;/volumes/volume_idUpdates the specified volume.
&DELETE;/volumes/volume_idDestroys the specified volume.
VerbURIDescription
&POST;/volumesCreate a new volume.
VerbURIDescription
&GET;/volumesLists a summary of all volumes defined in Cinder that are accessible to the tenant - who submits the request.
VerbURIDescription
&GET;/volumes/detailsList detailed information of all volumes defined in Cinder that are accessible to - the tenant who submits the request.
VerbURIDescription
&GET;/volumes/volume-idLists detailed information for the specified volume ID.
VerbURIDescription
&PUT;/volumes/volume-idUpdate the specified volume.
VerbURIDescription
&DELETE;/volumes/volume-idDestroys the specified volume.
VerbURIDescription
&POST;/snapshotsCreate a snapshot of specified volume.
VerbURIDescription
&GET;/snapshotsLists a summary of all snapshots defined in Cinder that are accessible to the - tenant who submits the request.
VerbURIDescription
&GET;/snapshots/detailsList detailed information of all snapshots defined in Cinder that are accessible - to the tenant who submits the request.
VerbURIDescription
&GET;/snapshots/snapshot-idLists detailed information for the specified snapshot ID.
VerbURIDescription
&PUT;/snapshots/snapshot-idUpdate the specified snapshot.
VerbURIDescription
&DELETE;/snapshots/snapshot-idDestroys the specified snapshot.
VerbURIDescription
&GET;/typesList all volume types and their information.
VerbURIDescription
&GET;/types/type-idShow information on a specified volume type.