summaryrefslogtreecommitdiff
path: root/novaclient/v2
Commit message (Collapse)AuthorAgeFilesLines
* trivial: Remove use of kwargsStephen Finucane2022-12-122-146/+278
| | | | | | | | | | | Make use of a "sentinel" object to allow us to remove the use of kwargs and provide a more helpful docstring. With any luck, Python will support these objects natively in a future release [1]. [1] https://www.python.org/dev/peps/pep-0661/ Change-Id: I411c0393754c8fe8a6698f0d278b73f12209ace8 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Merge "Add support for 2.92 : keypair import mandatory"Zuul2022-08-021-1/+18
|\
| * Add support for 2.92 : keypair import mandatorySylvain Bauza2022-07-281-1/+18
| | | | | | | | | | | | | | | | | | Now, when creating a keypair, the 'public_key' parameter is now mandatory. Depends-On: https://review.opendev.org/c/openstack/nova/+/849133 Implements: blueprint keypair-generation-removal Change-Id: I03570d0a49b73021de91dc50b65b1bbf5d4b878b
* | Merge "Microversion 2.91: Support specifying destination host to unshelve"Zuul2022-08-021-2/+63
|\ \ | |/
| * Microversion 2.91: Support specifying destination host to unshelveRené Ribaud2022-07-281-2/+63
| | | | | | | | | | | | | | | | | | | | This patch adds ``host`` to novaclient api. This can help administrators to specify a ``host`` to unshelve a shelve offloaded server from 2.91 microversion. Depends-On: https://review.opendev.org/c/openstack/nova/+/831507 Implements: blueprint unshelve-to-host Change-Id: I7efc8f0b0ef159e16cefee761bff5d7e90d0c427
* | Update pre-commit hook, hacking versionsStephen Finucane2022-04-081-5/+5
|/ | | | | | | | | This was done with 'pre-commit autoupdate'. An invalid message is removed from the requirements.txt files as it no longer applies with pip's new dependency resolver. Change-Id: I01c3ece51f81d67c740e6faca6b77df7c9932435 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Microversion 2.90 - Configurable hostnamesxena-em17.6.0Stephen Finucane2021-09-022-35/+136
| | | | | | Change-Id: Icd4362a07196e59bafcdfaff44323ce1386d4f55 Signed-off-by: Stephen Finucane <stephenfin@redhat.com> Depends-On: https://review.opendev.org/c/openstack/nova/+/778550/
* Microversion 2.89 - os-volume_attachmentsLee Yarwood2021-08-241-0/+4
| | | | | Depends-On: https://review.opendev.org/c/openstack/nova/+/804275 Change-Id: If6275dbd3795047c111ac507a12b034e60029df8
* Refactor constructing request bodyTakashi Natsume2021-05-061-24/+27
| | | | | | | | | Add a private static method to construct a request body for create requests in the novaclient.v2.volumes.VolumeManager class. Change-Id: I884ad4b471e3d196255901499c75a1a2f0535f65 Signed-off-by: Takashi Natsume <takanattie@gmail.com>
* When creating a client, pass the default loggerRadomir Dopieralski2021-03-251-1/+1
| | | | | | | | | | | When a client is created without a logger, novaclient creates a default logger, but it's then not used, because it's not passed to the factory function. Because of that, all novaclient calls are getting logged as 'keystoneauth.session' instead of 'novaclient.v2.client' as they should. Closes-bug: 1921388 Change-Id: I53caceb08667eb12e27016731868e8015dd10e34
* Add support for microversion v2.8817.4.0Stephen Finucane2021-03-022-2/+36
| | | | | | | | | | | The key change here is that the 'GET /os-hypervisors/{id}/uptime' API will now returns a HTTP 404 starting in 2.88. The 'GET /os-hypervisors/{id}' will instead now include an 'uptime' value. The 'novaclient.v2.hypervisors.HypervisorManager.uptime' method is updated to handle this. Change-Id: Ib99fbd820a586c14527ff64b319df0b7a44e1b8b Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Deprecate agent commands and APIs17.3.0Takashi Natsume2021-01-132-4/+21
| | | | | | | | | | | | | | | | | The os-agents APIs have been removed by the following change. I9512f605dd2b3b0e88c951ed086250d57056303d This patch makes commands related to the APIs deprecated in accordance with the following policy. * https://docs.openstack.org/python-novaclient/latest/contributor/deprecation-policy.html The API bindings related to the APIs remains as they are because python-openstackclient depends on the API bindings. Change-Id: I89d7877e23e8802fe77987a7b24ea247e08d5218 Signed-off-by: Takashi Natsume <takanattie@gmail.com>
* Remove future importsTakashi Natsume2020-04-261-2/+0
| | | | | | | | These particular imports are no longer needed in a Python 3-only world. Change-Id: I405b32c8cdd60fb19270a8f6fe2e2728022f7c6e Signed-off-by: Takashi Natsume <takanattie@gmail.com>
* Microversion 2.85: Change volume-update CLIzhangbailin2020-04-092-6/+58
| | | | | | | | | | | | | This commit add a new CLI ``nova volume-update [--[no-]delete-on-termination] <server> <src_volume> <dest_volume>`` to update 'delete_on_termination' for an attached volume, that the user can decide whether to delete attached volumes when destroying the server. Depends-On: https://review.opendev.org/#/c/711194/ Change-Id: I1fc64fb6e6611c92c6b72265e1bf4b32e9c45f0a Blueprint: destroy-instance-with-datavolume
* Make 'server list --config-drive' a boolean optionStephen Finucane2020-04-082-12/+16
| | | | | | | | | | | | Instead of passing through whatever the user provides and exposing this bug in the REST API, simply make the opt a boolean one in expectation of a day where the API issues have been resolved. This also introduces machinery necessary to use more of these types of opts in the future. Change-Id: I9033540ac65ac0ee7337f16bdd002060652092ea Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
* Microversion 2.83 - Add more filters for the nova list commandVictor Coutellier2020-04-072-3/+74
| | | | | | | | | | | | | | | | | | | Add these new filters, admin-only until microversion 2.82: - availability-zone - config-drive - key-name - power-state - task-state - vm-state - progress Existing user filter will be available to non admin since microversion 2.83. Part of blueprint non-admin-filter-instance-by-az Change-Id: Id2b5e600c0a41790830823031b20983808cb5ace
* Don't print user_data for 'nova show'Stephen Finucane2020-02-261-0/+1
| | | | | | | | | | User data is a blob of data that the user can specify when they launch an instance. It's generally binary data, which means it's not something we should show by default on the CLI. Stop doing that. Change-Id: If8f6cc040d0077a7902a5fd425e67d74d7925a46 Signed-off-by: Stephen Finucane <sfinucan@redhat.com> Closes-Bug: #1669140
* Bump to hacking 2.xStephen Finucane2020-02-211-5/+4
| | | | | | | This is compatible with Python 3-only syntax. Change-Id: I462f4242b9a5f8d8cd6b0cb3d328dfd9d93ba200 Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
* Remove sixStephen Finucane2020-02-216-40/+23
| | | | | | | | Mostly a find-replace job. Let's do this now so we don't have to carry it for the next decade. Change-Id: I7bef9fb7c6895f746cee1aca6522786f38b9857c Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
* Add aggregate-cache-images command and client routinesDan Smith2019-10-182-0/+37
| | | | | | | | | | This adds the ability to request image precache support for an aggregate in support of the matching server feature. Related to blueprint image-precache-support Depends-On: https://review.opendev.org/#/c/687140 Change-Id: Id354ccfa99e500a598685e6b794c12160ea2a990
* Add images.GlanceManager.find_images() bulk queryDan Smith2019-10-182-0/+45
| | | | | | | | This adds a bulk query method to GlanceManager that takes multiple image names or ids and attempts to query glance for all of them in fewer requests than one-per-image. Change-Id: I1c6ce27b65920356df6b7001c581a2922765ce0c
* Microversion 2.80: Add user_id/project_id to migration-list APIzhangbailin2019-10-162-9/+81
| | | | | | | | | | | | | | Add ``user_id`` and ``project_id`` to the ``GET /os-migrations`` API, and it can called ``--user-id <user_id>`` and/or ``--project-id <project_id>`` by ``nova migration-list`` CLI. Showing the ``user_id`` and ``project_id`` when using api_version>=2.80 with the server-migration-list or server-migration-show APIs. Depends-On: https://review.opendev.org/#/c/674243/ Part of blueprint add-user-id-field-to-the-migrations-table Change-Id: I11343ca265ab2b6b6f46877897d8223ef340c258
* Merge "Clarify --migration-type migration value as cold migration"Zuul2019-10-092-6/+6
|\
| * Clarify --migration-type migration value as cold migrationMatt Riedemann2019-08-262-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a follow up to a review discussion [1] where the "migration" value for the --migration-type option is for a cold migration. This change just updates docs and help strings. An alternative is changing "migration" as a valid value to "cold-migration" (or accept both) and under the covers treat "cold-migration" as "migration" for the actual API call. [1] https://review.opendev.org/#/c/675117/3/novaclient/v2/shell.py@5430 Related to blueprint more-migration-list-filters Change-Id: I6baa6af8731252e3c4976db06f0ca9cdfcb5e2f1
* | Remove cells v1 and extension commands and APIsTakashi NATSUME2019-10-044-164/+0
| | | | | | | | | | | | | | | | | | | | | | | | The following CLIs and their backing API bindings which have been deprecated since 20.0.0 Train release have now been removed. - list-extensions - cell-capacities - cell-show Change-Id: I8e6edf1e4c1bf12d51ed993363129b4f4c3aa36c
* | Stop silently ignoring invalid 'nova boot --hint' optionsStephen Finucane2019-09-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The '--hint' option for 'nova boot' expects a key-value pair like so: nova boot --hint group=245e1dfe-2d0e-4139-80a9-fce124948896 ... However, the command doesn't complain if this isn't the case, meaning typos like the below aren't indicated to the user: nova boot --hint 245e1dfe-2d0e-4139-80a9-fce124948896 Due to how we'd implemented this here, this ultimately results in us POSTing the following as part of the body to 'os-servers': { ... "OS-SCH-HNT:scheduler_hints": { "245e1dfe-2d0e-4139-80a9-fce124948896": null } ... } Which is unfortunately allowed and ignored by nova due to the use of 'additionalProperties' in the schema [1] Do what we do for loads of other options and explicitly fail on invalid values. [1] https://github.com/openstack/nova/blob/19.0.0/nova/api/openstack/compute/schemas/servers.py#L142-L146 Change-Id: I0f9f75cba68e7582d32d4aab2f8f077b4360d386 Signed-off-by: Stephen Finucane <sfinucan@redhat.com> Closes-Bug: #1845322
* | Add a check for --config-drive option on nova bootTakashi NATSUME2019-09-182-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A value of the '--config-drive' option must be a boolean value on the 'nova boot' command because nova accepts a boolean value only for the 'config_drive' parameter. So add a check for the '--config-drive' option on the 'nova boot' command. Fix a description for 'config_drive' parameter in the 'create' method of the novaclient.v2.ServerManager class. Change-Id: Ic6e65139302fbb662fb6ba60e73633dad8ffb72e Closes-Bug: #1825061
* | Microversion 2.79: Add delete_on_termination to volume-attach API15.1.0zhangbailin2019-09-092-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support add 'delete_on_termination' field to the voume attach API to support configuring whether to delete the data volume when the server is destroyed. * Updating the ``nova volume-attachments`` command to show the ``delete_on_termination`` value if 2.79 or greater is used. * The '--delete-on-termination' option is added to the `nova volume-attach` CLI. Depends-On: https://review.opendev.org/#/c/673133/ Part of blueprint support-delete-on-termination-in-server-attach-volume Change-Id: I8dcf2fd21a2fd99ca4e05bd953fbbe026be3a619
* | Microversion 2.78 - show server topologyYongli He2019-09-062-0/+29
| | | | | | | | | | | | | | | | | | | | | | Add support microversion 2.78 which adds server topology information in the output of the following new command: nova server-topology Depends-on: https://review.opendev.org/#/c/621476/ Change-Id: I6467d52d2528a37348458baf4842b571a97f3ed2 Implements: blueprint show-server-numa-topology
* | Merge "Microversion 2.77: Support Specifying AZ to unshelve"15.0.0Zuul2019-08-292-1/+46
|\ \ | |/ |/|
| * Microversion 2.77: Support Specifying AZ to unshelvezhangbailin2019-08-282-1/+46
| | | | | | | | | | | | | | | | | | | | | | This patch adds a new parameter ``--availability-zone`` to ``nova unshelve`` command. This can help users to specify an ``availability_zone`` to unshelve a shelve offloaded server from 2.77 microversion. Depends-On: https://review.opendev.org/#/c/663851/ Implements: blueprint support-specifying-az-when-restore-shelved-server Change-Id: I8bce8f430bc54f03bacc105e37fc8b3bbf2432c2
* | Add --migration-type and --source-compute to migration-listMatt Riedemann2019-08-082-10/+71
|/ | | | | | | | | | | | | | | | | | The GET /os-migrations API take a migration_type and source_compute filter parameter on the request since the v2.0 API. This adds support for specifying those parameters in the "nova migration-list" CLI and related MigrationManager.list() python API binding methods. A functional test is added which will cover the new options on all three of the decorated do_migration_list shell methods with lower bounds on 2.1, 2.59 and 2.66. Since the only type of migration we can safely generate in a single-node CI job is a resize the test does a resize. As such, _pick_alternate_flavor is moved into the base test class for re-use. Implements blueprint more-migration-list-filters Change-Id: I4be9a06df3e0d40d3990d067ce112247a81b45b4
* docs: clarify nova migration-list --host optionMatt Riedemann2019-08-071-3/+3
| | | | | | | | | | The GET /os-migrations API takes both a host and source_compute filter parameter. The former filters on either the source or destination compute, so this change clarifies that in the command help for the --host option. Change-Id: I078add63896c7455be7e3672b7172debb962a5e2
* Update api-ref locationAndreas Jaeger2019-07-221-1/+1
| | | | | | | | | | | | | | 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 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: I53120e2ff3ae337a55c4cd0904bc9ad1dd54d082
* Merge "Deprecate cells v1 and extension commands and APIs"Zuul2019-07-153-5/+49
|\
| * Deprecate cells v1 and extension commands and APIsTakashi NATSUME2019-07-103-5/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The API extension has been deprecated since 12.0.0 Liberty release (*1) and the cells v1 has been deprecated since 16.0.0 Pike release (*2) in the nova side. The API extension has already been removed (merged into main controllers and schema) since 19.0.0 Stein release (*3) and the cells v1 APIs has already been removed since Iddb519008515f591cf1d884872a5887afbe766f2. In the python-novaclient side, deprecate commands and API bindings related to the API extension and the cells v1 at first. Then the CLIs and API bindings will be removed in the first major release after Nova 20.0.0 Train is released. *1: I084444b11dceda7cf8f88c157aa67d36490fce49 *2: I1a173f7ce0715e684850e030c358e8175fa8724c *3: https://review.opendev.org/#/q/topic:bp/api-extensions-merge-stein Change-Id: I8dc4df95ac7f6974c5280e4107e449d04cd1402e Closes-Bug: #1835699
* | Merge "Remove deprecated methods and properties"Zuul2019-07-151-36/+3
|\ \
| * | Remove deprecated methods and propertiesTakashi NATSUME2019-07-041-36/+3
| |/ | | | | | | | | | | Remove deprecated methods, properties and unused classes. Change-Id: I16e0b6e55a9c9da04c4582f9be672018d37bf368
* | Add host and hypervisor_hostname to create serverszhu.boxiang2019-07-082-3/+48
|/ | | | | | | | | | Adds the --host and --hypervisor-hostname options to the nova boot command and related python API bindings. Depends-On: https://review.opendev.org/#/c/645520/ Change-Id: If16d00b75f4d5f2b96aa6e3f32a973108049d928 Blueprint: add-host-and-hypervisor-hostname-flag-to-create-server
* Merge "Allow searching for hypervisors and getting back details"14.1.0Zuul2019-05-271-3/+12
|\
| * Allow searching for hypervisors and getting back detailsMatt Riedemann2019-05-181-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The 2.53 microversion allows listing hypervisors with details and filtering on a hypervisor_hostname substring pattern match. This makes the python API binding HypervisorManager.search method allow that as well by adding a new 'detailed' boolean kwarg which defaults to False for backward compatibility for the /search and /servers routes before 2.53, but allows searching and getting detailed results back as well. Change-Id: I81fa4520af3cc7f1298c262f4fdc4e15fbc6d7ba
* | Merge "Set the lower limit of api_version for volume_type"Zuul2019-05-231-1/+1
|\ \
| * | Set the lower limit of api_version for volume_typezhangbailin2019-05-231-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | In boot server API, the volume_type is supported by microversion 2.67. Therefore, the lower limit of the volume_type should be added to the CLI command, otherwise an exception will occur. Co-Authored-By: Eric Xie <eric_xiett@163.com> Closes-Bug: #1829854 Change-Id: Ie909c16568b017ca0acc802194140da7bece76c5
* | Merge "Allow passing negative values for the locked search_opt in ↵Zuul2019-05-231-2/+7
|\ \ | |/ |/| | | cs.servers.list"
| * Allow passing negative values for the locked search_opt in cs.servers.listSurya Seetharaman2019-05-221-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for novaclient to pass the "locked" search_opts with a "False" value upto the server side. This is required for the OSC change[1] to support the "unlocked" filter parameter. [1] https://review.opendev.org/#/c/659124/ Related to blueprint add-locked-reason Change-Id: I0907f4ad2decb308c9db8b0cf9e7962bf1b517b5
* | Merge "Optimize limit option docs string description for novaclient"Zuul2019-05-178-2/+31
|\ \ | |/ |/|
| * Optimize limit option docs string description for novaclientchenke2019-05-178-2/+31
| | | | | | | | Change-Id: I85ee36b0447869771782d1059957a46447940b59
* | [Docs] Update client docs to add reason and locked optionsSurya Seetharaman2019-05-141-1/+3
| | | | | | | | | | | | | | | | | | | | This patch adds information about the ``locked`` filter/sorting key and the ``reason`` options that were added in https://review.opendev.org/#/c/648659/. Related to blueprint add-locked-reason Change-Id: I11cc4bd7cee0f03d4398f91bb3790c4c681061f4
* | Microversion 2.73: Support adding the reason behind a server lockSurya Seetharaman2019-05-132-1/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new parameter ``--reason`` to ``nova lock`` command and ``--locked`` filtering/sorting parameter to ``nova list`` command. This can help users to provide a reason when locking the server and to filter/sort instances based on their locked or value from 2.73 microversion. Implements blueprint add-locked-reason Depends-On: https://review.opendev.org/#/c/648662/ Change-Id: I438e6db2dd5000ba388d0a0f1c8ab74b96b47a71
* | Revert "Fix crashing console-log"Stephen Finucane2019-04-051-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d272d6f3df2610a62f81e2ca26798ea8a6674b06. This worked around a misconfigured environment by forcing stdout to use UTF-8. This is kind of a hack and it only works in Python 2, breaking Python 3 [1]. The correct solution to this issue and all Python 2 unicode print issues is to correctly configuring LC_ALL to use a UTF-8 locale. [1] https://stackoverflow.com/q/4374455 Change-Id: Iaeec1e74262a35f3de3c81f7013835a6aa6f9029 Closes-Bug: #1823287