Commit Graph

234 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
Jenkins 3412d294ad Merge "Drop deprecated namespace for oslo.rootwrap" 2015-02-25 18:32:51 +00:00
Davanum Srinivas 0a95872e13 Remove backwards compat oslo.messaging entries from setup.cfg
Nuke unnecessary entries for messaging

Change-Id: I8da1c3c9378e95ecfec05b35096a56b1555ac7ce
2015-02-23 03:23:28 +00:00
Eugeniya Kudryashova 77ca9fdd83 Replace usage of LazyPluggable by stevedore driver
Stevedore lib support lazy loading, so this change replace
LazyPluggable class by stevedore extentions and remove it

Stevedore support usage of driver property since 0.4 release,
some of Openstack projects like glance is already using it.

Change-Id: I7d384a73861e18cac04e07f75abd60df7f183aa2
2015-02-17 14:49:48 +00:00
ChangBo Guo(gcb) 022882170b Drop deprecated namespace for oslo.rootwrap
The oslo team is recommending everyone to switch to the
non-namespaced versions of libraries.[1]
oslo.rootwrap suggests to use oslo_rootwrap.cmd:main.[2]

[1]https://blueprints.launchpad.net/oslo-incubator/+spec/drop-namespace-packages
[2]https://github.com/openstack/oslo.rootwrap#using
Change-Id: I2e9b72c77316c8d097e7e49ab09fcb18ac33078c
2015-02-13 07:05:47 +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 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
Chris Yeoh 39a5a736d0 Implement microversion support on api methods
Adds support for specifying api versioning information
on api methods and the infrastructure to route requests
to the correct method based on the request information.
The api_version decorator allows us to retain the same
method name for different implementations (versions) of
the API method (GET/PUT/POST, etc).

Note that currently the @api_version decorator must
be the first (outermost) decorator on an API method.
We should in future have at least a hacking rule to enforce
this but better would be to remove this restriction.

Partially Implements Blueprint api-microversions

Change-Id: Ifb6698c582d37284c42b9b81100a651fd8d1dd1a
2014-12-05 09:54:41 +08:00
Jenkins 289736bfcf Merge "Port virtual-interfaces plugin to v2.1(v3) API" 2014-12-02 07:01:28 +00:00
Jenkins 8425fbc01c Merge "Implement 'personality' plugin for V2.1" 2014-12-01 14:29:14 +00:00
Jenkins 1b3e99773e Merge "Port floating_ips extension to v2.1" 2014-12-01 12:57:15 +00:00
jichenjc 7ffdb2deaf Port virtual-interfaces plugin to v2.1(v3) API
Ports virtual-interfaces extension and adapts it to the
v2.1/v3 API framework. API behaviour is identical.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: Ic25ae83ecfaaa461b6ddd044e04af844d02dd6b7
2014-12-01 11:04:08 +08:00
Eli Qiao 9a47137f53 Port floating_ips extension to v2.1
This patch ports floating_ips extension from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.

Partially implements blueprint v2-on-v3-api

Change-Id: Ib06c0d6c7ff123f09a99ed94f4b0009695897602
2014-11-28 13:19:30 +08:00
Chris Yeoh 9d311d1545 Change definition of API_EXTENSION_NAMESPACE to method
Moves definition of API_EXTENSION_NAMESPACE to a method so we can
mock it for unittests. This will allow us to do much better
unittesting for the API framework including the new microversion
features. It will also allow us to cleanup other framework type
tests which currently rely on real plugins.

Partially implements blueprint api-microversions

Change-Id: I093e15483fc84d823c09c84a218e5eb14f1de607
2014-11-28 11:07:33 +11:00
ghanshyam d99b308e6d Implement 'personality' plugin for V2.1
User can specify 'personality' attribute while server creation
& rebuild to inject files into server.

This patch implement this as separate plugin for V2.1 API.

Also define the schema and unit tests for the same.

Partially implements blueprint v2-on-v3-api

Change-Id: Ia0c527539af7fe33eba4999822476653e1b96bc6
2014-11-27 15:02:15 +09:00
Chris Yeoh c82f5886ab Port v2 quota_classes extension to work in v2.1(v3) framework
Port v2 quota_classes extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical with the exception that
there is no support for XML. Also

- unittest code modified to share existing testing with both
  v2/v2.1
- Adds expected error decorators for API methods
- Adds API samples

Partially implements blueprint v2-on-v3-api

Change-Id: I372e9940f499d3e2cf621a58eafa9502d4e14cea
2014-11-26 13:56:13 +10:30
Julien Danjou a826880d01 Remove Python 2.6 classifier
Nova does not support Python 2.6 anymore starting with Kilo and might
not work correctly with it, so remove the classifier.

