Commit Graph

395 Commits

Author SHA1 Message Date
Zuul fbc8ab2025 Merge "Making consistent used of GiB and MiB in API ref" 2018-08-22 04:03:01 +00:00
Sean Dague 8835198b8d Update api-guide and api-ref to be clear about forced-down
Closes-Bug: #1691871
Related-Bug: #1784826

Change-Id: Ifc6f1549d88a1b7d9f6e25c962c8a15dd8e180fb
2018-08-17 01:41:31 +00:00
Petersingh Anburaj eebffb3879 Making consistent used of GiB and MiB in API ref
This patch will replace all GB with GiB and MB with MiB
to have a consistent use of units in the compute API reference
and the placement API reference.

Co-Authored-By: Takashi Natsume <natsume.takashi@lab.ntt.co.jp>
Change-Id: Ie40413752b591b222ff29dbe975ddd7d10638eca
Closes-Bug: #1752340
2018-08-16 22:42:00 +00:00
Zuul 8947097047 Merge "api-ref: fix GET /flavors?is_public description" 2018-08-15 13:33:56 +00:00
Zuul 2813e78558 Merge "Quota details for key_pair "in_use" is 0." 2018-08-10 17:57:47 +00:00
Matt Riedemann eff376b9fc api-ref: fix GET /flavors?is_public description
A couple of things are fixed here:

1. The type in the schema for the is_public query param
   is string, not boolean.

2. Since it's a string, the normal 1/yes/0/no types of
   "booleans" are allowed so document that along with
   the default.

3. Also mention that is_public='None' must be passed for
   an admin user to list both public and private flavors
   in a single request.

Change-Id: Idcb700b69f13217f68434fd6a54439cc277f8998
Partial-Bug: #1784782
2018-08-10 08:49:08 -04:00
Vishakha Agarwal fac7d6f2d2 Quota details for key_pair "in_use" is 0.
This patch updates the api-ref for 'in_use'
field of quota details for keypair which is
always 0 as it is user dependant parameter.

Closes-Bug: #1644457
Change-Id: I0323c411126314ddf3d689dc3120b039256ae81a
2018-08-10 10:33:59 +05:30
Zuul 9d546732c8 Merge "Update the parameter explain when updating a volume attachment" 2018-08-09 17:44:47 +00:00
fpxie a2a17c0625 Update the parameter explain when updating a volume attachment
When we update a volume attachment in nova api, we use volume_id instead
of attachment_id in params in latest api.

Change-Id: I5fc4d0ba3bb1c49dfaba2b2eed056441509cb9da
2018-08-09 02:45:19 +00:00
Zuul e0724cbb12 Merge "xx_instance_type_id in list_migrations should be integer" 2018-08-08 21:19:37 +00:00
zhufl ef7c961726 xx_instance_type_id in list_migrations should be integer
new_instance_type_id and old_instance_type_id in response
of list_migrations should be integer, not string.

Besides, this flavor id is not a common one specified by
users, but an internal one, so this is also to add a NOTE
to avoid the confusion.

"old_instance_type_id": 5140

https://developer.openstack.org/api-ref/compute/#list-migrations

Change-Id: I43c454ac1d7f7ef413d44fe411459e989611cadb
2018-08-08 09:32:23 +08:00
Takashi NATSUME 330c950908 api-ref: Add descriptions for rebuild
Add descriptions about specifying a new image and
asynchronous postconditions in the rebuild operation
in the compute API reference.

Change-Id: I0fd136d07dffc2be845b4b9330fae98c7115789b
Closes-Bug: #1784387
2018-08-07 23:57:22 +00:00
Zuul b046a99844 Merge "Complete the api-ref of security group rule" 2018-08-02 19:06:40 +00:00
Matt Riedemann ca70309987 api-ref: document user_data length restriction
user_data for server create and rebuild is limited to
65535 bytes in the schema, so we should be clear about
this limit in the API reference.

