1009 Commits

Author SHA1 Message Date
Matt Riedemann
2d91a8463f docs: update SUSPENDED server status wrt supported drivers
Two things here:

1. The API guide was missing the hyper-v driver which supports
   the suspend operation. Rather than hard-code a list of supported
   drivers in the doc, this change just links to the entry in the
   feature support matrix.

2. The supported hypervisors mention in the API reference is removed
   because the end user using the API should not need to know or care
   what backend hypervisor on which their server is running. They can
   either suspend or not, but we don't need to mention the supporting
   drivers for that in the API reference.

Change-Id: Ib76779a8e34b2c68b0f4af190f71576180360d0f
Related-Bug: #1815403
2019-11-14 10:25:06 -05:00
Zuul
bd0eab8ff5 Merge ""SUSPENDED" description changed in server_concepts guide and API REF" 2019-11-14 03:08:11 +00:00
Matt Riedemann
6ee0da7e5b api-ref: mark device response param as optional for list/show vol attachments
The 'device' response parameter is not included in
GET /servers/{server_id}/os-volume_attachments or
GET /servers/{server_id}/os-volume_attachments/{volume_id}
when the BDM doesn't have a device_name set, which can be the
case with a volume attached to a shelved offloaded server.
Also, see the logic in _translate_attachment_detail_view
and _translate_attachment_summary_view. This simply marks
the response parameter as optional in those APIs. Since
the parameter is optional, it is sorted to after the required
parameters but before the parameters added in new microversions.

Change-Id: Ifda2f7983f349d51d97e5621cac6c5ad9cb0295f
Closes-Bug: #1818345
2019-11-13 18:44:47 -05:00
Zuul
9fcb0d5def Merge "Add support matrix for Delete (Abort) on-going live migration" 2019-11-13 23:43:52 +00:00
Sharat Sharma
3badb674f6 "SUSPENDED" description changed in server_concepts guide and API REF
The description of "SUSPENDED" server status was misguiding. Rewording
it to make it more accurate.

Change-Id: Ie93b3b38c2000f7e9caa3ca89dea4ec04ed15067
Closes-Bug: #1815403
2019-11-13 17:11:27 +00:00
Matt Riedemann
aa0239f44d api-ref: re-work migrate action post-conditions
This is a follow up to [1] and borrows the same wording
from the resize action post-conditions except uses
"migrate(d)" instead of "resize(d)" where appropriate.

[1] I77830dfb738cd78c830dc3ce7ea88216c1eac7ef

Change-Id: Id24cb48b1b70848d2ce7020d114a843c509ab81c
2019-11-13 10:52:03 -05:00
Kevin_Zheng
70e5c214f0 Add support matrix for Delete (Abort) on-going live migration
The info of Delete (Abort) on-going live migration is missing
in support matrix, it could be useful for users to consider
using this feature.

This patch adds it.

Change-Id: I2f917627fa451d20b1fd1ff35025481a4e525084
Closes-Bug: #1808902
2019-10-30 11:33:07 -04:00
Matt Riedemann
e416b19ba1 api-ref: re-work resize action post-conditions
This change does a few things:

1. Moves the post-condition paragraph into an
   "Asynchronous Postconditions" section like other
   API references.

2. Drops the "RESIZED" VM status wording since what
   that probably meant was the server OS-EXT-STS:vm_state
   value would be "resized" but what was in the reference
   was (a) wrong and (b) redundant with the VERIFY_RESIZE
   status.

3. Re-words and links the resize_confirm_window config
   option wording since saying "if you set" a config option
   in the API reference does not really make sense since
   "you" (the non-admin cloud user) does not have control
   over how the cloud is configured.

Change-Id: I77830dfb738cd78c830dc3ce7ea88216c1eac7ef
2019-10-29 12:56:59 -04:00
Matt Riedemann
d3e38143a7 Add known limitation about resize not resizing ephemeral disks
It's a long known issue that resize does not resize ephemeral
disks attached to the server yet we continue to get bugs about
it and there is no one working on fixing it. As such this change
adds a note to the API reference for the resize server action API
mentioning the known limitation.

Change-Id: I31ca3627f2d3ef5a8db5eecf3759cd304b059963
Related-Bug: #1558880
2019-10-29 12:50:13 -04:00
Dan Smith
3391298706 Add image caching API for aggregates
This adds a new microversion and support for requesting image pre-caching
on an aggregate.

