Commit Graph

37 Commits

Author SHA1 Message Date
Chris Yeoh 45591b6da1 Disables pci plugin for v2.1 & microversions
The pci plugin was only ever merged into the v3 (now v2.1 microversions)
and never the v2 API. Since v2.1 i meant to be identical to v2 it should not
appear in v2 either.

This change disables the pci api functionality in v2.1. It will be renabled
soon after microversions is enabled using a microversion bump.

Related-Bug: 1426241
Partially implements blueprint v2-on-v3-api

Change-Id: Ifc1d6f24d5a637270154b996087a98b41133e014
2015-03-03 14:20:42 +10:30
ghanshyam 8f98f8205b Remove 'locked_by' from V2.1 extended server status
In case of v2.1, extended server status contain 'locked_by' which does
not match with V2 response.

These new attributes are found during tempest testing by blocking
additional properties in schema -https://review.openstack.org/#/c/156130/

V2.1 must be identical with V2 and must not contain any new attributes in
response. This commit removes this extra attributes from V2.1 API.

Partially implements blueprint v2-on-v3-api

Change-Id: I5c4f6851300510f8fc5342d3bfc596e0ac9f1800
2015-02-27 10:32:32 +09:00
ghanshyam 1c29a25ca5 Remove accessips attribute from V2.1 POST server resp
In case of v2.1, if "os-access-ips" extension is enabled then server
POST response contain access ips attribute which does not match
with V2 response. V2 server POST response never have access ips attribute.

V2.1 must be identical with V2 and must not contain any new attributes in
response. This commit remove these extra attributes from V2.1 API.

V2 server POST response-
{
    "server": {
        "OS-DCF:diskConfig": "AUTO",
        "adminPass": "ahW3PjQNAu6r",
        "id": "e726f5ae-8179-44ba-bbfb-8a0c52b33095",
        "links": [
            {
                "href": "http://openstack.example.com/v2/openstack/
servers/e726f5ae-8179-44ba-bbfb-8a0c52b33095",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/openstack/
servers/e726f5ae-8179-44ba-bbfb-8a0c52b33095",
                "rel": "bookmark"
            }
        ],
        "security_groups": [
            {
                "name": "default"
            }
        ]
    }
}

V2.1 server POST response-
{
    "server": {
        "OS-DCF:diskConfig": "AUTO",
        "adminPass": "zPnp2GseTqG4",
        "id": "8195065c-fea4-4d57-b93f-5c5c63fe90e8",
        "links": [
            {
                "href": "http://openstack.example.com/v3/servers/
8195065c-fea4-4d57-b93f-5c5c63fe90e8",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/servers/
8195065c-fea4-4d57-b93f-5c5c63fe90e8",
                "rel": "bookmark"
            }
        ],
        "accessIPv4": "",
        "accessIPv6": "",
        "security_groups": [
            {
                "name": "default"
            }
        ]
    }
}

Partially implements blueprint v2-on-v3-api

Change-Id: Ib9197cc9061bbba0c040f237bb52d12a60a976d7
2015-02-26 07:00:40 +00:00
Chris Yeoh 9631e4836a Extract preserve ephemeral on rebuild from servers plugin
The preserve ephemeral on rebuild functionality was merged into the servers plugin
code. This should never have happened and the hook for handling extra parameters
for the rebuild api used instead (otherwise we end up with monster functions).

This patch splits the relevant bits out to their own plugin.

Partially implements bp v2-on-v3-api

Change-Id: I0f35f897b9470039d509a97e6513c6cc806169b4
2015-02-09 21:36:53 +10:30
Chris Yeoh c99d8f32b2 Change some v2.1 extension names to v2
Changes some extension names (not aliases) in the v2.1 api to match
what they are in v2. This is for compatibility between v2.1 and v2
to ensure /extensions output matches. Longer term the extension names
don't really matter as users should just be using the extension alias
and /extensions will be replaced by microversions and json HOME. So its not
worth adding extra infrastructure which is capable of translating just the
extension name like we do with other parts of the v2.1 /extension information

Partially implements bp v2-on-v3-api

