Allow Cinder to use external events to signal a volume extension.
1) Nova will then call os-brick to perform the volume extension
so the host can detect its new size.
2) Compute driver will resize the device in QEMU so instance can detect
the new disk size without rebooting.
This change:
* Adds the 'volume-extended' external event.
The event tag needs to be the extended volume id.
* Bumps the latest microversion to 2.51.
* Exposes non-traceback instance action event details for
non-admins on the microversion. This is needed for the
non-admin API user that initiated the volume extend
operation to be able to tell when the nova-compute side
is complete.
Co-Authored-By: Matt Riedemann <mriedem.os@gmail.com>
Blueprint: nova-support-attached-volume-extend
Change-Id: If10cffd0dc4c9879f6754ce39bee5fae1d04f474
For "GET /servers/{server_id}/os-instance-actions/{request_id}",
the "events" parameter in the response body is only included by
default policy for administrators. You can get details if you're
an admin or own the server, but the events are only returned for
admins by default.
This change does two things:
1. Fixes the description of the default policy since admin or
owner can get action details for a particular request.
2. Fixes the "events" parameter description by pointing out it
is optional and only returned by default for admins.
Change-Id: I6410a0aac223133d8d07fd65c268553ebb9e7e67
Closes-Bug: #1702573
v2.1 API which does not return the 'server_groups' and
'server_group_members' quotas in GET & PUT os-quota-class-sets
API response. v2 API used to return those keys in API response.
Also filter out the network related quotas from os-quota-class-sets
APIs
Fixing this with microversion.
Closes-Bug: #1701211
Closes-Bug: #1693168
implement-blueprint fix-quota-classes-api
Change-Id: I66aeb7a92fb5ee906fead78030bd84a2e97916e8
'networks' quota can be available based on config value.
api-ref should show that for quota-set APIs and also sample files
so that it can be tested somewhere.
Also adding it to quota class APIs sample files also.
Closes-Bug: #1702201
Change-Id: I84d562a8ca10826dea4675d74669b5de64ff0ed0
This commit adds the api doc for os-quota-class-set GET & PUT
APIs.
- Also mentioned about the recommendation over usage of this API.
- Added warning for current bug in v2.1 API #1693168
This is also needed by BP
- https://blueprints.launchpad.net/nova/+spec/fix-quota-classes-api
Change-Id: Ib765e2d1dec7b236a2009148e0b1067a46326ce9
Related-Bug: #1693168
Closes-Bug: #1602400
This patch adds microversion 2.49, which supports tagged attachment
of network interfaces and block devices.
Change-Id: I8d3bbe7e9a21d2694d10ee89628deb333e6b0487
Implements: blueprint virt-device-tagged-attach-detach
swap output is actully an empty string ('') now when query
flavor if the swap is 0, so we need indicate that before we
sort out any conclusion (whether we need fix it or not).
Change-Id: I5a5397479dd894f90dad9a1de509a50f6b3b5477
Related-Bug: 1436683
The hypervisor_hostname shown in the os-hypervisors and servers
APIs is actually the Ironic node uuid, not a name. This comes
from the Ironic virt driver _node_resource method which eventually
gets used in the resource tracker to set the ComputeNode
hypervisor_hostname field, which is used to also set the instance.node
value in the ResourceTracker later during the instance claim.
The confusion probably lies in the fact that the variable passed
around the code is also referred to as "nodename", but in the case
of Ironic it's not actually a hostname, it's a uuid.
Change-Id: Ic639abe9989b282bad71581bb861314619c0f48b
Closes-Bug: #1698000
There are two changes here:
1. It is important to state that this API only returns a summary
of compute node/service statistics for *enabled* nova-compute
services. The DB API query filters out disabled compute services.
2. Fixes a typo in the description of the hypervisor_statistics
parameter.
Change-Id: Iee28147b701ab42eb07d344cd2f4cb157b74b2f2
Since there are chances that the guest OS won't honor the order of networks
and assign NIC#1 to the second requested network, we say to our users to
rather use device tagging and metadata querying.
Amending the api-ref to mention explicitly that Nova doesn't support NIC
ordering although there are codepaths for that which try that.
Change-Id: Id134f7745111ccd12695bb041fcce182e833126a
Related-Bug: #1696664
The marker for paging over hypervisors (compute nodes) is the
integer id field (compute_nodes.id column). This corrects the
type in the API reference parameters.
Change-Id: If925929171a2d7a1fbd0a8926e550512915c24a3
Closes-Bug: #1696554
Before this patch, VM diagnostics response was just a
'blob' of data returned by each hypervisor. New API
version makes diagnostics response standardized.
New response has a set of fields which each hypervisor
will try to fill. If hypervisor unable to provide a
specific field then this field will be reported as 'None'.
Tempest tests: I7757c5beeea3d3b0bc15a51cafc5ea2ada65e76c
DocImpact: admin guide docs should be updated to mention
standardized version of the diagnostics response
blueprint: restore-vm-diagnostics
Change-Id: If0b1493cc5c1c7f0d9896dd68342ad4dea4f7da2
Add a new microversion to change the flavor field in the server
details to display a subset of the flavor information instead of
just a link to the original flavor.
This is more reliable since it shows the actual instance size, while
the flavor may have been deleted/recreated in the meantime or the
flavor extra-specs may have been modified.
Implements: blueprint instance-flavor-api
Change-Id: If646149efb7eec8c90bf7d07c39ff4c495349941
Artom ruined my day by pointing out that with microversion 2.37
and specifying the enum "auto" for the networks entry in a server
create request, you can't also apply a device tag to the port
that's auto-created for the server.
This change updates the networks API reference parameter description
to note that wrinkle since it's not obvious otherwise without looking
at the API schema.
Change-Id: I1e39aa5a41befb24bb947be060f43f0a96134139
* Example for the rebuild action
The functional test is modified and
the example is replaced with v2.26 examples.
* Example for the rescue action
The example in API reference is replaced with
the example with 'rescue_imgae_ref'.
Parameters for the rebuild action and the rescue action
are also fixed.
The patch completes the parameter verification and
the example verification of servers-actions.inc.
Change-Id: Iaf8808b13d1fdfead50da4cd447b3893578f76dd
Implements: blueprint api-ref-in-rst-pike
This changes the response for the createImage and createBackup
server action APIs to no longer return a Location header and instead
returns a json dict body with the snapshot image ID. This is done
in a new microversion.
Implements blueprint remove-create-image-location-header-response
Closes-Bug: #1679285
Change-Id: Idc899ee76b8265b1c9e0871b6c7c277424cdd442
Fix the description for the 'flavorRef' parameter
in 'Create Server' API.
Change-Id: I6b0eb733961d0b8d28aea9abf2c21734fd07cb42
Implements: blueprint api-ref-in-rst-pike
Closes-Bug: #1685977
This patch fixes the parameters of the following actions.
* os-start
* os-stop
* suspend
* unlock
* unpause
* unrescue
A subsequent patch will fix the patameters and the examples
of the 'rebuild' and 'rescue' actions in servers-actions.inc.
Change-Id: I8f699c75c5cbfd9046258f593c1437b87dc9c3fe
Implements: blueprint api-ref-in-rst-pike
This patch fixes the parameters of the following actions.
* removeSecurityGroup
* resize
* resume
* revertResize
Subsequent patches will fix the patameters of the other actions
in servers-actions.inc.
Change-Id: Ie470138ac53404369f4fc717bf979b94060c5652
Implements: blueprint api-ref-in-rst-pike
This patch fixes the parameters of the following actions.
* lock
* pause
* reboot
* removeFloatingIp
Subsequent patches will fix the patameters of the other actions
in servers-actions.inc.
Change-Id: I33210b5d8cfb359e4cc9ef37fe74b71d30a9acc5
Implements: blueprint api-ref-in-rst-pike
* Unnecessary note is removed.
* The 'on_shared_storage' parameter
The max version is 2.13.
Improve the description.
* The 'evacuate' parameter
Fix the type and the description.
* The 'adminPass' parameter
Fix the description and remove max version.
* The 'host' parameter
Improve the description.
* response code
Remove unncessary response codes.
Add a missing response code.
Change-Id: Ic857333ac25bee26e3ec22106b1b8fda2389b967
Implements: blueprint api-ref-in-rst-pike
Closes-Bug: #1683264
This patch fixes the parameters of the following actions.
* addSecurityGroup
* changePassword
* confirmResize
* createImage
Subsequent patches will fix the patameters of the other actions
in servers-actions.inc.
Change-Id: Ifaa1ed25c034e649ea4012f4998c571c38d404a1
Implements: blueprint api-ref-in-rst-pike
* Show Host Details
- The parameters in 'resource' object are prefixed
with 'resource.' instead of 'host.'.
- The types of 'cpu', 'memory_mb' and 'disk_gb' are
changed to 'integer'.
- The descriptions of 'cpu', 'memory_mb' and 'disk_gb'
are changed (clearer).
* Update Host status
- The 'status' and 'maintenance_mode' in request
parameters are changed to 'body' parameters
instead of 'path' parameters.
- The 'status' and 'maintenance_mode' in request
parameters are changed to either 'enable' or
'disable'.
- The 'status' and 'maintenance_mode' in response
parameters are changed to 'optional'.
Change-Id: Ic6bffca8b1dfaa9284a72145f3e1f894acb306e3
Closes-Bug: #1653884
There are two main changes here:
1. The contents of the os-extended-volumes:volumes_attached list are
described, which are the id and delete_on_termination keys, the latter
being introduced in the GET /servers response in 2.3.
2. The os-extended-volumes:volumes_attached parameters are removed from
the PUT /servers and POST /servers responses, since we don't actually
include those in the response for create and update operations, only
GET /servers/{server_id} and GET /servers/detail operations.
Note: create server is fixed in a follow up patch.
Change-Id: Ic92055e3095d220a3a11e35628f04e9e67c6b71a
Closes-Bug: #1675559