Related to blueprint image-precache-support

Change-Id: I4ab96095106b38737ed355fcad07e758f8b5a9b0
2019-10-15 21:22:31 -04:00
zhangbailin
ac165112b7 Filter migrations by user_id/project_id
In microversion 2.80, the ``GET /os-migrations`` API will have
optional ``user_id`` and ``project_id`` query parameters for
filtering migrations by user and/or project:

* GET /os-migrations?user_id=ef9d34b4-45d0-4530-871b-3fb535988394
* GET /os-migrations?project_id=011ee9f4-8f16-4c38-8633-a254d420fd54
* GET /os-migrations?user_id=ef9d34b4-45d0-4530-871b-3fb535988394&project_id=011ee9f4-8f16-4c38-8633-a254d420fd54

And expose the ``user_id`` and ``project_id`` fields in the following APIs:

* GET /os-migrations
* GET /servers/{server_id}/migrations
* GET /servers/{server_id}/migrations/{migration_id}

Co-Authored-By: Qiu Fossen <qiujunting>
Part of blueprint add-user-id-field-to-the-migrations-table
Change-Id: I7313d6cde1a5e1dc7dd6f3c0dff9f30bbf4bee2c
2019-10-14 11:35:11 -07:00
Takashi NATSUME
a7c3108bf7 api-ref: Fix security groups parameters
The security groups parameters are optional
in the response of the following APIs.

- GET /servers/detail
- GET /servers/{server_id}
- PUT /servers/{server_id}
- POST /servers/{server_id}/action (rebuild)

So fix them.

Change-Id: Icc2315fd8b8c085de9d560de6ddf4c05aaaf6acb
Closes-Bug: #1846656
2019-10-07 10:25:02 +09:00
Matt Riedemann
59f4dd40f8 api-ref: fix server topology "host_numa_node" field param name
The actual parameter in the response of the API is "host_node"
without "numa" in it so this fixes the docs to match the code
and sample.

Change-Id: Ie562d47e0fa7414bcdccf407b79e71e1aae8d708
Closes-Bug: #1843098
2019-09-06 17:31:42 -04:00
zhangbailin
e5b47543cf Add delete_on_termination to volume-attach API
Add the 'delete_on_termination' field to the volume attach API to support
configuring whether to delete the data volume when the instance is destroyed.

To avoid upgrade impact issues with older computes, the
'delete_on_termination' field is set in the API rather than when the BDM
is created in the compute service.

Implements: blueprint support-delete-on-termination-in-server-attach-volume
Change-Id: I55731b1822a4e32909665a2872d80895cb5b12f7
2019-09-05 20:54:56 +08:00
Yongli He
3dcb404b1f Add server sub-resource topology API
Add a new server topology API to show server NUMA information:
  - GET /servers/{server_id}/topology

Add new policy to control the default behavior:
  - compute:server:topology:index
  - compute:server:topology:host:index

Change-Id: Ie647ef96597195b0ef00f77cece16c2bef8a78d4
Implements: blueprint show-server-numa-topology
Signed-off-by: Yongli He <yongli.he@intel.com>
2019-08-30 10:04:56 +08:00
zhangbailin
27b6c18c66 Specify availability_zone to unshelve
This adds support, in a new microversion, for specifying an availability
zone to the unshelve server action when the server is shelved offloaded.

Note that the functional test changes are due to those tests using the
"latest" microversion where an empty dict is not allowed for unshelve
with 2.77 so the value is changed from an empty dict to None.

Implements: blueprint support-specifying-az-when-restore-shelved-server
Closes-Bug: #1723880

Change-Id: I4b13483eef42bed91d69eabf1f30762d6866f957
2019-08-27 12:57:10 -04:00
Ghanshyam Mann
f7e672d302 Update api-ref for 2.75 to add config_drive in server update response
In 2.75, we missed to add the config_drive field in api-ref for
update server response
- I9d257a003d315b84b937dcef91f3cb41f3e24b53.

This commit updates the api-ref.

Change-Id: I46ab0b8650bf50a5384bb56027cdf0dc2a9bb2fe
Partial-Implements: blueprint api-consistency-cleanup
2019-08-20 12:58:36 +00:00
Matt Riedemann
ad75beee11 api-ref: add config_drive to 2.75 rebuild response parameters
Change I9d257a003d315b84b937dcef91f3cb41f3e24b53 and the 2.75
microversion returns the config_drive parameter in the rebuild
response and it's in the 2.75 rebuild response sample but was
missing from the response parameters table.