Change-Id: I22227496aec51c5f523112cf49af92f0fa124a10
2015-02-09 09:56:30 +10:30
Chris Yeoh 30ed3064ab Convert v2.1 extension_info to show V2 API extension list
The V2.1 API implementation does not have a 1-1 mapping of extensions
compared to the V2 API. For example because many of the dummy
extensions were only originally added in order to be able to signal to
the API clients that new functionality was available these were not
ported and functionally hard coded into the original plugin.
However in order to retain complete backwards compatibility we need
to have an /extensions output which is identical to the original
V2 API. This patch implements that backwards compatibility including
fields such as XML namespaces, links and updated which are no
longer supported.

Some minor testcase changes to reflect no real xml support in v2.1
now

Part of blueprint v2-on-v3-api

Change-Id: I8e63a684093dfe3a643c07b20e8080c1e950ed5a
2015-02-09 09:52:32 +10:30
Ken'ichi Ohmichi 569d62716d Remove v1.1 from v2.1 extension description
Current v2.1 os-user-data extension only includes "v1.1" in the
description, but it confuses developers/users because of mismatching
versions. In addition, the other extensions doesn't contain version
number in their descriptions.
So this patch removes v1.1 from os-user-data extension's description.

Partially implements blueprint v2-on-v3-api

Change-Id: I6280a0633c0e416e4b1798a708035eaf8c979fba
2015-02-05 07:44:38 +00:00
Chris Yeoh f1499e715d Add missing setup.cfg entry for os-user-data plugin
Although os-user-data has an entry in nova.api.v3.extensions.server.create
in setup.cfg it is missing one in the general nova.api.v3.extensions list.
Without an entry the plugin does not appear in the extension list so this
patch adds an entry for it.

Partially implements blueprint v2-on-v3-api

Change-Id: I13fa049539b07ff901b36ae18eca59fbb1354794
2015-02-05 17:15:54 +10:30
Eli Qiao 89c57a1c91 Cleanup in admin_actions(v2.1api)
Cleanup in admin_actions, in v2.1 admin_actions api,
it only contains resetNetwork, injectNetworkInfo, os-resetState.
correct the doc string of extension class.

Pulled from gate because of upstream bug with oslo.concurrency

Partially implements blueprint v2-on-v3-api
Change-Id: Ide0a53993849828fe60c2fe6e6f22d5c67d2bb5a
2015-01-13 17:31:23 +00:00
Eli Qiao 001d702e90 Modify v21 alias name for compatible with v2
This patch changes some of the alias names to be compatible with v2.
so the extension info output will be as same with v2.
 consoles -> os-consoles
 flavor-extra-specs -> os-flavor-extra-specs
 flavor-manage -> os-flavor-manage

Partially implements blueprint v2-on-v3-api

Change-Id: Ia8c6a0144e43134667636db9ba862b26f265a433
2014-12-09 12:57:36 +08:00
Chris Yeoh bb38d13c69 Convert v3/v2.1 extension info to present v2 API format
Changes from the v3 API /extensions interface format to the
v2 API format. Note that this does not yet list the same
extensions as the v2 api because in v2.1 some have been split
or renamed. This will be addressed in a future patch

Partially implements blueprint v2-on-v3-api

Change-Id: Icaf945b356fcbbe2126343ad01ee58cecd15100f
2014-12-04 19:27:50 +08:00
ghanshyam c1ae5e0cbd Port disk_config extension for V2.1
This patch ports v2 disk_config extension to v2.1.

Unittest code modified to share testing with both v2/v2.1.
API sample file and their tests have been added.

Also added extension point of server resize V3.

Partially implements blueprint v2-on-v3-api

Change-Id: Id2aace8121a310f8c86c6a9cc532bd1074d653c4
2014-10-08 17:33:32 +09:00
Ghanshyam a5147669f4 Port extended_ips/extended_ips_mac extension to V2.1
This patch port extended_ips/extended_ips_mac extension to V2.1

There are difference between V2 and V3 server show/index &
server address index API response listed below-

'address' field of V2->V3 API response-
"OS-EXT-IPS:type" -> "type"
"OS-EXT-IPS-MAC:mac_addr" -> "mac_addr"

Reverting those attribute same as V2 to work with V2.1

Closes-Bug: #1368495
Partially implements blueprint v2-on-v3-api

