Feature #3767
Changes for compatibility with OS/Compute v2
Status: | Closed | Start date: | 05/20/2013 | |
---|---|---|---|---|
Priority: | High | Due date: | ||
Assignee: | Ilias Tsitsimpis | % Done: | 100% |
|
Category: | burnin | Spent time: | - | |
Target version: | 0.14.0 |
Description
Change burnin to be compatible with:
1. Adjust "meta" and "metadata" terms URIs
JSON request and response bodies
2. Adjust "meta" and "metadata" terms
3. Omit "values" term JSON request and response bodies
JSON response bodies
4. Rename some terms
1. Adjust "meta" and "metadata" terms @ URIs
---------------------------------------------------------------
OS/Compute v2 uses the term "metadata" on all service URIs.
Affected Cyclades URIs:
/servers/<server-id>/meta
/servers/<server-id>/meta/<key>
/images/<image-id>/meta
/images/<image-id>/meta/<key>
.. note:: Syntactically, both Cyclades and OS/Compute-v2 have a [/flavors GET] but [/flavors/details GET] is unique in Cyclades. Semantically, [/flavors/details GET] is semantically equivalent to OS/Comptute-v2 [/flavors GET], but the semantic equivalent of Cyclades [/flavors GET] does not exist in OS/Compute-v2.
2. Adjust "meta" and "metadata" terms @ JSON request and response bodies
Cyclades and OS/Compute v2 are mostly compatible in this aspect. The compatibility breaks only at the following cases:
- /servers/<server-id>/meta[data]/<key> GET response:
* Cyclades: {"metadata": {...
* OS Compute v2: {"meta": { ...
- /images/<server-id>/meta[data]/<key> GET response:
* Cyclades: {"metadata": {...
* OS Compute v2: {"meta": { ...
3. Omit "values" term @ JSON request and response bodies
The term "values" is omitted in OS/Compute v2 JSON bodies, e.g.
Cyclades: {"servers": {"values": [{..vm 1..}, {..vm 2..}, ...]}}
OS/Compute v2: {"servers": [{..vm 1..}, {..vm 2..}, ...]}
Cyclades "values" occurrences:
- /servers[/details] GET response:
* {"servers": {"values" ...
* {"servers": {"values": [ {"attachments": {"values" ...
* {"servers": {"values": [ {"metadata": {"values" ...
- /servers POST request:
* {"server": {"metadata": { "values" ...
- /servers POST response:
* {"server": {"metadata": { "values" ...
* {"server": {attachments": { "values" ...
- /servers/<server-id> GET response:
* {"server": "attachments": {"values" ...
* {"server": {"metadata": {"values" ...
- /servers/<server id>/ips GET response:
* {"addresses"" {"values" ...
- /servers/<server-id>/meta[data] GET response:
* {"metadata": {"values" ...
- /flavors[/detail] GET response:
* {"flavors": {"values" ...
- /images/[/detail] GET response:
* {"images": {"values" ...
* {"images": {"values": [ {"metadata": {"values" ...
- /images/<image-id> GET response:
* {"image": {"metadata": {"values" ...
- /images/<image-id>/meta[data] GET
* {"metadata": {"values" ...
- /networks[/detail] GET response:
* {"networks": {"values" ...
4. Rename some terms @ JSON response bodies
Renames:
flavorRef --> flavor
imageRef --> image
Locations where the renames should be applied:
- /servers[/details] GET response body
- /servers POST response body
- /servers/<id> GET response body
Related issues
Associated revisions
burnin: Changes for compatibility with OS/Compute v2
Refs #3767
History
#1 Updated by Ilias Tsitsimpis over 10 years ago
- Status changed from Assigned to Resolved
- % Done changed from 0 to 100
Not tested yet (waiting for synnefo 0.14 deployment).
#2 Updated by Ilias Tsitsimpis almost 10 years ago
- Status changed from Resolved to Closed