Change-Id: I61fe749ef20229744e1420779ae8128192704554
2018-07-26 21:56:26 -04:00
Yikun Jiang 5cdb1ce26b Microversion 2.64 - Use new format policy in server group
Enable users to define the policy rules on server group policy
to meet more advanced policy requirement. This microversion
brings the following changes in server group APIs:

* Add  ``policy`` and ``rules`` fields in the request of POST
  ``/os-server-groups``.
* The ``policy`` and ``rules`` fields will be
  returned in response body of POST, GET ``/os-server-groups``
  API and GET ``/os-server-groups/{server_group_id}`` API.
* The ``policies`` and ``metadata`` fields have been removed
  from the response body of POST, GET ``/os-server-groups`` API
  and GET ``/os-server-groups/{server_group_id}`` API.

Part of blueprint: complex-anti-affinity-policies

Change-Id: I6911e97bd7f8df92511e90518dba21c127e106a5
2018-07-13 10:43:42 +08:00
ghanshyam 917d8a41a2 Complete the api-ref of security group rule
Adding the correct path of examples in security
group rules api-ref.

Change-Id: I9b7ee5d6da7837901089861d0252f9792a817ce4
2018-07-12 07:12:20 +00:00
Zuul 0ef62de888 Merge "Simplify instance name generation" 2018-07-02 13:18:04 +00:00
Zuul 4c9f63463a Merge "update the description of hypervisor statistics response" 2018-06-29 05:44:47 +00:00
Takashi NATSUME 0ffd2529b1 api-ref: Fix parameters about trusted certificate IDs
Fix the location of the 'trusted_image_certificates'
parameter in the parameter list
of the request body in the "Create Server" API.

Add an additional description that explains
the value is null if the trusted certificate IDs are not set
in the description for the 'trusted_image_certificates' parameter
in the response body.

Change-Id: Ibd3763044068c64b88a28d6c541c569233e112f8
Closes-Bug: #1777394
2018-06-22 02:52:33 +00:00
Stephen Finucane 2a969467dc Simplify instance name generation
Support for the 'multi_instance_display_name_template' option was
removed in commit 0e43002c9 and booting multiple instances now will
simply result in a simple numerical suffix (-1, -2, -3, ...) being added
to the instance's 'display_name' and 'hostname' attributes.

We're now in a position to greatly simplify how we do this, so do just
that, removing some comments and updating some documentation that
referenced the removed option in the process.

Change-Id: If5369bcf4a6f7fc36190e153776e60446eb14040
2018-06-18 14:46:44 +01:00
Matt Riedemann 763fd62464 Add policy rule to block image-backed servers with 0 root disk flavor
This adds a new policy rule which defaults to behave in a
backward compatible way, but will allow operators to enforce
that servers created with a zero disk flavor must also be
volume-backed servers.

Allowing users to upload their own images and create image-backed
servers on local disk with zero root disk size flavors can be
potentially hazardous if the size of the image is unexpectedly
large, since it can consume the local disk (or shared storage pool).

It should be noted that disabling the new policy rule will
result in a non-backward compatible API behavior change and no
microversion is being introduced for this because enforcement via
a new microversion would not close the security gap on any previous
microversions.

Related compute API reference and user documentation is updated
to mention the policy rule along with a release note since
this is tied to a security bug, which will be backported to stable
branches.

Change-Id: Id67e1285a0522474844de130c9263e11868f67fb
Closes-Bug: #1739646
2018-06-15 17:10:11 -04:00
Zuul a1e01a247c Merge "Add trusted_image_certificates to REST API" 2018-06-14 12:01:50 +00:00
Brianna Poulos 8c7ca368b1 Add trusted_image_certificates to REST API
This change adds support for the trusted_image_certificates parameter,
which is used to define a list of trusted certificate IDs that can be
used during image signature verification and certificate validation. The
parameter may contain a list of strings, each string representing the ID
of a trusted certificate. The list is restricted to a maximum of 50 IDs.
The list of certificate IDs will be stored in the trusted_certs field of
the instance InstanceExtra and will be used to verify the validity of
the signing certificate of a signed instance image.