Change-Id: I89eca8638bc0d64b7f320f4ec5c49375bfebdb56
2019-08-19 15:01:35 -04:00
Zuul
35485eacfb Merge "API microversion 2.76: Add 'power-update' external event" 2019-08-15 23:39:50 +00:00
Surya Seetharaman
62f6a0a1bc API microversion 2.76: Add 'power-update' external event
This patch adds a new external event called "power-update"
through which ironic will convey all (power_off and power_on)
power state changes (running -> shutdown or shutdown -> running
will be the only ones handled by nova and the rest will be ignored)
on a physical instance to nova. The database will be updated
accordingly to reflect the real vm_state and power_state of the
instance. This way nova will not be able to enforce
an incorrect power state on the physical instance during
the periodic "sync_power_states" task.

Implements blueprint nova-support-instance-power-update
Story: 2004969
Task: 29423

Change-Id: I2b292050cc3ce5ef625659f5a1fe56bb76072496
2019-08-15 13:19:44 -04:00
Takashi NATSUME
abfb28291a api-ref: Fix collapse of 'host_status' description
Fix collapse of 'host_status' description in the follwoing APIs
in the compute API reference.

- PUT /servers/{server_id}
- POST /servers/{server_id}/action (rebuild)

Change-Id: I003f9a81ac6f7e0ec13a24db3fda1b7ff6612bc5
Closes-Bug: #1840094
2019-08-14 10:46:26 +09:00
Ghanshyam Mann
b26bc7fd7a Multiple API cleanup changes
This microversion implements below API cleanups:

1. 400 for unknown param for query param and for request body.

2. Making server representation always consistent among all APIs
   returning the complete server representation.

3. Change the default return value of ``swap`` field from the empty string
   to 0 (integer) in flavor APIs.

4. Return ``servers`` field always in the response of GET
   hypervisors API even there are no servers on hypervisor

Details: https://specs.openstack.org/openstack/nova-specs/specs/train/approved/api-consistency-cleanup.html

Partial-Implements: blueprint api-consistency-cleanup

Change-Id: I9d257a003d315b84b937dcef91f3cb41f3e24b53
2019-08-12 08:52:38 -05:00
Zuul
4f26ab0657 Merge "Retrun 400 if invalid query parameters are specified" 2019-08-09 23:50:19 +00:00
Matt Riedemann
ebd68b3d1e api-ref: document valid GET /os-migrations?migration_type values
There are only four valid values for the migration_type filter
when listing migrations so let's document them for the request
parameter. Note that the API jsonschema validation does not
restrict the values since the filter parameter pre-dated jsonschema
validation for query parameters. Specifying an invalid value would
just result in no results from the DB query.

Change-Id: I7fee254edefd524633af62d80cb47009b1cf010b
2019-08-06 18:40:48 -04:00
Takashi NATSUME
ae7ebdf45e Retrun 400 if invalid query parameters are specified
The following APIs return 500 error currently
if an invalid sort key or an invalid sort direction
query parameter is specified.

- GET /flavors
- GET /flavors/detail

Make the APIs return 400 error in that case.

Change-Id: I1d6d2c1f734b28dbea5c67cf88717149dd4911d7
Closes-Bug: #1835925
2019-08-04 23:59:51 +00:00
Zuul
d358df32f7 Merge "api-ref: touch up the os-services docs" 2019-07-25 19:25:27 +00:00
Matt Riedemann
af2e5a5755 api-ref: touch up the os-services docs
Make it clear that the first GET /os-services response sample
is for 2.11 and make the version suffix format for the 2.69
example match the other response examples, i.e. "(v2.x)".

Also mention that PUT /os-services/{service_id} only allows
nova-compute services. Before Pike it was possible to update
non-nova-compute services though it didn't really make sense.

Change-Id: I585582710884a53d91f4453011d3407a94efe1e3
2019-07-25 11:48:53 -04:00
Zuul
bca4fdec9a Merge "Correct project/user id descriptions for os-instance-actions" 2019-07-25 08:58:05 +00:00
Zuul
ab34c941be Merge "Remove deprecated Core/Ram/DiskFilter" 2019-07-23 23:36:06 +00:00
Stephen Finucane
78645e61c6 Remove deprecated Core/Ram/DiskFilter
These were deprecated during Stein [1] and can now be removed, lest they
cause hassle with the PCPU work. As noted in [1], the aggregate
equivalents of same are left untouched for now.