Change-Id: If60c60af9ae28ce91bdcc3f7f47c906ec8250dd1
2014-11-25 16:45:03 +01:00
Eli Qiao 0621c2507f Port assisted-volume-snapshots extension to v2.1
This patch ports assisted-volume-snapshots to v2.1 and make v2 and v2.1
share unit test cases.
This patch addes a schema to do the input validation for snapshots_create
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: I5b7be1de8ac2628a287897dcc5ca0eaf7a8957a2
2014-11-19 10:09:58 +08:00
ghanshyam 550f1fb07a Add 'instance-usage-audit-log' plugin for V2.1
This patch adds 'instance-usage-audit-log' plugin for V2.1 API.
Also implement the API sample tests and share the unit tests
between V2 & V2.1.

Partially implements blueprint v2-on-v3-api

Change-Id: I152d00fb4b12942515d5db54a7ec381279c31ccd
2014-11-13 14:38:25 +09:00
He Jie Xu c7d9924a08 Port security-group-default-rules extension into v2.1
This patch port security-group-default-rules into v2.1.

This patch just move the v2 code into v2.1 and share the unittest. The other
v2.1 related fix and improvement will be addressed by subsequent patchset.

Partially implements blueprint v2-on-v3-api

Change-Id: I4d65993d6413160d2c7c2eb2ce0c3f66768e1a36
2014-10-28 22:02:27 +08:00
Eli Qiao 8b0e091577 Port floating_ip_dns extention to v2.1
This patch ports floating_ip_dns extention from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.
Partially implements blueprint v2-on-v3-api

Change-Id: Ia1316697c141fde2b431ba79aebae5986687a4fa
2014-10-24 13:42:46 +08:00
Jenkins e53cb39c29 Merge "Port floating_ips_bulk extention to v2.1" 2014-10-24 01:10:34 +00:00
Jenkins 10d73a7531 Merge "Port fixed_ip extention to v2.1" 2014-10-23 11:58:32 +00:00
Eli Qiao 4bb34182fe Port floating_ips_bulk extention to v2.1
This patch ports floating_ips_bulk extention from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.
Partially implements blueprint v2-on-v3-api

Change-Id: I9444ff9c394d530cb76dd4ac21b51cd4de7ef6dc
2014-10-22 10:42:33 +08:00
Eli Qiao dd2f76ae50 Porting baremetal_nodes extension to v2.1/v3
This patch ports baremetal-nodes(include baremetal-stat-ext)
to v2.1 and make v2 and v2.1 share unit test cases.

In v2.1/v3,baremetal-nodes will not depend on baremetal-stat-ext.

Partially implements blueprint v2-on-v3-api
Change-Id: I0f6a968897975ee91e76538d2ce7d2538044613e
2014-10-21 09:39:21 +08:00
Eli Qiao f7107c8480 Port fixed_ip extention to v2.1
This patch ports fixed_ip extention from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.

Partially implements blueprint v2-on-v3-api
Change-Id: Ifa7e0dd5a91cfe881077b92aeb7019d0435d780a
2014-10-21 09:33:49 +08:00
Chris Yeoh 0c1ad907c4 Port os-networks-associate plugin to v2.1(v3) infrastructure
Ports os-networks-associate extension and adapts it to the
v2.1/v3 API framework. API behaviour is identical.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I6ccf9613abf999784c548fb058522ac60db7f052
2014-10-16 11:22:28 +10:30
Chris Yeoh cc452485c2 Port os-tenant-networks plugin to v2.1(v3) infrastructure
Ports os-tenant-networks extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I340c9b1312a3477c63d28f19df9611c95e67cde6
2014-10-16 11:08:40 +10:30
Jenkins ef85102dd4 Merge "Port disk_config extension for V2.1" 2014-10-14 05:40:34 +00:00
Jenkins 3e67e0f68c Merge "Port os-networks plugin to v2.1(v3) infrastructure" 2014-10-14 01:20:30 +00:00
Jenkins b722bb7884 Merge "Port floating_ip_pools extention to v2.1" 2014-10-13 16:22:25 +00:00
Eli Qiao 2773fedfc2 Port floating_ip_pools extention to v2.1
This patch ports floating_ip_pools extention from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.
Partially implements blueprint v2-on-v3-api

Change-Id: I0b34358db08a29e76a59b22a0992abc88296058d
2014-10-13 15:33:03 +08:00
Chris Yeoh 8f94547532 Port os-networks plugin to v2.1(v3) infrastructure
Ports os-networks extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I94b7b476cbb02725a396725a379417b64afd58a7
2014-10-10 09:48:13 +10:30
Eli Qiao 6007a019cb Port cloudpipe extension to v2.1
This patch ports couldpipe extension from v2 to v2.1,
and have v2 unit test cases shared between v2.1 and v2.
Partially implements blueprint v2-on-v3-api

