summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-01-08 04:58:12 +0000
committerGerrit Code Review <review@openstack.org>2013-01-08 04:58:12 +0000
commit4ac882e7d22f197f3858b3c7b112980334aaa3a0 (patch)
tree51bcc62efce415a95340fba8ab9ad29aa4486ada /nova
parent3a14312ae2ccccfa4f64d80e42aacb4d16a9567f (diff)
parente8746dbcc1ad53a3335d063fea95b516a0f10f9d (diff)
Merge "config_drive is missing in xml deserializer"
Diffstat (limited to 'nova')
-rw-r--r--nova/api/openstack/compute/servers.py4
-rw-r--r--nova/tests/api/openstack/compute/test_servers.py18
2 files changed, 22 insertions, 0 deletions
diff --git a/nova/api/openstack/compute/servers.py b/nova/api/openstack/compute/servers.py
index 7a8d7d5a8..f992dc445 100644
--- a/nova/api/openstack/compute/servers.py
+++ b/nova/api/openstack/compute/servers.py
@@ -223,6 +223,10 @@ class CommonDeserializer(wsgi.MetadataXMLDeserializer):
if auto_disk_config:
server['OS-DCF:diskConfig'] = utils.bool_from_str(auto_disk_config)
+ config_drive = server_node.getAttribute('config_drive')
+ if config_drive:
+ server['config_drive'] = config_drive
+
return server
def _extract_block_device_mapping(self, server_node):
diff --git a/nova/tests/api/openstack/compute/test_servers.py b/nova/tests/api/openstack/compute/test_servers.py
index 734297501..f916925fd 100644
--- a/nova/tests/api/openstack/compute/test_servers.py
+++ b/nova/tests/api/openstack/compute/test_servers.py
@@ -3664,6 +3664,24 @@ class TestServerCreateRequestXMLDeserializer(test.TestCase):
}}
self.assertEquals(request['body'], expected)
+ def test_request_with_config_drive(self):
+ serial_request = """
+ <server xmlns="http://docs.openstack.org/compute/api/v2"
+ name="config_drive_test"
+ imageRef="1"
+ flavorRef="1"
+ config_drive="true"/>"""
+ request = self.deserializer.deserialize(serial_request)
+ expected = {
+ "server": {
+ "name": "config_drive_test",
+ "imageRef": "1",
+ "flavorRef": "1",
+ "config_drive": "true"
+ },
+ }
+ self.assertEquals(request['body'], expected)
+
class TestAddressesXMLSerialization(test.TestCase):