Commit Graph

294 Commits

Author SHA1 Message Date
Mathieu Gagné bbe0f313bd Add ability to signal and perform online volume size change
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
2017-07-12 11:53:20 -04:00
Matt Riedemann d2d84eb102 api-ref: mark instance action events parameter as optional
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
2017-07-12 10:56:13 -04:00
Jenkins 0ffe7b2789 Merge "Fix quota class set APIs" 2017-07-12 05:56:35 +00:00
ghanshyam 92e0efeefd Fix quota class set APIs
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
2017-07-10 21:44:08 +00:00
Jenkins 56cd608d3a Merge "Add 'networks' quota in quota sample files" 2017-07-07 09:06:47 +00:00
Jenkins e2d0442b5e Merge "Add api-ref for os-quota-class-set APIs" 2017-07-06 06:55:39 +00:00
ghanshyam e332797e42 Add 'networks' quota in quota sample files
'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
2017-07-04 23:45:30 +00:00
ghanshyam b25b66e284 Add api-ref for os-quota-class-set APIs
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
2017-07-04 17:40:56 +03:00
ghanshyam d22fe39986 Fix 'project-id' 'user-id' as required in server group
'project_id' and 'user_id' are introduced as mandatory param in
microversion 2.13 but api-ref shows them as optional
- https://developer.openstack.org/api-ref/compute/?expanded=show-server-group-details-detail#show-server-group-details

api-ref should reflect the actual behavior.

Change-Id: Id7e734c65a97c82824c00ed054c13cb9fae2dd3c
Closes-Bug: #1702238
2017-07-04 15:03:18 +03:00
Artom Lifshitz 125c17465f API support for tagged device attachment
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
2017-06-30 09:05:34 +03:00
Takashi NATSUME d04ddb0a2b api-ref: Fix missing parameters in API Versions
Add 'updated' and 'media-types' explicitly
in parameter tables.

Change-Id: I3e9f3374d4183d7ef7d3cb55cc95a4499ab20d49
Closes-Bug: #1634668
2017-06-28 03:01:10 +00:00
Jenkins a43d1b17e2 Merge "Update api-ref to indicate swap param" 2017-06-22 17:28:23 +00:00
jichenjc 34f0259a5e Update api-ref to indicate swap param
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
2017-06-22 14:38:02 +00:00
Jenkins d59d762fa7 Merge "api-ref: fix hypervisor_hostname description for Ironic" 2017-06-20 18:51:16 +00:00
Jenkins 8a7a2b8f92 Merge "api-ref: cleanup PUT /os-hypervisors/statistics docs" 2017-06-20 00:35:25 +00:00
Jenkins bc4c91e7be Merge "Amend api-ref for multiple networks request" 2017-06-19 14:28:13 +00:00
Matt Riedemann b541f71d0f api-ref: fix hypervisor_hostname description for Ironic
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
2017-06-15 14:20:15 -04:00
Matt Riedemann 298565a762 api-ref: cleanup PUT /os-hypervisors/statistics docs
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
2017-06-15 00:32:47 +00:00
Kevin_Zheng ebb245edc2 Add missing query filter params for GET /os-services API
The GET /os-services API takes "host" and "binary" query filter
parameters:

https://github.com/openstack/nova/blob/3a5d592e607176f4159ff65b6df0e2b552156aaf/nova/api/openstack/compute/services.py#L54-L58

And novaclient exposes those filters:

https://docs.openstack.org/cli-reference/nova.html#nova-service-list

But they aren't documented in the API reference:

https://developer.openstack.org/api-ref/compute/?expanded=list-compute-services-detail#list-compute-services

Change-Id: I0ed35404d93475538326d3020754a6f97f25d08c
Closes-bug: #1697563
2017-06-13 08:19:31 +00:00
Sylvain Bauza 7d7cc94221 Amend api-ref for multiple networks request
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
2017-06-09 11:48:24 -04:00
Matt Riedemann 4404c4444c api-ref: fix type for hypervisor_marker
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
2017-06-07 20:18:24 -04:00
Jenkins 80a6f44e12 Merge "Update server create networks API reference description for tags" 2017-06-06 18:06:37 +00:00
Sergey Nikitin a944838993 Standardization of VM diagnostics info API.
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
2017-06-05 07:45:51 +00:00
Chris Friesen 90636e0f33 show flavor info in server details
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
2017-06-02 12:09:24 -04:00
Matt Riedemann 60b55ad1d9 Update server create networks API reference description for tags
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
2017-06-01 16:30:48 -04:00
Jenkins ff0ec7411b Merge "fix typo" 2017-05-24 18:51:02 +00:00
fuzk 24b1660f07 fix typo
Change-Id: Ib6c3571a91b2c3a2e167f4d39b993984fa246a72
2017-05-23 08:32:38 +08:00
Jenkins ffd6a42c00 Merge "api-ref: Example verification for servers-actions.inc" 2017-05-22 13:56:51 +00:00
Takashi NATSUME cbf83a01fb api-ref: Example verification for servers-actions.inc
* 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
2017-05-22 00:19:19 +00:00
James Penick 53d27dea0d fix typo in parameter type definition
project_id_instance_action "required" was "ture" instead of "true"