[1] https://review.opendev.org/#/c/596502/

Change-Id: I8a0d332877fbb9794700081e7954f2501b7e7c09
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-07-23 07:49:41 -07:00
qiufossen
6b3aa31458 Correct project/user id descriptions for os-instance-actions
The 'user_id' and 'project_id' parameter descriptions for server actions
imply that they are the value of the user/project that owns the server,
but that is incorrect - they are the project/user id of whoever made the
request/initiated the action.

The existing project_id_instance_action parameter variable, which is only
used by the os-cloudpipe reference, is renamed to avoid confusion with
instance actions.

Co-Authored-By: Brin Zhang <zhangbailin@inspur.com>

Closes-Bug: #1835063
Change-Id: I1c05d59ebf1fda6319df5ee305c2b8a6a9562242
2019-07-22 15:23:16 -04:00
Andreas Jaeger
dbe6321537 Update api-ref location
The api documentation is now published on docs.openstack.org instead
of developer.openstack.org. Update all links that are changed to the
new location.

Note that Neutron publishes to api-ref/network, not networking anymore.

Note that redirects will be set up as well but let's point now to the
new location.

For details, see:
http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007828.html

Change-Id: Id2cf3aa252df6db46575b5988e4937ecfc6792bb
2019-07-22 19:17:28 +02:00
zhangyangyang
d29d1d1a9e Bump the openstackdocstheme extension to 1.20
Some options are now automatically configured by the version 1.20:
- project
- html_last_updated_fmt
- latex_engine
- latex_elements
- version
- release.

Change-Id: I3a5c7e115d0c4f52b015d0d55eb09c9836cd2fe7
2019-07-19 18:30:16 +08:00
Zuul
47a9829058 Merge "Remove needs:* todo from deprecated APIs api-ref" 2019-07-13 00:34:10 +00:00
zhu.boxiang
564290ab14 Add host and hypervisor_hostname flag to create server
Add a new microversion that adds two new params to create
server named 'host' and 'hypervisor_hostname'.

Part of Blueprint: add-host-and-hypervisor-hostname-flag-to-create-server

Change-Id: I3afea20edaf738da253ede44b4a07414ededafd6
2019-07-09 22:55:16 +08:00
Takashi NATSUME
e75598be31 api-ref: Fix a broken link
The link to the API extension document has been broken.
The API extension document does not exist currently,
so just remove the link.

Change-Id: I8920a00004528f5fa30d1b5a2f53ffa5f65f2ea8
2019-07-05 13:24:18 +09:00
Ghanshyam Mann
a2852d98ec Remove needs:* todo from deprecated APIs api-ref
There are few needs:body/example/parameter_verification
pending on deprecated APIs. It is not worth to spend time on
completing those.

Removing those todo part and adding note about not updating
them.

Change-Id: I1f2bc4e6d8bdb2b41c4b22c18573a4fc75bea38e
2019-06-28 19:09:31 +00:00
Stephen Finucane
81e4d13c32 conf: Rename 'configuration drive' to 'config drive'
Keeps dansmith happy.

Change-Id: Ifd8537692de98ee02ff7333812d2877273a0a388
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-06-20 18:23:14 +01:00
Zuul
6f6f99d13d Merge "Block swap volume on volumes with >1 rw attachment" 2019-05-30 17:47:10 +00:00
Yikun Jiang
9614354535 Fix the server group "policy" field type in api-ref
The server group policy field added in v2.64 is a string but
the API reference says the parameter is an object.

This patch changes it from "object" to "string".

Change-Id: I1b4efe8afb302d94c810389e124c5370cbe72ddf
Closes-bug: #1830800
2019-05-29 09:16:51 +08:00
Zuul
a7058b1988 Merge "Update description of valid whitelist for non-admin user" 2019-05-23 07:30:53 +00:00
翟小君
31007102b0 Update description of valid whitelist for non-admin user
Non-admin user can filter instance by instance-uuid and other
filter keys with being configured using the "os_compute_api:
servers:allow_all_filters" policy rule. The policy rule was
added with Ia5504da9a00bad689766aeda20255e10b7629f63.

