From 3bbac4b749997ae35a67f9c1c6c28f4c5c212d35 Mon Sep 17 00:00:00 2001 From: Chris Yeoh Date: Fri, 26 Jul 2013 13:12:26 +0930 Subject: [PATCH] Adds infra for v3 API sample creation Adds the required infrastructure for the v3 API sample creation. - v3 API samples and the test cases are in their own v3 directory - API samples from "core" are now put in their own (per plugin) directory rather than in the root directory - Testcases to create api samples are now placed in individual files rather than one giant one. I think it makes it clearer what testcases we do have and avoids merge conflict pain Adds API samples for basic servers interaction Fix for bug in servers.py where if no extension was loaded which extends create xml deserialization an exception would occur (fixed here because it causes the api sample tests ported to fail). Partially implements blueprint v3-api-unittests Change-Id: I653af49dcc499c18f14b6e1764711a9922354069 --- .../api_samples/servers/server-get-resp.json | 56 ++++++++++++++++++ .../api_samples/servers/server-get-resp.xml | 19 ++++++ .../api_samples/servers/server-post-req.json | 16 +++++ .../api_samples/servers/server-post-req.xml | 19 ++++++ .../api_samples/servers/server-post-resp.json | 16 +++++ .../api_samples/servers/server-post-resp.xml | 6 ++ .../servers/servers-details-resp.json | 58 +++++++++++++++++++ .../servers/servers-details-resp.xml | 21 +++++++ .../servers/servers-list-resp.json | 18 ++++++ .../api_samples/servers/servers-list-resp.xml | 7 +++ 10 files changed, 236 insertions(+) create mode 100644 doc/v3/api_samples/servers/server-get-resp.json create mode 100644 doc/v3/api_samples/servers/server-get-resp.xml create mode 100644 doc/v3/api_samples/servers/server-post-req.json create mode 100644 doc/v3/api_samples/servers/server-post-req.xml create mode 100644 doc/v3/api_samples/servers/server-post-resp.json create mode 100644 doc/v3/api_samples/servers/server-post-resp.xml create mode 100644 doc/v3/api_samples/servers/servers-details-resp.json create mode 100644 doc/v3/api_samples/servers/servers-details-resp.xml create mode 100644 doc/v3/api_samples/servers/servers-list-resp.json create mode 100644 doc/v3/api_samples/servers/servers-list-resp.xml diff --git a/doc/v3/api_samples/servers/server-get-resp.json b/doc/v3/api_samples/servers/server-get-resp.json new file mode 100644 index 000000000..074ec35f7 --- /dev/null +++ b/doc/v3/api_samples/servers/server-get-resp.json @@ -0,0 +1,56 @@ +{ + "server": { + "access_ip_v4": "", + "access_ip_v6": "", + "addresses": { + "private": [ + { + "addr": "192.168.0.3", + "mac_addr": "aa:bb:cc:dd:ee:ff", + "type": "fixed", + "version": 4 + } + ] + }, + "created": "2013-08-09T05:47:55Z", + "flavor": { + "id": "1", + "links": [ + { + "href": "http://openstack.example.com/flavors/1", + "rel": "bookmark" + } + ] + }, + "host_id": "9bc5b8424de645fd39f9edd242992c6be364eddefc936296fad0c582", + "id": "4fc3ceca-91ec-47e7-85ee-ce9834e8ddbb", + "image": { + "id": "70a599e0-31e7-49b7-b260-868f441e862b", + "links": [ + { + "href": "http://openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b", + "rel": "bookmark" + } + ] + }, + "links": [ + { + "href": "http://openstack.example.com/v3/servers/4fc3ceca-91ec-47e7-85ee-ce9834e8ddbb", + "rel": "self" + }, + { + "href": "http://openstack.example.com/servers/4fc3ceca-91ec-47e7-85ee-ce9834e8ddbb", + "rel": "bookmark" + } + ], + "metadata": { + "My Server Name": "Apache1" + }, + "name": "new-server-test", + "progress": 0, + "status": "ACTIVE", + "tenant_id": "openstack", + "updated": "2013-08-09T05:47:55Z", + "user_id": "fake" + } +} \ No newline at end of file diff --git a/doc/v3/api_samples/servers/server-get-resp.xml b/doc/v3/api_samples/servers/server-get-resp.xml new file mode 100644 index 000000000..d4b56ffc1 --- /dev/null +++ b/doc/v3/api_samples/servers/server-get-resp.xml @@ -0,0 +1,19 @@ + + + + + + + + + + Apache1 + + + + + + + + + \ No newline at end of file diff --git a/doc/v3/api_samples/servers/server-post-req.json b/doc/v3/api_samples/servers/server-post-req.json new file mode 100644 index 000000000..d41985a1b --- /dev/null +++ b/doc/v3/api_samples/servers/server-post-req.json @@ -0,0 +1,16 @@ +{ + "server" : { + "name" : "new-server-test", + "image_ref" : "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b", + "flavor_ref" : "http://openstack.example.com/openstack/flavors/1", + "metadata" : { + "My Server Name" : "Apache1" + }, + "personality" : [ + { + "path" : "/etc/banner.txt", + "contents" : "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5kIGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVsc2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4gQnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRoZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlvdSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vyc2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6b25zLiINCg0KLVJpY2hhcmQgQmFjaA==" + } + ] + } +} \ No newline at end of file diff --git a/doc/v3/api_samples/servers/server-post-req.xml b/doc/v3/api_samples/servers/server-post-req.xml new file mode 100644 index 000000000..598839cf6 --- /dev/null +++ b/doc/v3/api_samples/servers/server-post-req.xml @@ -0,0 +1,19 @@ + + + + Apache1 + + + + ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp + dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k + IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs + c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g + QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo + ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv + dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy + c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6 + b25zLiINCg0KLVJpY2hhcmQgQmFjaA== + + + \ No newline at end of file diff --git a/doc/v3/api_samples/servers/server-post-resp.json b/doc/v3/api_samples/servers/server-post-resp.json new file mode 100644 index 000000000..7be48ad56 --- /dev/null +++ b/doc/v3/api_samples/servers/server-post-resp.json @@ -0,0 +1,16 @@ +{ + "server": { + "admin_pass": "2pXrV3mMFkxH", + "id": "f85df75c-cf69-4723-b861-deff54b7cf70", + "links": [ + { + "href": "http://openstack.example.com/v3/servers/f85df75c-cf69-4723-b861-deff54b7cf70", + "rel": "self" + }, + { + "href": "http://openstack.example.com/servers/f85df75c-cf69-4723-b861-deff54b7cf70", + "rel": "bookmark" + } + ] + } +} \ No newline at end of file diff --git a/doc/v3/api_samples/servers/server-post-resp.xml b/doc/v3/api_samples/servers/server-post-resp.xml new file mode 100644 index 000000000..f5c7a8713 --- /dev/null +++ b/doc/v3/api_samples/servers/server-post-resp.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/doc/v3/api_samples/servers/servers-details-resp.json b/doc/v3/api_samples/servers/servers-details-resp.json new file mode 100644 index 000000000..436fa6ff8 --- /dev/null +++ b/doc/v3/api_samples/servers/servers-details-resp.json @@ -0,0 +1,58 @@ +{ + "servers": [ + { + "access_ip_v4": "", + "access_ip_v6": "", + "addresses": { + "private": [ + { + "addr": "192.168.0.3", + "mac_addr": "aa:bb:cc:dd:ee:ff", + "type": "fixed", + "version": 4 + } + ] + }, + "created": "2013-08-09T05:47:55Z", + "flavor": { + "id": "1", + "links": [ + { + "href": "http://openstack.example.com/flavors/1", + "rel": "bookmark" + } + ] + }, + "host_id": "c977254e8fbf1c2dd83f283dce24dfdba6f1388d05c9972342472a6f", + "id": "b327644d-d61d-49f9-86fd-d56f166e98a8", + "image": { + "id": "70a599e0-31e7-49b7-b260-868f441e862b", + "links": [ + { + "href": "http://openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b", + "rel": "bookmark" + } + ] + }, + "links": [ + { + "href": "http://openstack.example.com/v3/servers/b327644d-d61d-49f9-86fd-d56f166e98a8", + "rel": "self" + }, + { + "href": "http://openstack.example.com/servers/b327644d-d61d-49f9-86fd-d56f166e98a8", + "rel": "bookmark" + } + ], + "metadata": { + "My Server Name": "Apache1" + }, + "name": "new-server-test", + "progress": 0, + "status": "ACTIVE", + "tenant_id": "openstack", + "updated": "2013-08-09T05:47:55Z", + "user_id": "fake" + } + ] +} \ No newline at end of file diff --git a/doc/v3/api_samples/servers/servers-details-resp.xml b/doc/v3/api_samples/servers/servers-details-resp.xml new file mode 100644 index 000000000..9ae3d6e81 --- /dev/null +++ b/doc/v3/api_samples/servers/servers-details-resp.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + Apache1 + + + + + + + + + + \ No newline at end of file diff --git a/doc/v3/api_samples/servers/servers-list-resp.json b/doc/v3/api_samples/servers/servers-list-resp.json new file mode 100644 index 000000000..dcef4422f --- /dev/null +++ b/doc/v3/api_samples/servers/servers-list-resp.json @@ -0,0 +1,18 @@ +{ + "servers": [ + { + "id": "204da46b-4fc9-4761-9bab-aa28add417e6", + "links": [ + { + "href": "http://openstack.example.com/v3/servers/204da46b-4fc9-4761-9bab-aa28add417e6", + "rel": "self" + }, + { + "href": "http://openstack.example.com/servers/204da46b-4fc9-4761-9bab-aa28add417e6", + "rel": "bookmark" + } + ], + "name": "new-server-test" + } + ] +} \ No newline at end of file diff --git a/doc/v3/api_samples/servers/servers-list-resp.xml b/doc/v3/api_samples/servers/servers-list-resp.xml new file mode 100644 index 000000000..1c9d40634 --- /dev/null +++ b/doc/v3/api_samples/servers/servers-list-resp.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file