Currently, unit testcases of api emit FutureWarnings
from oslo.versionedobjects about invalid uuids as documented here[1].
This commit changes these tests to use valid uuids so
that when they are run these warnings are no longer emitted.
Made changes to project_id in fakes.py to use valid project_id
which removes warnings related to invalid uuids in testcases.
Also made changes to project_id in JSON headers to use valid
uuids in functional testcases same as that in unit testcases.
[1] http://docs.openstack.org/developer/oslo.versionedobjects/api/fields.html#oslo_versionedobjects.fields.UUIDField
Partial-Bug: #1557378
Change-Id: I5f69a2c3dc4d0279aed11750e6758b624debb64f
- fixed a broken link
- updated a couple of links from mitaka -> newton
- added some missing apostrophes
- added some custom gerrit review dashboards
Change-Id: I1cc5087e7073244b13eaf9e8044e79a0fbe4aa9d
Closes-Bug: #1568292
This does a live migration of compute node resource information from the
current location (in compute_nodes columns) to the new desired location
of records in the inventories table. It only does this if all control
services have been upgraded to a level that understands this.
Related to blueprint compute-node-inventory-newton
Change-Id: Ieda099d3f617713f09315b2b1e932a7c1d6f45c4
Cinder's volume migration API is, by default, an admin-only operation.
This includes the migrate_volume_completion API.
When Cinder is doing a volume migration, it calls Nova's swap-volume
API to detach the old volume that we're migrating from and attach
the volume that we're migrating to. Then Nova calls Cinder's
migrate_volume_completion API to signal Nova is done and Cinder
can finish the volume migration.
The problem is that swap-volume is not an admin-only API in Nova
per the default policy. So if a non-admin user tries to perform
a swap-volume operation, it will fail with a 403 when calling
Cinder's migrate_volume_completion API, since that requires an
admin user.
Also, because of 98739761f1 we can't
simply avoid calling migrate_volume_completion for non-migration
cases because that API handles the actual detach/attach for the old
and new volumes, swap-volume is broken without calling that.
So given swap-volume relies on an admin-only Cinder API, and is called
from an admin-only Cinder operation (volume migration), we should
just make it default to admin-only also.
Change-Id: Iac03258735f3d856a474ab96fe9b0a087e32906f
Closes-Bug: #1522705
Previously all testing of the PUT method assumed that a body existed,
which is implied by the HTTP spec, but not strictly stated. The tags
api-wg spec specifies an interface with tags that uses PUT with no
payload.
This makes our _do_put able to handle that case, and removes empty
templates when not needed.
Change-Id: I3d869d63affd08e321944c0082ee9865124d38e2
Added new API microversion which allows the following:
- add tag to the server
- replace set of server tags with new set of tags
- get information about server, including list of tags for server
- get just list of tags for server
- check if tag exists on a server
- remove specified tag from server
- remove all tags from server
- search servers by tags
DocImpact
APIImpact
Implements: blueprint tag-instances
Change-Id: I9573aa52aae9f49945d8806ca5e52ada29fb087a
There was recent discussion in some reviews about fixing
latent bugs in the legacy v2.0 API code. Since the
v2.0 API is deprecated and v2.1 is the default since Liberty,
we shouldn't need to fix latent low-priority bugs in v2.0
anymore.
However, we'll still fix critical bugs, and we shouldn't
knowingly introduce new regressions that would result
in a 500 response.
Change-Id: I9937d9226a99754dadcc48d599090296f5ae01f7
We nuke oslo-incubator in commit b1871e5759,
This is follow up to clean up documents about oslo-incubator.
Change-Id: I4a6b7342570118ae116e896f29ce0a223421793a
This disables the generation of the raw module api documentation in
our docs target. It is mostly not useful, as it builds a giant tree of
module documentation that are 98% boiler plate lists of methods with
no real content.
We leave the sphinx.ext.autodoc in the conf, which allows you to
specifically pull in modules for documentation when you want
to. doc/source/services.rst is an example of doing this in tree, which
still works after this change.
Change-Id: I4c10a8e45756cdcf612faca574e2fb3b7ffa2bdb
* Removing openSUSE 13.1 and adding openSUSE 42.1 (LEAP).
* Removing Factory as its called as Tumbleweed now.
Change-Id: Iea26ac4ea343b63bc07cdf9fef0659a2887fe584
Truely vmware driver can not attach cinder volume using chap
authentication over iscsi
Closes-Bug: #1557938
Change-Id: I05b1e81a3deffc855be34efff2d3e9dac8b63e82
LOG.warn is deprecated. It still used in a few places.
Updated to non-deprecated LOG.warning.
Change-Id: I42c7b6a172b64a3c1ac6e0703df48ac2ddf8390a
Partial-Bug:#1508442
Update the doc of notification according to this commit[1].
TrivialFix
[1]: https://review.openstack.org/#/c/249508/
Change-Id: If3920c9a71cf5de34028dda423dd923f9a9206f0
When we put validation into the project_id in urls we had to expand
the default set of allowed values to include 'openstack' and
'fake'. This cleans up all the instances of 'openstack' in the
functional tests, and api samples, and instead uses a constant string
which looks like a real project_id.
We need a stable project_id and not a sentinel otherwise the samples
will be arbitrarily changes on every update.
Change-Id: I1099fd43d2374abd1658b0917765d5375c4b8d1d
This reverts commit d411d60587.
The point of doc/*samples* is they are static files, not
dynamic. We shouldn't be doing substitution here, this
breaks all kinds of things, including the doc target.
Change-Id: Iaaf9fa0096ab62e6d3efbe018d8d4853a2ff8cda
Closes-Bug: #1553634
How to trigger crash dump depends on hypervisors. NMI is not the only way to
implement the feature. This patch modifies description regarding this feature.
Change-Id: I77d10551650776c06ee4b413f1b027abf6620e83
According to the Cinder devref:
https://github.com/openstack/cinder/blob/master/doc/source/devref/api_microversion_dev.rst)
you should be able to use the following pattern:
def index(self, req):
<common code>
req_version = req.api_version_request
if req_version.matches("3.1", "3.5"):
....stuff....
elif req_version.matches("3.6", "3.10"):
....other stuff....
elif req_version > api_version_request.APIVersionRequest("3.10"):
....more stuff.....
<common code>
However, the api_version_request.matches() function will not accept a
string, it requires an api_version_request object.
This changes the doc to implement an api_version_request object to use
this pattern.
Closes-Bug: #1550337
Change-Id: I14a943b21e9e98dd848c0c292ca1a1ae941cb98b
This emits a warning message when hooks are used to ensure that admins
understand that this facility is deprecated in Nova going forward. It
also removes the links to the meager documentation on hooks to ensure
no one finds these by accident and starts using them. Also add a
comment to the code file itself incase someone ends up in it from
other searches.
Change-Id: I31b1223a0dc3fdffe356a816b591fdd88a31483a
This is os-migrateLive API changes:
* 2.25 - Make block_migration to support 'auto' value, remove
disk_over_commit.
Partially implements: blueprint making-live-migration-api-friendly
APIImpact
DocImpact
Change-Id: Ibb0d50f0f7444028ef9d0c294aea41edf0024b31
For example, When aggregate zone is updated, time is not getting updated
in updated_at field.
So, modified the code such that time gets updated in updated_at field
whenever the aggregate metadata content gets modified.
Change-Id: Icb65313ba85562fadeddbc1890ca5d463e74d3c2
Closes-Bug: #1538014
This way we avoid having to change the test template every time we bump
the version, it will be taken from the module.
Change-Id: I699b737e0e234f0649f6d207a648c60d74d9701e
This change adds a DELETE call on the server-migrations object to cancel
a running live migration of a specific instance.
TO perform the cancellation the virtualization driver needs to support
it, in case that the feature is not supported we return an error.
We allow a cancellation of a migration only if the migration is
running at the moment of the request and if the migration type is equal
to 'live-migration'.
In this change we implement this feature for the libvirt driver.
When the cancellation of a live migration succeeded we rollback the live
migration and we set the state of the Migration object equals to
'cancelled'.
The implementation of this change is based on the work done by the
implementation of the feature called 'force live migration':
https://review.openstack.org/245921
DocImpact
ApiImpact
Implements blueprint: abort-live-migration
Change-Id: I1ff861e54997a069894b542bd764ac3ef1b3dbb2
This patch does two things:
1. Add two APIs /servers/migrations:index/show for server migrations.
Two new novaclient commands server-migration-list and
server-migration-show will also be added.
ref: I071198fa9ba0699383bdebf4fab54714a435e6c3
2. Add ref link for /os-migrations
The old top-level resource `/os-migrations` won't be extended anymore.
It is deprecated.
Adding migration_type for it, also add ref link to
/servers/{uuid}/migrations/{id} for it when the migration is an
in progress migration.
Partially implements blueprint live-migration-progress-report
Change-Id: Ia92ecbe3c99082e3a34adf4fd29041b1a95ef21e
Co-authored-by: ShaoHe Feng <shaohe.feng@intel.com>
current API microversion document mentioned no need to bump
version if we change from 500 error to 4xx error,
in this case, 503 (service unavailable) also can't be handled
by client side so it should be fine to change without bump.
This patch comes from I80a07222f44017448d1877d6b821eebe462d9fec
discussion.
Change-Id: I2500698b821797568e2564176e87938f2b0f9ae5
The feature triggering crash dump has already been supported by nova [1],
now we should complete the support matrix correspondingly.
[1]The change id is: Iaf63352139c466430d3304a87a66398133541fac
Change-Id: I769cab81ba72d48db259d737cbe5e69f7d530e73
This change adds manual knob to force ongoing live migration to
complete. It is implemented as a new server-migrations API.
DocImpact
ApiImpact
Implements: blueprint pause-vm-during-live-migration
Change-Id: I034b4041414a797f65ede52db2963107f2ef7456
Add a microversion change to the os-instance-actions API so that we
mutate the context to set 'read_deleted="yes"' when looking up the
instance.
Blueprint: os-instance-actions-read-deleted-instances
Change-Id: I607a28bbe06e20e17ee47a283e06b1d42b5c0e84
This change enables the attach and detach volume operations for
instances which are in shelve and shelved_offloaded state.
The code to manage the actual attach and detach is implemented by this
change: https://review.openstack.org/259528
New tempest tests are going to be written for testing the new feature.
APIImpact
DocImpact by this change we are allowing operations which were not
allowed before, we need to track this change in the documentation.
Partially implements blueprint: volume-ops-when-shelved
Change-Id: I43b67a50d998d43a6ff78c917093c513231b6ff2