The trusted_image_certificates request parameter can be passed to
the server create and rebuild APIs (if allowed by policy):

* POST /servers
* POST /servers/{server_id}/action (rebuild)

The following policy rules were added to restrict the usage of the
``trusted_image_certificates`` request parameter in the server create
and rebuild APIs:

* os_compute_api:servers:create:trusted_certs
* os_compute_api:servers:rebuild:trusted_certs

The trusted_image_certificates parameter will be in the response
body of the following APIs (not restricted by policy):

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

APIImpact

Implements blueprint: nova-validate-certificates
Change-Id: Iedd3fea0e86648fae364f075915555dcb2c4f199
2018-06-13 15:52:59 -04:00
Matt Riedemann c8edb8ce72 api-ref: expand on various bdm parameters
Some of the block_device_mapping_v2 parameter descriptions
were lacking details on valid values, combinations, restrictions
and how things get linked together, for example, to get a swap
bdm. This fills in the details and re-words things in some
places for clarity.

The mention of the libvirt driver in the guest_format for
non-swap ephemeral block devices is removed since (1) it's
overly confusing and (2) API users shouldn't know or care
if the hypervisor running their server is libvirt or not.
The point is, if you want swap, ask for swap, and if you want
ephemeral, specify one of the other values. Then you get what
you get and you don't throw a fit.

Change-Id: Ia7e49f28e2f410ada5c2f4c2e3a13ffd97e54654
2018-06-12 19:09:07 -04:00
Zuul 8ede37e8b1 Merge "Remove the remaining of the removed option" 2018-05-22 20:03:06 +00:00
Ken'ichi Ohmichi 89b3286ebc Remove the remaining of the removed option
Since I8ae8507a089df4d0a32be5fbc615e2166f44516e the config option
multi_instance_display_name_template has been removed.
So this patch removes the remaining of the option.

Change-Id: I81fa2588d85c803415aadf6150ed6cdd7a0fe6d1
2018-05-22 15:56:44 +00:00
Zuul d78055df0e Merge "api-ref: Fix parameters for os-volume-attachments.inc" 2018-05-21 13:41:07 +00:00
Takashi NATSUME a676d2e6b2 api-ref: Fix parameters for os-volume-attachments.inc
In the following APIs, the 'volume_id' parameters are
'path' parameters. So fix them.

- GET /servers/{server_id}/os-volume_attachments/{volume_id}
- DELETE /servers/{server_id}/os-volume_attachments/{volume_id}

In addition, the descriptions of the parameters are amended.

Change-Id: Iab93acde31639b1471c83b06fb1a77474bb52c48
Closes-Bug: #1770560
2018-05-11 14:26:37 +09:00
jichen 1c3151dd43 [doc] Add soft_deleted flag
soft_deleted is support in query but we didn't mention in the doc

https://github.com/openstack/nova/blob/bcb405e871a447df57ea420402919a256f5d0be9/nova/db/sqlalchemy/api.py#L2127

Change-Id: I1c5577a501144170e82c96c04cffbf32dcaa5cff
Closes-Bug: 1765575
2018-05-09 14:41:30 +00:00
Zuul ceac5d5469 Merge "Add host/hostId to instance action events API" 2018-04-26 20:42:07 +00:00
Yikun Jiang c2f7d65858 Add host/hostId to instance action events API
This patch adds a new microversion to
``GET /servers/{server_id}/os-instance-actions/{req_id}`` API to
include the ``host`` field for admin and an ``hostId`` for all users
by default. And the display of newly added ``host`` field will be
controlled by the same policy as the ``traceback`` field.

The newly added fields can be used to determine on which host a
given action event occurred.

Part of blueprint: add-host-to-instance-action-events

Change-Id: I2f8b4a12a088b9ed96b428eafde2e0c478fb1db5
2018-04-26 14:17:02 +00:00
Matt Riedemann 048fa23100 api-ref: mark block_device_mapping_v2.boot_index as required
This was marked optional in change If57aa3e37 but it has
only been optional since Queens due to change I8a3e7e6c4,
before that you will get a 400 error if you do not provide
boot_index in the BDMs, e.g.:

2018-04-23 12:34:13,308 INFO [nova.api.openstack.wsgi] \
   HTTP exception thrown: Block Device Mapping is Invalid: \
   Boot sequence for the instance and image/block device \
   mapping combination is not valid.
2018-04-23 12:34:13,310 INFO [nova.api.openstack.requestlog] \
   127.0.0.1 "POST /v2.1/6f70656e737461636b20342065766572/servers"
   status: 400 len: 164 microversion: 2.1 time: 0.129485

One could argue that I8a3e7e6c4b72eb1c3707d54049d18dc29f606fe5
is a behavior change that should have gone with a microversion,
which if people agree with that, could be reverted separately.

Change-Id: I14d44dbc0b6a8fb25932c333e695cad9edaefbed
Closes-Bug: #1766306
2018-04-23 14:01:36 -04:00
Zuul c6d7d92c93 Merge "Add microversion to support extra_specs in flavor API." 2018-04-13 22:47:15 +00:00
Yikun Jiang 0baba40b1b Add microversion to support extra_specs in flavor API.
Exposes flavor extra_specs in the flavor representation since
microversion 2.61. Now users can see the flavor extra-specs
in flavor APIs response only and do not need to call
``GET /flavors/{flavor_id}/extra_specs`` API.

Flavor extra_specs will be included in Response body of the
following APIs:

* ``GET /flavors/detail``
* ``GET /flavors/{flavor_id}``
* ``POST /flavors``
* ``PUT /flavors/{flavor_id}``

Part of blueprint add-extra-specs-to-flavor-list

Change-Id: I048747633babf690a63c6de9773bff5547872053
2018-04-11 17:47:57 +08:00
Takashi NATSUME 39fbcfd518 api-ref: Parameter verification for servers.inc (3/3)
This patch completes parameter verification for servers.inc.

* Verifies remaining parameters
* Sorts parameters
* Adds missing parameters
* Removing unncessary parameters

Change-Id: If01b2dcfa9df8c0e80ad1da65115204fe321891b
Closes-Bug: #1738930
2018-04-11 00:33:52 +00:00
Takashi NATSUME bab3184ced api-ref: Parameter verification for servers.inc (2/3)
This patch verifies BDM, fault and scheduler hint parameters.
A subsequent patch will verify other parameters.

Change-Id: If57aa3e37ebaa6fa13718480bb216d10664aa5b1
Partial-Bug: #1738930
2018-04-11 00:33:40 +00:00
Takashi NATSUME 56283f167d api-ref: Parameter verification for servers.inc (1/3)
This patch verifies query parameters.
Subsequent patches will verify other parameters.

Change-Id: I6078c0c8ebc888dc120f446f228a3b0433b89a76
Partial-Bug: #1738930
2018-03-27 17:06:45 +09:00
ForestLee fb3d6afc62 update the description of hypervisor statistics response
The description of hypervisor statistics response was not for one
hypervisor, but all hypervisors. So I will modify the description
from "this hypervisor" to "all hypervisors".

Change-Id: I5b92732a9044e3ce4b18568b8b37f3e6ffc2c929
Closes-Bug: #1687871
2018-02-05 22:32:54 -05:00
Zuul 19829aa2e2 Merge "api-ref: Fix parameter type in server-migrations.inc" 2018-01-30 23:02:33 +00:00
Zuul 988f86374d Merge "Fix 'all_tenants' & 'all_projects' type in api-ref" 2018-01-27 11:32:08 +00:00
gaofei a9769a8488 Replace curly quotes with straight quotes
Sphinx's "smart quotes" feature will ensure these are replaced during
generation of docs.

Change-Id: I96412d86ac67c0dbaa0edb88815daa795e3cb1d8
2018-01-23 09:25:05 +00:00
ghanshyam 6a75cb2ef9 Fix 'all_tenants' & 'all_projects' type in api-ref
'all_tenants' and 'all_projects' are query param to
list the resources for all tenants/projects.