Change-Id: Id40c637c0fc207e97b1d094805eb0cee6e9cd9c9
2014-10-09 14:05:49 +08:00
Dan Smith 46ed619b9a Remove baremetal virt driver
This patch removes the baremetal virt driver from nova, which was
deprecated in Juno. It does not aim to perform any of the refactoring
we need to do now that the driver is gone, but is intended as a clean
removal of all the baremetal code itself.

Of specific note are the api_samples tests. We didn't have samples to
test the ironic proxy code, so I removed the baremetal ones for show
and index, resetting that extension back to "untested" status as if it
was new.

Tests that stub out ironic interactions and re-introduce those tests
should be added after this patch.

Change-Id: Ia76e41a8a3b7230701872ae7a1975edc3d9ea847
2014-10-08 13:41:37 +00: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
Chris Yeoh ccc4efe36f Port fping extension to work in v2.1/v3 framework
Ports v2 fping extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I8dc4ede46826bf6062097a3b4ba6be9a09a1bd12
2014-10-07 13:48:08 +10:30
Jenkins 8200efaa48 Merge "Don't list entire module autoindex on docs index" 2014-10-02 01:50:13 +00:00
Thierry Carrez 2439e97c42 Open Kilo development
Bump pre-version to 2015.1 to formally open master branch to Kilo
development.

Change-Id: Ib634eb7acb64ff1d7be49852972295074b11557a
2014-09-30 10:34:26 +02:00
Joe Gordon bd7e62f796 Don't list entire module autoindex on docs index
Don't list entire api/autoindex under Developer Docs,  we already have a
model index link at the  bottom of the page, showing the entire
autoindex on the home page is makes the page overwhelming.

Change-Id: I25c5b50412881b55aa745ce3da2c22466e879fcf
2014-09-17 18:33:45 -07:00
Jenkins e4a3042bd9 Merge "Port image-size extension to work in v2.1/v3 framework" 2014-09-07 02:50:07 +00:00
Jenkins badb75ea6d Merge "Port v2 image_metadata extension to work in v2.1(v3) framework" 2014-09-07 02:47:27 +00:00
Ghanshyam 05925e4c20 Port used_limits & used_limits_for_admin into v2.1
The used_limits & used_limits_for_admin is removed from v3 API.
For now, we need porting it back. And also try to share unittests
between v2 and v2.1.

Partially implements blueprint v2-on-v3-api

Change-Id: I57199273dcaf20b0b6618dfb436a92f04b139f52
2014-09-03 14:18:21 +09:00
Jenkins cf04c13acb Merge "Port limits extension to work in v2.1/v3 framework" 2014-09-03 03:41:26 +00:00
Jenkins 347472be66 Merge "Port volumes extension to work in v2.1/v3 framework" 2014-09-03 03:35:29 +00:00
Jenkins b85a0b3e9a Merge "Port v2 images extension to work in v2.1(v3) framework" 2014-09-03 01:59:48 +00:00
Jenkins 0751e2225c Merge "Adds nova-idmapshift cli utility" 2014-09-02 20:39:21 +00:00
Chris Yeoh 115a78d452 Port volumes extension to work in v2.1/v3 framework
Ports v2 volumes extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical with the exception
that there is no support for XML. Also

- unittest code modified to share testing with both v2/v2.1
  where appropriate
- Adds expected error decorators for API methods

Note that there will be further code cleanup in the future
but the code currently is mostly as-is from the v2 codebase.

Partially implements blueprint v2-on-v3-api

Change-Id: If2a9dd1f5233812a1177b54ded6f0ae115c54e97
2014-09-02 09:28:06 +09:30
Chris Yeoh 98614a84fa Port limits extension to work in v2.1/v3 framework
Ports v2 limits extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical with the exception that
there is no support for rate limiting since no one uses that
seriously anyway.

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I072d364f4d2a92a02801862435f11417956d2dc0
2014-09-01 22:38:33 +08:00
Chris Yeoh aab2bac48c Port image-size extension to work in v2.1/v3 framework
Ports v2 image-size extension and adapts it to the v2.1/v3 API
framework. API behaviour is identical with the exception
that there is no support for XML. Also

- unittest code modified to share testing with both v2/v2.1
- Adds expected error decorators for API methods

Partially implements blueprint v2-on-v3-api

Change-Id: I44f3d35b3d888e2f4429ca0788d74b9b0cce9494
2014-09-01 22:27:31 +08:00