Change-Id: I38dde136bf44c83d9224fc32f38d4ab423d5fb36
2017-05-11 15:42:56 +00:00
Jenkins c94f34a3d5 Merge "Fix units for description of "flavor_swap" parameter" 2017-05-07 21:01:30 +00:00
Jenkins d1f620b1eb Merge "api-ref: Fix parameters in servers-action-console-output" 2017-05-03 21:11:06 +00:00
Chris Friesen 5cf09afb2c Fix units for description of "flavor_swap" parameter
The swap size as specified in a flavor is in units of MiB, not GiB.

Change-Id: I1215630e4dacf0d96e3d028763bdb4380d1f7999
2017-05-02 11:56:14 -06:00
Takashi NATSUME 7707723e7b api-ref: Fix parameters in servers-action-console-output
Change-Id: I0604db813f4e8830110006c6636c7b9094ad75fb
Implements: blueprint api-ref-in-rst-pike
2017-05-01 04:27:13 +00:00
Takashi NATSUME e5364a1fd1 api-ref: Use 'note' directive
Change-Id: I07326c016ef1e4b9769975db263a736a07ca386d
Implements: blueprint api-ref-in-rst-pike
2017-05-01 04:24:36 +00:00
Jenkins eeb1bfcec8 Merge "2.45: Remove Location header from createImage and createBackup responses" 2017-04-25 22:28:38 +00:00
Jenkins b302ec75da Merge "api-ref: Fix a parameter description in servers.inc" 2017-04-25 21:15:41 +00:00
Matt Riedemann 66b0cf3337 2.45: Remove Location header from createImage and createBackup responses
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
2017-04-25 15:52:14 -04:00
Takashi NATSUME 5be70c257a api-ref: Fix a parameter description in servers.inc
Fix the description for the 'flavorRef' parameter
in 'Create Server' API.

Change-Id: I6b0eb733961d0b8d28aea9abf2c21734fd07cb42
Implements: blueprint api-ref-in-rst-pike
Closes-Bug: #1685977
2017-04-25 11:59:16 +09:00
Takashi NATSUME e695f76a72 api-ref: Parameter verification for servers-actions (4/4)
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
2017-04-25 02:40:58 +00:00
Takashi NATSUME 08a113fdaa api-ref: Parameter verification for servers-actions (3/4)
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
2017-04-25 11:37:28 +09:00
Takashi NATSUME f38a234f9b api-ref: Parameter verification for servers-actions (2/4)
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
2017-04-24 00:51:07 +00:00
Takashi NATSUME a369e30e08 api-ref: Fix response code and parameters in evacuate
* 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
2017-04-18 11:52:47 +09:00
Takashi NATSUME 962dae61dc api-ref: Parameter verification for servers-actions (1/4)
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
2017-04-17 01:20:57 +00:00
Jenkins 5a556a720f Merge "api-ref: networks is mandatory in Create Server" 2017-04-12 15:31:15 +00:00
Takashi NATSUME 0cbf7bb038 api-ref: Fix parameters in os-hosts.inc
* 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
2017-04-12 00:02:01 +00:00
Jenkins e78ff51bb4 Merge "api-ref: fix os-extended-volumes:volumes_attached in servers responses" 2017-04-11 12:04:39 +00:00
Jenkins 2669a89083 Merge "Add empty flavor object info in server api-ref" 2017-04-07 15:36:37 +00:00
Matt Riedemann 28831f3b3d api-ref: fix os-extended-volumes:volumes_attached in servers responses
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
2017-04-07 13:40:08 +00:00
ghanshyam af1734b0dd Add empty flavor object info in server api-ref
In case flavor information is not present in sysmeta then
GET/PUT server response can have flavor as empty object.

ref- http://git.openstack.org/cgit/openstack/nova/tree/nova/api/openstack/compute/views/servers.py#n252

Having that mentioned in api-ref will be nice to understand it clearly.
Closes-Bug: #1677999

Change-Id: I350dc33df0cb03eb86df1f142e58ae34b02a1334
2017-04-05 02:52:41 +00:00