Checking of this query param in code is different in different APIs.
- GET /servers and /servers/detail API checks the value of 'all_tenants'
  strictly as boolean if there is one present.
- other APIs just checks the presence of it in req,
  like GET /os-server-groups, /os-fping

api-ref mentioned this param types as integer, boolean or string.

This commit make api-ref consistent to have type of this query param
as string.

Change-Id: I5297e6baa1e3d06adfc9d29d2bc56124119b9c8c
Closes-Bug: #1734427
2018-01-23 02:30:09 +00:00
Takashi NATSUME 312327b759 api-ref: Fix parameter type in server-migrations.inc
When the parameter is always 'null', it should be defined as 'none'.
So fix the parameter type of the 'force_complete'
in "Force Migration Complete Action" API.

And add an additional description for the action.

Change-Id: Ic0dd390a87d0d5a88d9a08fdaa9e59ee99f6e7c4
Closes-Bug: #1744688
2018-01-22 19:18:25 +09:00
Kevin_Zheng 92a0fc0b9f Add pagination and Changes-since filter support for os-migrations.
This patch adds pagination support and changes-since filter
for os-migrations API.

Users can now use 'limit' and 'marker' to perform paginate
query of running migrations list. Users can also filter the
results according to the migrations' updated time.

The ``GET /os-migrations`` and server migrations APIs will now
return a uuid value in addition to the migrations id in the response,
and the query parameter schema of the ``GET /os-migrations`` API no
longer allows additional properties.

Co-Authored-By: Yikun Jiang <yikunkero@gmail.com>

Implement: blueprint add-pagination-and-change-since-for-migration-list
Change-Id: I7e01f95d7173d9217f76e838b3ea71555151ef56
2018-01-10 14:02:53 -05:00
Kevin_Zheng 0c480d795f Add pagination and changes-since for instance-actions
This patch adds pagination support and changes-since filter
for os-instance-actions API.

Users can now use 'limit' and 'marker' to perform paginate
query of instance action list. Users can also filter the
results according to the actions' updated time.

Co-Authored-By: Yikun Jiang <yikunkero@gmail.com>

Implement: blueprint pagination-add-changes-since-for-instance-action-list

Change-Id: I1a1b39803e8d0449f21d2ab5ef96d4060e638aa8
2017-12-14 07:42:17 +00:00
Zuul 29e453df8e Merge "Deprecate file injection" 2017-12-13 21:08:27 +00:00
Matt Riedemann 126c3d4c78 Deprecate file injection
This microversion makes the following changes:

1. Deprecates personality files from POST /servers and the rebuild
   server action APIs.
2. Adds the ability to pass new user_data to the rebuild server
   action API.
3. Personality / file injection related limits and quota resources
   are removed from the limits, os-quota-sets and os-quota-class-sets
   APIs.

Implements blueprint deprecate-file-injection

Change-Id: Ia89eeb6725459c35369e8f790f68ad9180bd3aba
2017-12-12 09:22:21 -05:00
Takashi NATSUME 35dd1f9185 api-ref: Fix a description for 'guest_format'
There is a wrong format 'ephemeral' in the description.
So remove it and valid formats ('ext2', 'ext3', 'ext4' and 'xfs')
are added.
The parameter is optional, so fix it as well.

Change-Id: Icc04cac3a287955ab1a98b7813e3c7ec8183b120
Closes-Bug: #1736502
2017-12-12 04:53:32 +00:00
Zuul 54f45b530c Merge "Enable cold migration with target host(2/2)" 2017-11-30 07:38:03 +00:00
Takashi NATSUME d2ce4ca9ec Enable cold migration with target host(2/2)
This function enables users to specify a target host
when cold migrating a VM instance.

This patch modifies the migration API.

APIImpact
    Add an optional parameter 'host' in cold migration action.

Change-Id: Iee356c4dd097c846b6ca8617ead6a061300c83f8
Implements: blueprint cold-migration-with-target-queens
2017-11-29 20:48:16 -05:00