Change-Id: I44902b0402115d1b6e833975e6c2f020ac5ab7c3
2014-09-26 10:02:34 +09:00
Jenkins a1fa42f2ad Merge "Change v3 security_groups API to v2.1" 2014-09-08 04:46:12 +00:00
Jenkins a99f04dc2a Merge "Convert v3 ExtendedAvailabilityZone api to v2.1" 2014-09-07 13:24:26 +00:00
Haiwei Xu be605e9996 Convert v3 ExtendedAvailabilityZone api to v2.1
This patch changes v3 ExtendedAvailabilityZone API to v2.1
and makes v2 unit tests share between v2 and v2.1.

The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: I49baff38b7a9dabd40550267c2119fe84137594f
2014-09-02 11:54:09 +09:00
jichenjc 0af17f3514 Convert server_usage v3 plugin to v2.1 API
Changes required to have v3 plugin natively support the V2.1
API.

The parameters is changed from os-server-usage to OS-SRV-USG

Partially implements blueprint v2-on-v3-api
Co-Authored-By: Chris Yeoh <cyeoh@au1.ibm.com>

Change-Id: I4a4ebe533f8910a29b54d6ec9554cc151af492d1
2014-09-02 10:35:43 +09:30
Ken'ichi Ohmichi bbc7f8a4c6 Change v3 security_groups API to v2.1
This patch changes v3 security_groups API to v2.1 and makes v2 unit tests
share between v2 and v2.1.
This patch doesn't revert /os-security-groups, /os-security-group-rules
and /servers/server_id/os-security-groups because these features are
implemented in Networking API. On v2.1 API, we decide we don't need to
implement proxying features.

The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3 .

Partially implements blueprint v2-on-v3-api

Change-Id: I82660fd514d041bdd1fad0e689fa4fe90d441c47
2014-09-01 03:44:56 +00:00
Jenkins 3e4ef29cab Merge "Change V3 access_ips extension into v2.1" 2014-08-28 22:44:53 +00:00
Jenkins 58e6eb857a Merge "Change ViewBuilder into v2.1 for servers" 2014-08-27 02:42:56 +00:00
Eli Qiao f9930a85b0 Change v3 extended_status to v2.1
This patch changes v3 extended_status API to v2.1 and makes v2
unit tests share between v2 and v2.1.
Revert v3 changes back to v2.
os-extended-status:* -> OS-EXT-STS:*
The differences between v2 and v3 are descibed on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.
Partially implements blueprint v2-on-v3-api

Change-Id: Ieefca1d0e8da831830f43cc83eb50bc7e7f4a10c
2014-08-26 10:11:31 +08:00
Jenkins 85a04f7ee1 Merge "Change v3 extended_server_attibutes to v2.1" 2014-08-25 10:13:16 +00:00
He Jie Xu 0063d17d74 Change V3 access_ips extension into v2.1
This patch changes v3 access_ips API to v2.1 and makes v2
unit tests share between v2 and v2.1.
The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3 .

Partially implements blueprint v2-on-v3-api

Change-Id: Id464cbe4a8b7a7749c4f14e4531e4494dd315857
2014-08-25 15:34:15 +08:00
He Jie Xu 73c2c2db69 Change ViewBuilder into v2.1 for servers
This patch changes v3 servers' ViewBuilder to v2.1. And also
change related unittests and api sample tests.

The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: Ie68d46daa91ef43c84eeef479c0986d5e7f15719
2014-08-25 10:06:41 +08:00
Eli Qiao 409555530a Change v3 extended_server_attibutes to v2.1
This patch changes v3 extended_server_attibutes API to v2.1 and makes v2
unit tests share between v2 and v2.1.
Revert v3 changes back to v2.
os-extended-server-attributes:* -> OS-EXT-SRV-ATTR:*
The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: I02b203b62b9e675f71d0ff3880bc9ee051a3b80d
2014-08-24 09:09:58 +08:00
Ghanshyam 5482e388fa Convert v3 config drive plugin to v2.1
This patch changes v3 config drive plugin to v2.1 and makes v2
unit tests share between v2 and v2.1.

The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: Ieed7619f3cb310b25d157ebb07f24468aea1af9d
2014-08-21 16:55:43 +09:00
He Jie Xu 5ed82cf7ed Change 'image_ref'/'flavor_ref' into v2 style for servers
This patch changes 'image_ref'/'flavor_ref' to 'imageRef'/'flavorRef'
that same with v2 api. And also change the related unittest.
The differences between v2 and v3 are described on the wiki page