Closes-Bug:1819425

Change-Id: I74146b4370b6017cb199466258165fc6df080082
2019-05-22 20:56:41 +00:00
Matt Riedemann
5a1d159d14 Block swap volume on volumes with >1 rw attachment
If we're swapping from a multiattach volume that has more than one
read/write attachment, another server on the secondary attachment could
be writing to the volume which is not getting copied into the volume to
which we're swapping, so we could have data loss during the swap.

This change does volume read/write attachment counting for the volume
we're swapping from and if there is more than one read/write attachment
on the volume, the swap volume operation fails with a 400 BadRequest
error.

Depends-On: https://review.openstack.org/573025/
Closes-Bug: #1775418
Change-Id: Icd7fcb87a09c35a13e4e14235feb30a289d22778
2019-05-22 09:09:00 +00:00
Matt Riedemann
c07746af90 api-ref: mention default project filtering when listing servers
This removes the "all" wording from the List Servers API
reference docs since it could be confused with actually returning
all servers across all tenants (the all_tenants filters). It also
mentions that by default only servers associated with the project
making the request are returned, i.e. the project associated with
the auth token on the request. This is probably fairly obvious
and automatic to anyone that's worked with openstack for a long
time but might not be for a new user and is not really documented
anywhere in the API reference or API guide that I could find.

Change-Id: Ie28164e4813a7a48addcd80d81c72c978ac9f395
2019-05-17 15:30:13 -04:00
Zuul
780f737547 Merge "api-ref: 'os-hypervisors' doesn't reflect overcommit ratio" 2019-05-13 17:35:20 +00:00
Zuul
26b1761f3c Merge "api-ref: fix mention of all_tenants filter for non-admins" 2019-05-13 12:47:57 +00:00
Surya Seetharaman
c541ace518 Microversion 2.73: Support adding the reason behind a server lock
This patch adds a new parameter ``locked_reason`` to
``POST /servers/{server_id}/action`` request where the
action is lock. It enables the user to specify a reason when locking
a server.

The locked_reason will be exposed through ``GET servers/{server_id}``,
``GET /servers/detail``, ``POST /servers/{server_id}/action``  where
the action is rebuild and ``PUT servers/{server_id}`` requests' responses.

The InstanceActionNotification will emit the locked_reason
along with the other instance details. This patch hence changes the
payload object to include the "locked_reason" field.

Note that "locked" will be allowed as a valid filtering/sorting parameter
for ``GET /servers/detail`` and ``GET /servers`` from this new microversion.

Implements blueprint add-locked-reason

Change-Id: I46edd595e7417c584106487123774a73c6dbe65e
2019-05-11 21:48:27 +00:00
Matt Riedemann
57646dfe77 api-ref: fix mention of all_tenants filter for non-admins
The API reference for listing servers says that the all_tenants
filter parameter is available for non-admins which is likely
a mistake because of it being in the _get_server_search_options
method, but all_tenants is admin-only by default policy because
of the os_compute_api:servers:index:get_all_tenants and
os_compute_api:servers:detail:get_all_tenants policy rules.

This change fixes the API reference to remove all_tenants from
the list of non-admin filter parameters and also adds a note to
the _get_server_search_options method to avoid future confusion.

Change-Id: I0e937afbdf8e19d2efd626047913d4c8a9b88b76
Closes-Bug: #1828042
2019-05-07 10:47:04 -04:00
Stephen Finucane
fb14f24cc3 Remove '/os-cells' REST APIs
Drop support for the os-cells REST APIs, which are part of the cells v1
feature which has been deprecated since Pike.

This API now returns a 410 response for all routes.

Unit tests are removed and the functional API sample tests are just
asserting the 410 response now. The latter are also expanded to cover
APIs that weren't previously tested.

The API sample docs are left intact since the API reference still builds
from those and can be considered more or less branchless, so people
looking at the API reference can apply it to older deployments of nova
before os-cells was removed.

A release note added for previous cells v1 removals is amended to note
this additional change.

Part of blueprint remove-cells-v1

Change-Id: Iddb519008515f591cf1d884872a5887afbe766f2
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-04-16 18:26:13 +01:00
Zuul
7bf27511ac Merge "api-ref: add more details to confirmResize troubleshooting" 2019-04-05 01:01:39 +00:00