diff --git a/api-ref/src/docbkx/ch_compute-v2.1.xml b/api-ref/src/docbkx/ch_compute-v2.1.xml
index dabe36d4b..ab619aa8d 100644
--- a/api-ref/src/docbkx/ch_compute-v2.1.xml
+++ b/api-ref/src/docbkx/ch_compute-v2.1.xml
@@ -426,6 +426,14 @@
href="../wadls/compute-api/src/v2.1/wadl/os-baremetal-nodes-v2.1.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
+
+ Servers with block device mapping format
+ (servers, os-block-device-mapping)
+ Creates a server with a block device mapping.
+
+
Cells (os-cells, capacities)
diff --git a/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-req.json b/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-req.json
new file mode 100644
index 000000000..41983de60
--- /dev/null
+++ b/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-req.json
@@ -0,0 +1,33 @@
+{
+ "server": {
+ "name": "new-server-test",
+ "imageRef": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
+ "flavorRef": "http://openstack.example.com/openstack/flavors/1",
+ "metadata": {
+ "My Server Name": "Apache1"
+ },
+ "personality": [
+ {
+ "path": "/etc/banner.txt",
+ "contents": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5kIGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVsc2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4gQnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRoZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlvdSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vyc2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6b25zLiINCg0KLVJpY2hhcmQgQmFjaA=="
+ }
+ ],
+ "block_device_mapping_v2": [
+ {
+ "device_name": "/dev/sdb1",
+ "source_type": "blank",
+ "destination_type": "local",
+ "delete_on_termination": "True",
+ "guest_format": "swap",
+ "boot_index": "-1"
+ },
+ {
+ "device_name": "/dev/sda1",
+ "source_type": "volume",
+ "destination_type": "volume",
+ "uuid": "fake-volume-id-1",
+ "boot_index": "0"
+ }
+ ]
+ }
+}
diff --git a/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-resp.json b/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-resp.json
new file mode 100644
index 000000000..d3a4f558c
--- /dev/null
+++ b/api-ref/src/wadls/compute-api/src/v2.1/api_samples/os-block-device-mapping/server-post-resp.json
@@ -0,0 +1,16 @@
+{
+ "server": {
+ "adminPass": "N4x7wFX6iN8D",
+ "id": "babd1af0-4fc6-4529-b32f-aad69811ccf5",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/servers/babd1af0-4fc6-4529-b32f-aad69811ccf5",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/servers/babd1af0-4fc6-4529-b32f-aad69811ccf5",
+ "rel": "bookmark"
+ }
+ ]
+ }
+}
diff --git a/api-ref/src/wadls/compute-api/src/v2.1/common.ent b/api-ref/src/wadls/compute-api/src/v2.1/common.ent
index dc0661fa4..936f637ab 100644
--- a/api-ref/src/wadls/compute-api/src/v2.1/common.ent
+++ b/api-ref/src/wadls/compute-api/src/v2.1/common.ent
@@ -128,7 +128,7 @@
'>
-
+
- server.
+ A server
object.
-
-
- The image reference for the desired image
- for your server instance.
-
- Specify as an ID or full URL.
-
-
+
+
+ Required if you define a block device mapping.
+
+
+ The image reference as an ID or full URL for the image for your server
+ instance.
+
+
+
+
+
+
+ The block device mapping information. Mutually exclusive with
+ block_device_mapping
.
+
+
+
+
+
+
+ The block device mapping information. Mutually exclusive with
+ block_device_mapping_v2
.
+
+
+
+
+
+
+ Defines whether to delete or keep the attached volume when the server
+ is deleted.
+
+
+ Set to True
to delete the attached volume when the server
+ is deleted. Set to False
to keep the attached volume when
+ the server is deleted.
+
+
+ Part of a block device mapping definition.
+
+
'>
+
+
+ A server
object.
+
+
+
+
+ The administrative password for the server.
+
+
+
+
+ The server ID.
+
+
+
+
+ Server links.
+
+'>
+ name="links" style="plain" required="true" type="xsd:string">
diff --git a/api-ref/src/wadls/compute-api/src/v2.1/wadl/os-block-device-mapping-v2.1.wadl b/api-ref/src/wadls/compute-api/src/v2.1/wadl/os-block-device-mapping-v2.1.wadl
new file mode 100644
index 000000000..6f575131a
--- /dev/null
+++ b/api-ref/src/wadls/compute-api/src/v2.1/wadl/os-block-device-mapping-v2.1.wadl
@@ -0,0 +1,104 @@
+
+
+
+
+
+
+
+
+
+
+ %common;
+
+ %common_project;
+]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The tenant ID in a multi-tenancy
+ cloud.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates a server with a block device mapping.
+
+
+ To define the block device mapping, you can include either a
+ block_device_mapping
or
+ block_device_mapping_v2
object in the request
+ body. The block_device_mapping_v2
object is
+ preferred.
+
+
+
+
+
+
+
+
+
+ &serverCreateParameters;
+
+
+
+
+
+
+
+
+
+ &serverCreateResponseParameters;
+
+
+
+
+
+
+ &commonFaults; &getFaults;
+ &postPutFaults; &buildFaults;
+
+