https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: Ic17334e0a9de89488d5e0c8b75950027d51a3cd4
2014-08-18 09:57:34 +08:00
He Jie Xu af8f401eb5 Change 'admin_password' into v2 style for servers extension
This patch changes 'admin_password' to 'adminPass' that same
with v2 api. And also change the related unittest.

The differences between v2 and v3 are described on the wiki page
https://wiki.openstack.org/wiki/NovaAPIv2tov3.

Partially implements blueprint v2-on-v3-api

Change-Id: Ie5675f98bb15c55a191a207171e2ffe3be8e6deb
2014-08-18 09:55:30 +08:00
Simon Chang c19ea390ec Added os-security-groups prefix
Added os-security-groups prefix to the security_groups attribute in json response.

Change-Id: Id2a4a92da0c9751abc5c37f06fc2484ba80a8a09
Closes-Bug: #1223309
2014-03-01 17:23:49 -05:00
Russell Bryant c2336e2405 Remove v3 xml API sample tests
This is a step toward removing XML support from the v3 compute API.
First, we need to remove all of the tests that would fail once we start
ripping out the real code.

Part of blueprint remove-v3-xml-api

Change-Id: Ie2c280d5ea1e6b8756535deb05982a92561552db
2014-01-28 17:01:44 -05:00
He Jie Xu ec1711134e Removes disk-config extension from v3 api
This patch removes disk-config extension for v3 api, and also
remove related tests. And remove resize extension point for
servers core because there isn't any extension using it anymore
and there isn't good way to test resize extension point.

Implements bp api-v3-remove-disk-config
DocImpact

Change-Id: I894ae6f4e0d6c9f956a71e8e061ccb3fa1b039d8
2013-12-30 13:05:55 +08:00
Jenkins 457d3b799d Merge "Extends V3 servers api for pci support" 2013-12-11 22:08:53 +00:00
Shuangtai Tian c087250048 Extends V3 servers api for pci support
All pci passthrough code is merged into nova, but the API does not support.
this patch extends the servers to show PCI information for instance and compute
node. This is a part of PCI APIs, for more information see the  blueprint.

Partially implement blueprint pci-api-support

Change-Id: I99eeeca67983c49433ab0079f490a454d250f5e0
2013-12-04 10:01:40 +00:00
Chris Yeoh e9d426cc21 Remove traces of V3 personality extension from api samples
Removes occurences of the personality extension from the V3 API
samples as the extension has been removed. Cleanup of consistency
of image and flavor ref examples for the api samples.

DocImpact

Partially implements blueprint v3-api-remove-extensions

Change-Id: I43a34097904d3d7e280039c3d5d76479a49e92d0
2013-11-20 22:49:27 +10:30
Ken'ichi Ohmichi c88b2de92b Make v3 admin_password parameters consistent
There are API parameters "admin_password" and "admin_pass" on some APIs:
 * AdminPasswordController: admin_password
 * EvacuateController     : admin_password
 * RescueController       : admin_pass
 * ServersController      : admin_pass

These parameters mean the same thing, it is the admin password of a vm
instance. They should be the same parameter name because of the meaning.

DocImpact

Partially implements bp nova-v3-api

Change-Id: I452672e064d0dc4a1d5700bb96c01de8087f33d8
2013-11-05 15:33:32 +09:00
He Jie Xu d61d1f62da Enable extension access_ips for v3 API
This patch enable extension access_ips, remove old 'access_ip_*'
attributes and related unittest from servers core. And remove
old attributes from api samples.

Partially implements bp nova-v3-api

DocImpact

Change-Id: Id4c8bb721550e317e0695d7876e2faa3d6e91a60
2013-10-26 17:19:46 +08:00
Chris Yeoh 4afbc6a4e1 v3 API samples for servers
Adds the rest of API samples for the core servers plugin. This is separate
from the other servers api samples because the output is potentially
dependent on all the other extensions and I'm expecting lots of merge
issues.

Partially implements blueprint v3-api-specification
Partially implements blueprint v3-api-unittests

Change-Id: Iffc814f327b0047c3510bfe5b8bbcb9e0e4540db
2013-09-23 23:25:05 +09:30