From 340104c4616a4ff686961807a0d1b677b04e2a21 Mon Sep 17 00:00:00 2001 From: ZhijunWei Date: Fri, 28 Dec 2018 23:04:07 +0800 Subject: [PATCH] Update git submodules * Update python-novaclient from branch 'master' - Update hacking version 1. update hacking version to latest 2. fix the pep8 failed Change-Id: I484a40fe3cb868d223a807edcd3e20f5e0ebdf4e - Fix flavor keyerror when nova boot vm When creating a server (the 'nova boot' command), it calls 'POST /servers' API. The response does not have 'addresses' and 'flavor' attributes. When accessing 'networks' attribute in the '_print_server' function, it calls 'GET /servers/{server_id}' and get the 'addresses' and 'flavor' attributes. If 'GET /servers/{server_id}' fails, the server object does not have the 'flavor' attribute, then KeyError is raised when accessing it. Fix the issue by making it raise a CommandError when the 'GET /servers/{server_id}' fails. Co-Authored-By: Takashi Natsume Change-Id: I3ef096c61b0e05a637ab0c4a1027338fa87e4f09 Closes-Bug: #1781368 - Change openstack-dev to openstack-discuss Mailinglists have been updated. Openstack-discuss replaces openstack-dev. Change-Id: I157626d7aa539e583d20f2f8aa39e06188347573 - Add Python 3.6 classifier to setup.cfg Change-Id: I091c82f60d9ae984cf61be8c6fe95ec68817cb75 - Fix a type of block_device_mapping_v2 in a comment Change-Id: I9c74402fbc4b2390b64265c6f174bc7e343900cc Closes-Bug: #1804198 - Merge "Replace MB with MiB" - Fixes Python3 issue in decoding password The 'nova get-password' command shows a passowrd as bytes instead of string in Python 3 currently. It should be shown as string. So fix it. Co-Authored-By: Takashi Natsume Change-Id: Ibcfb071fcc3c74535b800295ec95ca5ec8bc3c9b Closes-Bug: #1794167 - Merge "Deprecate the unused instance-name" - Deprecate the unused instance-name The '--instnace-name' option exists in nova CLI for a long time, but it is not used, so we deprecate it firstly and will remove it in T release. Change-Id: I0c3d611fc322ae2c9f28ce3845b1c08eaab69485 Closes-Bug: #1788182 - Replace MB with MiB Change-Id: Ie5bd325d8e0f7e9af76c1ddae1d679b0e797c84b - Recommend against using --force for evacuate/live migration This copies the same warnings from the API reference change I85e7c2677f4d5eccc1e7f349de06960b53ef148d to the CLI help for the various evacuate/live migrate commands. It also mentions that if a host is not specified, one is selected by the scheduler (which is what we really want people doing). Given blueprint remove-force-flag-from-live-migrate-and-evacuate we really want to discourage people from using the --force flag. Change-Id: I15ef933cc09947e2bb3fb7bf17b15735171a9bec - Merge "Add support for microversion 2.67: BDMv2 volume_type" - Merge "Enable split logging for cinder-novaclient interaction" - Add support for microversion 2.67: BDMv2 volume_type This adds the nova boot command and python API binding support for creating a server with block device mappings defined using a specific volume type. Depends-On: https://review.openstack.org/606398/ Depends-On: https://review.openstack.org/#/c/610349/ Part of blueprint boot-instance-specific-storage-backend Change-Id: I484ee065119b5783db212ea64efa60e87c40338c - doc: Start using openstackdoctheme's extlink extension This ensures we have version-specific references to other projects [1]. [1] https://docs.openstack.org/openstackdocstheme/latest/#external-link-helper Change-Id: I3b9db8b71c082dd5f8d0564a9cdfdb2fa6dc5ed6 - Merge "Update the CLI reference" - Merge "Follow up "Fix up userdata argument to rebuild"" - Merge "Update the contributor guide" - Follow up "Fix up userdata argument to rebuild" This patch is a follow-up patch for I9752d849aa0e6cf608db0def3ca89565cff4debc. * Add checking a message of an exception in the unit test * Add 'with' statement when opening a file * Fix descriptions in the release note Change-Id: I2c399490f320a202b41a8f8d36710a36621c4853 - Merge "Fix up userdata argument to rebuild." - Update the CLI reference Update the CLI reference according to the latest CLIs. The CLI reference (doc/source/cli/nova.rst) has been imported from openstack-manuals since If19cfcafc90fddb930c124a5b9845d4eae1f6093. We can update the CLI reference synchronously with changing the CLIs currently. So remove the description of nova CLI version in the reference. Change-Id: Icb97def5e4d65a31add7c60c205d5f9f0dfc4520 Closes-Bug: #1795283 - Update the contributor guide Add missing tox targets in contributor/testing.rst. Replace the launchpad link to nova project with the launchpad link to python-novaclient project in contributor/index.rst. Change-Id: I1b3736f25e59669624331d8f86820a45181c6760 Closes-Bug: #1795353 - Fix up userdata argument to rebuild. This was using the name of the file as user data as opposed to the content of the file. Change-Id: I9752d849aa0e6cf608db0def3ca89565cff4debc Closes-bug: #1794419 - Fix test_instance_action functional test failure Fix an intermittent failure of test_list_instance_action_with_changes_before method of the TestInstanceActionCLIV266 class. Change-Id: Ie898d9590e1701476eadf4895bce7874d989175a Closes-Bug: #1795392 - Merge "Add support changes-before for microversion 2.66" - Add support changes-before for microversion 2.66 This adds the changes-before filter to the servers, os-instance-actions and os-migrations list for filtering resources which were last updated before or equal to the given time. The changes-before filter, like the changes-since filter, will return deleted server resources. Depends-On: https://review.openstack.org/599276/ Part of bp support-to-query-nova-resources-filter-by-changes-before Change-Id: I7c6ea00303374d605bda8ef1b62c5de1b4567696 - docs: Add redirects These were missed for some reason. Let's add them now. While we're here, we add the '-d DOCTREE_DIR' argument to our 'sphinx-build' call to handle Sphinx 1.8's change in behavior for where doctrees are output. Change-Id: I5c862a74f92a44bf5248f858e26826eef76c11f0 Signed-off-by: Stephen Finucane - Follow the new PTI for document build - Follow new PTI for docs build - Add sphinxcontrib.apidoc to replace pbr autodoc REF: https://governance.openstack.org/tc/reference/project-testing-interface.html http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html http://lists.openstack.org/pipermail/openstack-dev/2018-March/128594.html Change-Id: Ic66fe4d5488c7777439a416fbf86d37af807804d Closes-Bug: #1792115 - Merge "Improve the description of optional arguments" - Merge "Cleanup zuul.yaml" - Merge "add lib-forward-testing-python3 test job" - Merge "add python 3.6 unit test job" - Merge "switch documentation job to new PTI" - Merge "import zuul job settings from project-config" - Improve the description of optional arguments This patch is a follow-up patch for Ib4ce831a5031459d350fa73601e878e7b319640f. Improve the description of optional arguments in the CLI reference and help text. Change-Id: I6313b8a584385daa7e9fbd558d431faa43015449 - Cleanup zuul.yaml Couple of cleanups: * Use openstack-lower-constraints-template, remove jobs that are part of templates. * Use openstack-tox-cover template, this runs the cover job in the check queue only. Remove post job. * Sort list of templates. Change-Id: I0f186ba675ecb5802ef6a84ac05727a8621d3768 - Add missing options in CLI reference Add the following missing options in the CLI reference. * nova instance-action-list - marker - limit - changes-since * nova migration-list - marker - limit - changes-since Change-Id: Ib4ce831a5031459d350fa73601e878e7b319640f Closes-Bug: #1791125 - add lib-forward-testing-python3 test job This is a mechanically generated patch to add a functional test job running under Python 3 as part of the python3-first goal. See the python3-first goal document for details: https://governance.openstack.org/tc/goals/stein/python3-first.html Change-Id: I58ae5f91517700745073cc06ead073ba13ac923d Story: #2002586 Task: #24315 - add python 3.6 unit test job This is a mechanically generated patch to add a unit test job running under Python 3.6 as part of the python3-first goal. See the python3-first goal document for details: https://governance.openstack.org/tc/goals/stein/python3-first.html Change-Id: Ib497e0a8cec7656925441c252f0eda96ad32b9b9 Story: #2002586 Task: #24315 - switch documentation job to new PTI This is a mechanically generated patch to switch the documentation jobs to use the new PTI versions of the jobs as part of the python3-first goal. See the python3-first goal document for details: https://governance.openstack.org/tc/goals/stein/python3-first.html Change-Id: I7fa9df3d37285ee2427a4275b738b7c7e69a9177 Story: #2002586 Task: #24315 - import zuul job settings from project-config This is a mechanically generated patch to complete step 1 of moving the zuul job settings out of project-config and into each project repository. Because there will be a separate patch on each branch, the branch specifiers for branch-specific jobs have been removed. Because this patch is generated by a script, there may be some cosmetic changes to the layout of the YAML file(s) as the contents are normalized. See the python3-first goal document for details: https://governance.openstack.org/tc/goals/stein/python3-first.html Change-Id: I84676a89b612b7ac4e925534ba81203048fd2866 Story: #2002586 Task: #24315 - Enable split logging for cinder-novaclient interaction This patch ensures that log messages[1][2][3] are logged only when keystoneauth=DEBUG is enabled in cinder.conf. This will also enable us to consume split_logger config option [4] when enabled in cinder without making any additional changes in client code. [1] REQ: https://review.openstack.org/#/c/505764/8/keystoneauth1/session.py@391 [2] RESP: https://review.openstack.org/#/c/505764/8/keystoneauth1/session.py@422 [3] RESP BODY: https://review.openstack.org/#/c/505764/8/keystoneauth1/session.py@454 [4] https://review.openstack.org/#/c/568878/ Closes-Bug: #1782134 Change-Id:I3c47b5249141b3f05b2f54984bb5b1d7801a02bc - Merge "Replace os-client-config to openstacksdk" - Replace os-client-config to openstacksdk Since now os-client-config has been superceded by openstacksdk[1]. So need to replace the os-client-config. [1]:https://docs.openstack.org/os-client-config/latest/ Change-Id: Ia0e0671720de4713098e9d0faa1d7dc0c4ae6147 - Merge "Use uuidutils of oslo.utils" - Use uuidutils of oslo.utils Replace standard uuid library with uuidutils of oslo.utils. TrivialFix Change-Id: Ibb6ec8b56a404685d9727f1b771dbff178fdecdf - Fix server strings in reboot operation The following message is shown currently in the reboot operation. Request to reboot server has been accepted. The server name string is a bit odd. So fix it as follows. Request to reboot server server1 (ff79e91e-e2a7-4e0f-b4c3-7157676d43c9) has been accepted. Change-Id: I62df4589dc950f69fdc23eafcbb5792e897cb635 Closes-Bug: #1785495 - Refactor the getid method in novaclient/base.py TrivialFix Change-Id: I30aa4cea658bd3b96f9e7e3d7037232fed8d3749 - Use jsonutils of oslo.serialization Both standard json library and jsonutils of oslo.serialization are used. Replace standard json library with jsonutils for consistency. Change-Id: Id6cbb4d78817ff4993b73538935cc4cc61b64a72 - Update reno for stable/rocky Change-Id: I05c3e246c1ae10110c9a951da2d3b9b66380e38a - Fix the help text for server-group-create Replace `` with " in the help text of the server-group-create command for consistency with other help text. TrivialFix Change-Id: Iaeb00b11a723e16a295c6692f6f38e91bc9490f7 - Merge "Add support for microversion 2.65" - Merge "Fix inconsistency" - Fix inconsistency Replace "of"s with "off"s to be consistent with the rest. Change-Id: I4a99e733f9ecdbc080f1158b8c90af888d619cdc - Merge "Microversion 2.64 - Use new format policy in server group" - Add support for microversion 2.65 There are no functional changes for this, just bumping the supported client-side version and updating docs. Depends-On: https://review.openstack.org/573136/ Part of blueprint abort-live-migration-in-queued-status Change-Id: Ie0777dbe4d82892ec75b353f6b13ee2d2c5db72c - Microversion 2.64 - Use new format policy in server group Added support for microversion 2.64, which includes the following changes: - The ``--rule`` option is added to the ``nova server-group-create`` CLI that enables user to create server group with specific policy rules. - Remove ``metadata`` column in the output of ``nova server-group-create``, ``nova server-group-get``, ``nova server-group-list``. - Remove ``policies`` column, , add ``policy`` and ``rules`` columns in the output of ``nova server-group-create``, ``nova server-group-get``, ``nova server-group-list``. Depends-On: 3cd26f1e68b09ba7925e794ac8912566c239b6df blueprint: complex-anti-affinity-policies Change-Id: I903f4b5544806b9d3c8bac529448abbc9dd3cee9 - Switch to stestr According to Openstack summit session [1], stestr is maintained project to which all Openstack projects should migrate. Let's switch to stestr as other projects have already moved to it. [1] https://etherpad.openstack.org/p/YVR-python-pti Change-Id: I55060b1d99b9a00b20c98fbb429d072568265695 - Rename --endpoint-override to --os-endpoint-override The ``--endpoint-override`` command line argument has been deprecated. It is renamed to ``--os-endpoint-override`` to avoid misinterpreting command line arguments. It defaults to the ``OS_ENDPOINT_OVERRIDE`` environment variable. The deprecated ``--bypass-url`` command line argument has been removed. Change-Id: Ic8a6559cd62d46b837fa9c04b482a46ceba829db Closes-Bug: #1778536 - Add release note link in README Change-Id: Ife1471e7a3139f3997fff10b7a6f472509b8ee52 - Merge "Fix trusted-image-certificate-id help text" - Fix help text in server-group-create Only one policy is allowed in server-group-create. Change-Id: Id9cb6f96a5f8bcece1bcda88a97c6fb5f8a58bba Related-Bug: #1767287 - Fix trusted-image-certificate-id help text Fix the help text for nova boot to include that a parameter is expected for trusted-image-certificate-id. Also update the UnsupportedAttribute error to mention the env variable to reduce confusion. Change-Id: Ic5980b610e5fd97d3a858a2a513e2863657f36c2 - Merge "Modify novaclient to support basic attributes" - Merge "Microversion 2.63 - Add trusted_image_certificates" - Microversion 2.63 - Add trusted_image_certificates This change adds a `--trusted-image-certificate-id` option to the `nova boot` and `nova rebuild` commands. This option takes in a a single trusted certificate ID. The option may be used multiple times to specify multiple trusted certificate IDs, which will be used to validate certificates in the image signature verification process. If ID values are not specified using this option, the value of the newly added OS_TRUSTED_IMAGE_CERTIFICATE_IDS environment variable will be used instead. This value will be converted into a list before being passed on. The ``nova rebuild`` command also gets a new ``--trusted-image-certificates-unset`` option to unset/reset the trusted image certificates in a server during rebuild. This is similar to unsetting key_name and user_data during rebuild. Corresponding `trusted_image_certificates` kwarg has been added to the server create and rebuild Python API bindings. Co-Authored-By: Brianna Poulos Co-Authored-By: Matt Riedemann Change-Id: I235541a689732826950c7b2a510d5835211120c3 Implements: blueprint nova-validate-certificates - Add CLI docs reference for flavor-update When the flavor-update command was added, we didn't have the CLI docs in-tree so this was missed. Change-Id: I3d5da9ac206d82b3fb3c51fa0872a3bae69d0a7e - Remove doc/build when building docs Wipe out the existing doc/build when rebuilding the docs. Change-Id: Idd7f6dc171425402b8d7ff7962dc09e7c576986b - Modify novaclient to support basic attributes Added support for parsing OS_PROJECT_DOMAIN_ID, OS_PROJECT_DOMAIN_NAME, OS_USER_DOMAIN_ID, and OS_USER_DOMAIN_NAME options. Change-Id: I9e1a3426f174c2e6d9f4f6bf10e9aecb62bad8d0 Closes-Bug: #1744118 - Merge "fix tox python3 overrides" - Remove PyPI downloads According to official site, https://packaging.python.org/guides/analyzing-pypi-package-downloads/ PyPI package download statistics is no longer maintained and thus should be removed. Change-Id: I98fb84b6724a43afc91686e939ea26c94a4e8176 - fix tox python3 overrides We want to default to running all tox environments under python 3, so set the basepython value in each environment. We do not want to specify a minor version number, because we do not want to have to update the file every time we upgrade python. We do not want to set the override once in testenv, because that breaks the more specific versions used in default environments like py35 and py36. Change-Id: I2cb16250241781abe7c5a7d7de37612f07ff2b0b Signed-off-by: Doug Hellmann - Merge "Revert "Fix listing of instances above API max_limit"" - Add a note in the nova CLI reference about using OSC We want to eventually ween people off the nova CLI and get them to use the unified openstack CLI, so this adds a note about that. Change-Id: Ia854d2b83b489f67e514a6c066fe1bdc9549f9d3 - Import nova CLI reference from openstack-manuals This replaces the old CLI reference main page for the various nova commands with the more complete CLI reference that was in the openstack-manuals report based on the "before-migration" tag in that repo, which was the tag before the centralized docs were dropped in Pike and should have been moved into per-project repos, in this case python-novaclient. The command reference in here is a bit old and should be cleaned up, but this is better than what we have today, which is nothing. Change-Id: If19cfcafc90fddb930c124a5b9845d4eae1f6093 Closes-Bug: #1775281 - Revert "Fix listing of instances above API max_limit" This reverts commit eff607ccef91d09052d58f6798f68d67404f51ce. There was no apparent need for the change being reverted since user can list all servers by specifying --limit=1 when running the nova list command. The change introduced a problem whereby the first pass to list instances from the server would get up to [api]/max_limit (default 1000) results and then call again with a marker. If the last instance in the list (the marker) is corrupted in the instance_mappings table in the API DB by not having an associated cell mapping, listing instances will always fail with a MarkerNotFound error even though the CLI user is not passing a marker nor specifying --limit=-1. The corrupted instance mapping record resulting in the MarkerNotFound error is something else that should be fixed on the server side (and likely result in a 500) but the change in behavior of the CLI makes it always fail if you hit this even if you're not passing a marker. Change-Id: Ibb43f500a74733b85bd3242592d36985bfb45856 Closes-Bug: #1773945 - Fix the incorrect cirros default password Following by https://docs.openstack.org/image-guide/obtain-images.html#cirros-test Change-Id: Iee3b90900e238b717020c4b7f32e5a5f346bef95 - Fix the policy argument in server-group-create In the "server-group-create" command, multiple policies can be specified currently. But only one item is allowed in the nova side. So make the command allow only one policy. Change-Id: Ifd2d084faa2b849d6ee466d9accbad21b6a4e11b Closes-Bug: #1767287 - Make sure microversion < 2.62 does not show host(Id) for instance actions This adds a simple assertion that when microversion < 2.62, the "nova instance-action" CLI does not show host or hostId output. Related to blueprint add-host-to-instance-action-events Change-Id: I6e0866d9daff75046a5e82f57ff745d494b4b5ed - Microversion 2.62 - Add host/hostId to instance action event Adds support for microversion 2.62 which adds ``host`` (hostname) and ``hostId`` (an obfuscated hashed host id string) fields to the instance action ``GET /servers/{server_id}/os-instance-actions/{req_id}`` API. The event column is already included in the result of "nova instance-action " command, therefore does not have any CLI or python API binding impacts in the client. Related nova API change: I2f8b4a12a088b9ed96b428eafde2e0c478fb1db5 Part of blueprint: add-host-to-instance-action-events Change-Id: Iee7e1a3a22249c98873aa96694fd4885916cd097 - Trivial: Update pypi url to new url Pypi url changed from [1] to [2] [1] https://pypi.python.org/pypi/ [2] https://pypi.org/project/ Change-Id: I2b4af1f3d89b775657e03b801ec84ef498ca24c8 - [CLI] Fix token auth type There are 2 known issues which breaks token auth method in CLI: * The wrong check of flag (the check should be for --os-token since arguments are not parsed at that moment) is performed in CLI inner method `_append_global_identity_args`. It led to usage of "password" auth type by default[1] even if `--os-token` cli argument is specified. If `--os-auth-type` is specified to token, keystoneauth1 library makes the right decision[2]. * Based on an auth type, keystoneauth library registers different CLI arguments[3]. It means that `--os-username` argument is available only in password auth type, `--os-token` is available only in token auth type, etc. It also affects the way in which the python code should access such arguments. The arguments which are unrelated to the selected auth type are omitted from the parsed arguments object. That sounds reasonable, but unfortunately the code assumes the unrelated arguments are always present which leads to an AttributeError. Combination of these 2 issues made token auth type broken in CLI layer. [1] https://github.com/openstack/python-novaclient/blob/ee2221f0526c4a6bed431229e363c740d07b8ee9/novaclient/shell.py#L255-L257 [2] https://github.com/openstack/keystoneauth/blob/14dd37b34c4821abf145ea24e593eddaa9f607c8/keystoneauth1/loading/cli.py#L51-L52 [3] https://github.com/openstack/keystoneauth/blob/14dd37b34c4821abf145ea24e593eddaa9f607c8/keystoneauth1/loading/cli.py#L65-L73 Closes-Bug: #1659015 Change-Id: Ibc861d396b71fe105288d8336623cc22cf92523e - Merge "Microversion 2.61 - support extra_specs in flavor API" - Merge "Fix comments in novaclient/tests/unit/fakes.py" - Microversion 2.61 - support extra_specs in flavor API Starting from microversion 2.61, the responses of the 'Flavor' APIs include the 'extra_specs' parameter. Therefore 'Flavors extra-specs' (os-extra_specs) API calls have been removed in the following commands since microversion 2.61. * nova flavor-list * nova flavor-show Change-Id: I10d621d9b62764114d55cb368e720d182eaffd11 Implements: blueprint add-extra-specs-to-flavor-list - Fix comments in novaclient/tests/unit/fakes.py Replace 'Assert than' with 'Assert that'. TrivialFix Change-Id: I426895467dfa693214f78b495d82e730f4307b9d - Stop printing flavor details on successful flavor-delete It's weird that the flavor-delete CLI would print out the details of the flavor the user just deleted, rather than give some confirmation message, or simply not print anything out at all, which is arguably more expected behavior when deleting a resource. This change simply removes the output on successful deletion which brings "nova flavor-delete" more inline with other delete CLIs, including "openstack flavor delete" behavior. While in here, the variable and docstring code is updated to reflect reality and a release note is added in case anyone was ever relying on this odd behavior. Change-Id: Ie3e07b45cc70213cde4e6077c604c9f2835c75ad Closes-Bug: #1764420 - Merge "Replace GB with GiB" - Merge "Fix AttributeError in getting a resource ID" - Replace GB with GiB In documents and comments, 'GB' (gigabyte) is used. Strictly 'GiB' (gibibyte) should be used. So replace 'GB' with 'GiB'. Change-Id: Ic03f202d4fe357bc6400275abdccd4b37521f4a3 Closes-Bug: #1521791 - Fix AttributeError in getting a resource ID In the 'wait_for_resource_delete' method of the 'ClientTestBase' class, the following statement is executed when timeout. self.fail("The resource '%s' still exists." % resource.id) The 'resource' variable is passed in the argument of the 'wait_for_resource_delete' method. It is sometimes a string which is a resource ID. When it is a string (a resource ID), AttributeError is raised at the statement. This patch fixes the issue. Change-Id: I558026de54a5cc75359225b50054934a220f3e5c Closes-Bug: #1704132 - Fix validation for command arguments In the "Update Aggregate" API, if both an availability zone and a name are not specified, a 400 error is returned. It should be checked in the novaclient side (nova command). So add the validation for it at the 'nova aggregate-update' command. Change-Id: If50579ef3572a10b67e6da32e3258917901e9d9d Closes-Bug: #1696891 - Merge "add lower-constraints job" - Updated from global requirements Change-Id: I2bbc33f1b8047c28ee257f588f5b33ba0e11dbbd - add lower-constraints job Create a tox environment for running the unit tests against the lower bounds of the dependencies. Create a lower-constraints.txt to be used to enforce the lower bounds in those tests. Add openstack-tox-lower-constraints job to the zuul configuration. See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html for more details. Change-Id: I5c23fc5f4e31b461255865fb8973cc05c448e364 Depends-On: https://review.openstack.org/555034 Signed-off-by: Doug Hellmann - Merge "Fix local test fails with pypy" - Fix local test fails with pypy tox: ERROR: pypy: InterpreterNotFound: pypy Maybe we need to remove pypy-constraints from envlist in tox.ini because there is no effect to review. Change-Id: I1ff1cb103dcaad1396bc2bda487165feae6b0931 Closes-Bug: #1756108 - Updated from global requirements Change-Id: Iee40a8c0d7c6732cddac59e99ee39ebe3baf68fe - Updated from global requirements Change-Id: Ic73c18e76a4200a82d88d5eb63c24eab6b15cac4 - Updated from global requirements Change-Id: I34e1019d1a78344bc4d4bec72d7a8639a214933d - Updated from global requirements Change-Id: I3329b703944b9f39df1f6b70878abc0c58c2fc12 - Add os-testr in test-requirements.txt The py27 and py35 jobs fail because the subunit-trace command is not found. The command is utilized in tools/pretty_tox.sh. But os-testr is not included in test-requirements.txt. So add it to fix the gate job failures. Change-Id: I5ea7269d75413ebcc1311e4d9e6e1d1f60092cc9 Closes-Bug: #1753898 - Merge "Fix a comment in novaclient/api_versions.py" - Fix a comment in novaclient/api_versions.py 'cliutils.arg' has been replaced with 'utils.arg' in the following patches. Iaec234fbcf4d0f8c7e8f2175eae11d3083a62090 I12b03aa0a13c95ae949adf7e876c675ce309bae5 I405044af3912d86da66df05413edfc724bc102d0 I8103adafde7d8b3a101181366639314740f9a25a So replace 'cliutils.arg' with 'utils.arg' in a comment. TrivialFix Change-Id: Id26b941979dd1a94c20c05d4debcd0ed2f1470e0 - Merge "Clean imports in code" - Clean imports in code In some part in the code we import objects. In the Openstack style guidelines they recommend to import only modules. [1]: "Do not import objects, only modules". [1] https://docs.openstack.org/hacking/0.10.3/ Change-Id: Id4b47eeae1d3e86a3cb259c32fcb376ffbd3f8c7 - Fix the docstring for the update method It is impossible to provide a description to update method in versions 2.0-2.18. But the docstring of the method says that it can update a description. Change-Id: I832e8a752779277a045bd127e2e6c6a3ae88f840 - Updated from global requirements Change-Id: I7288c55f19aec77faf8d1a16ec1b625f2cc15ce1 - Updated from global requirements Change-Id: Idab1627d1b4d6fecc02d482f931a9ae072b46f09 - Merge "Remove 2 redundant methods" - Remove 2 redundant methods I suppose that methods get_resource_manager_extra_kwargs and add_resource_manager_extra_kwargs_hook were designed in those days when Nova API had extensions. Nowdays, Nova API has strict schema validation of requests, so no additional arguments are allowed and these methods look redundant. The fact that get_resource_manager_extra_kwargs lists of the objects added by add_resource_manager_extra_kwargs_hook whereas add_resource_manager_extra_kwargs_hook is not called anywhere doesn't add chances for leaving these methods in our code. Compatibility: both methods are designed for CLI and the CLI behaviour will not change after removing them, so we can do a cleanup without following standard deprecation cycle. Change-Id: Id61457c3db8a17e2294dc579b2519873927fec48 - Merge "Fix crashing console-log" - Fix crashing console-log Because of encoding issue, the "nova console-log" is prone to a stack dump, as explained in the bug report. This patch sets the encoding output of stdout to utf8 before attempting to print in it. Change-Id: I63bc3dc8807021f5a97f58b0fe13a10d93688c7e Closes-Bug: 1746534 - Fix listing of instances above API max_limit Output of `nova list` command contained only `max_limit` entries even when there were more. The list needs to be obtained in multiple requests and the paging loop was terminated prematurely. Change-Id: I4194e6d5e34ecc0ac704851c08bb895e223aa850 Closes-Bug: 1743532 - Merge "Add CLI to show instance usage audit logs" - Merge "Implement hypervisor hostname exact pattern match" - Merge "nova limits ERROR (Exception): Field names must be unique" - Merge "Zuul: Remove project name" - nova limits ERROR (Exception): Field names must be unique Running `nova absolute-limits` or `nova limits` can fail when unaccounted for limits are returned This works OK for a standard Vanilla OpenStack deployment today, but it is quite fragile if new limit types are introduced, or if a deployer sends back other custom limits. For instance, my limits include `maxTotalPrivateNetworks` and `totalPrivateNetworksUsed` limits, which do not map accordingly, and thus result in an error. This happens when 'Others' field(custom limit type) is occuring more than once which is not handled in code causing multiple columns having same name. Which throws exception and does not pretty prints absolute limit. This fix should also fix any future custom limits. Closes-bug: #1546767 Change-Id: I1d3cf707722fc71c20cf4ec517b3f4f4875480e0 - Zuul: Remove project name Zuul no longer requires the project-name for in-repo configuration. Omitting it makes forking or renaming projects easier. Change-Id: I9f67465dc14d90d2a79bd3e3964bb4aa14a59c06 - Implement hypervisor hostname exact pattern match When starting cold migration with nova command "nova host- servers-migrate compute-1", the migration started from all compute hosts starting with name "compute-1", not only from compute-1 host. The same thing happens to "nova host-meta", "nova host-evacuate", "nova host-evacuate-live" as well. With the "--strict" option added to these nova commands, the action will be applied to a single compute with the exact hostname string match, but not to the computes with hostname substring match. Error handling is also added to these nova commands such that when specified hostname name does not exist, "NotFound" will be returned. Closes-Bug: #1667794 Change-Id: I5610efa160864b0d91cd67961883a6bec5bb8dd0 - Add CLI to show instance usage audit logs Currently we can get instance usage audit logs via Nova API, and the docs also update for it. It is necessary to add that to our client and CLI. This patch adds the following command. nova instance-usage-audit-log [--before ] Co-Authored-by: Takashi Natsume Change-Id: I4ef8e40c322f1768ee1b5e01e9681cab0e2804bd - Merge "Updated from global requirements" - Update reno for stable/queens Change-Id: I241ad34451a8e1e26dd4bc679b80cc02da176d53 - Updated from global requirements Change-Id: I0aa83fc265f2c274d703fa402c09887b32204aa1 - Merge "Add support for microversion 2.60 - volume multiattach" - Merge "Microversion 2.59 - Migrations list pagination" - Add support for microversion 2.60 - volume multiattach There are no client-side changes for this, we're just registering the microversion support. Someone would have to use this microversion when trying to attach a multiattach capable volume to a server. Related nova API change: I02120ef8767c3f9c9497bff67101e57e204ed6f4 Part of blueprint multi-attach-volume Change-Id: Iff590954e7e12ee630140024f70c98d3cfa14a31 - Merge "Microversion 2.58 - Instance actions list pagination" - Merge "Add support for the 2.57 microversion" - Microversion 2.59 - Migrations list pagination Add optional parameters 'limit', 'marker' and 'changes-since' to the os-migrations endpoints for pagination. /os-migrations?limit={limit}&marker={migrations_uuid} /os-migrations?changes-since={changes-since} Change-Id: I7437a61ee07c339b43d008204d1416044a407b68 Implement: blueprint add-pagination-and-change-since-for-migration-list Depends-on: I7e01f95d7173d9217f76e838b3ea71555151ef56 - Merge "Update documentation links" - Update documentation links Update doc links according to OpenStack document migration Change-Id: I189f2b31456203c80234a44cbf87534f8c159ed0 - Updated from global requirements Change-Id: Ie5cb08fa1b2724e7065009136b7fb4ce49e35a08 - Add missing spaces in `nova list --changes-since` help trivialfix Change-Id: I394bfa9c2232f5cb150be35aa25d7b895fc40046 - Microversion 2.58 - Instance actions list pagination Add optional parameters 'limit', 'marker' and 'changes-since' to the os-instance-actions endpoints for pagination. Implement: blueprint pagination-add-changes-since-for-instance-action-list Change-Id: Ie66d9b00c90236fdcc01aed7649dc7f163aa323e - Add support for the 2.57 microversion With the 2.57 microversion, we: * Deprecate the --file option from the nova boot and nova rebuild CLIs and API bindings. * Add --user-data and --user-data-unset to the nova rebuild CLI and API bindings. * Deprecate the maxPersonality and maxPersonalitySize fields from the nova limits and nova absolute-limits CLIs and API bindings. * Deprecate injected_files, injected_file_content_bytes, and injected_file_path_bytes from the nova quota-show, nova quota-update, nova quota-defaults, nova quota-class-show, and nova quota-class-update CLIs and API bindings. Part of blueprint deprecate-file-injection Change-Id: Id13e3eac3ef87d429454042ac7046e865774ff8e - Remove deprecated services binary CLI arg The services CLI 'binary' arg was deprecated in Pike via change Idd0d2be960ca0ed59097c10c931da47a1a3e66fb because with cells v2 support in the API, the binary argument for the enable/disable CLIs doesn't make sense as the only binary those work with is 'nova-compute'. So this removes the deprecated argument and hard-codes the value to be 'nova-compute'. Change-Id: I60490f3d74212bb172dccc1c7d337198e1021236 - Remove deprecated fixedip/floatingip/virtual interface CLIs/APIs The add-fixed-ip, remove-fixed-ip, floating-ip-associate, floating-ip-disassociate, and virtual-interface-list CLIs and related python API bindings were deprecated in the 9.0.0 release in Pike via change Ie76283962c375b735f30ccb3053db07cf2330de2. This removes the CLIs and related python API bindings and will go into the 10.0.0 release. Change-Id: Icb667973c65d26395db660b1c7b919550db66d08 - Remove deprecated os-hosts CLIs and python API bindings These were all deprecated in the 9.0.0 release in Pike via change I79091edf5a2569e49e79deba312456fdcdee09e1 and can now be removed. This will go into the 10.0.0 release. Change-Id: I85a287ff2666c2dcdcbbc8fd6c2e285176f7a67a - Remove deprecated cloudpipe CLIs and python API bindings These were all deprecated in the 9.0.0 release in Pike via change I329ee0e5fcf068ea7e54b99fbaf94a524647f660 and we can remove them now. This will go into 10.0.0. Change-Id: Ia90a49112847e365fcdaf581dc9ee32f9a20fd85 - Remove deprecated certs CLIs and python bindings The certs CLIs and python API bindings were deprecated in release 9.0.0 in Pike via change: If3e1e40947a8ad3f665f6a96d46de8cef6a2a190 We can safely remove them now and we'll do a major version release for this. Change-Id: I91a49b03e4d3c661ef6072962fac416f2dc37d0b - Remove deprecated MigrationManager.list cell_name kwarg The cell_name kwarg was deprecated in Pike: I54468682d5391668a513e708e26bc3c165c95ca1 And the CLI option was removed earlier in Queens (not yet released): I5d11eda2a6b35de98f0484492f597a87df882013 But that change forgot about the python API binding code so this change removes that as well and updates the release note. Change-Id: I0cf808eaf7df80e221b412d2374b81fd402bd037 Closes-Bug: #1668743 - Fix being able to create a reno using tox -e venv Iace251446bafbd8963bc5a073de50ade583f6e46 moved the reno dependency to a new requirements file which broke the ability to create a release note using: tox -e venv -- reno new This fixes it by adding the doc/requirements into the venv tox environment. Change-Id: I243d4d5148964511a83855d2b1b451aa1543b98b - Merge "Remove incorrect legacy QuotaSet.id property" - Merge "Updated from global requirements" - Remove incorrect legacy QuotaSet.id property The QuotaSet.id property was added in commit d17505462db3876a781016b16464e8ed967ae50d assertin that the os-quota-set response had no id in it, but it always has, ever since the API was added in commit 6220c4276e30c633ffc4165ce6db0d120c0e88a7 in nova. This change removes the incorrect property and fixture data that returns a tenant_id in the response which the API doesn't actually do. The test_quota fixture data is also updated to fix the name on the key_pairs key and add missing keys in the response for server groups. Change-Id: Ifaf59813e75876334dcc2ac239ed6bdddb495aa7 - Updated from global requirements Change-Id: Ib79f8a8b2e14d1f2c7a1143b2f29ac1571f31299 - boot: error out if no images match the property from --image-with We may fail to get a image when setting --image-with meta_key=meta_value. We should error out, rather than sending a request then waiting for the errors from the remote side. Change-Id: I54a645a533e39b069e50fdee6893f8b0cced494c Signed-off-by: Chen Hanxiao - Merge "Update new documentation PTI jobs" - Update new documentation PTI jobs For compliance with the Project Testing Interface as described in [1]. For more detailed information, please refer to [2]. [1] https://governance.openstack.org/tc/reference/project-testing-interface.html [2] http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html Change-Id: Iace251446bafbd8963bc5a073de50ade583f6e46 - boot: show warning if more than one match when setting --image-with When setting --image-with meta_key=meta_value, we may got more than one results. We selected the first matched one silently. This patch prints a warning message for this scenario. Change-Id: I5be73fb61fb08d3abd0a509f3ac5cb6ea623c85a Signed-off-by: Chen Hanxiao - Merge "flavor create: clarify --swap description" - Remove irrelevant note Since Id649d16ec2cdeb04bbaf2239a5e813abcca9c65d do_rename method does not exist so we can remove related note. Also, the note is incorrect, so do not change the check. Change-Id: I4bb0ce22b86db1cb8e474f563e50db11a838d411 - flavor create: clarify --swap description --swap will add a additional storage device, which not affect the original swap partition/device. This patch will clarify this misleading description. Change-Id: I58c8157844cb4ece0cc43d7097d75a3ac4fa4d02 Signed-off-by: Chen Hanxiao - Updated from global requirements Change-Id: If6afc12a2e76adcd3c7ceb085f4c2cb86fa91a7b - Merge "CommandError is raised for invalid server fields" - Updated from global requirements Change-Id: Ib2e28ffd160afd28e57531fbe548185aeb4dee45 - Optimize jobs run on novaclient novaclient run 2 jobs for functional tests - novaclient-dsvm-functional-identity-v3-only (non-voting) - novaclient-dsvm-functional-neutron These 2 were added when neturon and identity v3 were not default in devstack. Now both run as default and we do not separate job to run. This commit does below changes: - delete the 'novaclient-dsvm-functional-neutron' - In 'novaclient-dsvm-functional-identity-v3-only' - make 'novaclient-dsvm-functional-identity-v3-only' as voting - cleanup some 'if' condition which are hardcoded true now - rename 'novaclient-dsvm-functional-identity-v3-only' to 'novaclient-dsvm-functional' NOTE: this not going to backport to stable branch as they seems running identity v2 and v3 in those jobs. Let's keep the same setup there. Change-Id: I4bc564e548876ef4d3b30e736c0055f19c062319 - Merge "Remove deprecated command in nova.rst" - Remove deprecated command in nova.rst nova image-list has been deprecated in python-novaclient, so the documentation should be updated. Change-Id: Iacd9e0e6c99ef0e5c40c716d0aa56ba0f2972fc3 Closes-Bug: #1737074 - CommandError is raised for invalid server fields When listing servers with fields of invalid type, a TypeError was raised. With this change and in order to ensure the validity of the fields, we are whitelisting them using the keys of the dictionary Resource.to_dict(). For all fields not in the whitelist a CommandError is raised. Change-Id: I647fa611d29745f830daadac1c3f9c1c71c2733a Closes-Bug: #1733917 - inject file: add method of showing quota value of injecting files for 'rebuild' command Adding command of how to get the quota value of injecting multiple files, as we've already done in 'boot' command. Change-Id: Ib5ee9658a9e15b849dce729719f8297d2108de57 Signed-off-by: Chen Hanxiao - Merge "Microversion 2.56 - Enable cold migration with target host" - Merge "Avoid tox_install.sh for constraints support" - Updated from global requirements Change-Id: I3773f6a1ff19e9e0d051ab77df9653686ec7bd40 - Microversion 2.56 - Enable cold migration with target host Change-Id: I4deea811ffae3e7944d5ec10ca0bbf2bfa056a7c Implements: blueprint cold-migration-with-target-queens - Avoid tox_install.sh for constraints support We do not need tox_install.sh, pip can handle constraints itself and install the project correctly. Thus update tox.ini and remove the now obsolete tools/tox_install.sh file. This follows https://review.openstack.org/#/c/508061 to remove tools/tox_install.sh. Change-Id: I7f06c0be47f57a9c1ee3cadc7328b1b1b138b3cd - Merge "Move zuulv3 jobs to project repo" - inject file: add description of injecting multiple files. We support inject multiple files by one cmd. This patch adds some description and limitation in help messages. Change-Id: I481d2c83530c82e18661a13d53580501e721754f Signed-off-by: Chen Hanxiao - Merge "[ci] Use pseudo-random names for new resources" - Merge "[functional] Remove duplication of boot helper" - [ci] Use pseudo-random names for new resources Random names of resources makes the task impossible to find a test which doesn't clean resources after a launch. This patch changes name_generate method to generate names including a name of the test, which can be really helpful. Also, the simple script that prints resources after test run is added. Change-Id: Id3a743afb624dd4bf8ed3523a1916455fd93655a - Merge "Use utils.prepare_query_string instead of duplicated code" - Add support for microversion 2.55 - flavor description This adds the support for microversion 2.55 which allows creating a flavor with a description, showing the description in flavor details, and updating the description on an existing flavor. Related python API bindings are added, and the new "nova flavor-update " CLI is added. Implements blueprint flavor-description Change-Id: I0a09c0a63d2e91ef5aa31a8e43e28f8745faae14 - Use utils.prepare_query_string instead of duplicated code There are some duplicated code in nova client for generating query string. The 'prepare_query_string' method can convert dict params to query string(it transforms the dict to a sequence of two-element tuples in fixed order, then the encoded string will be consistent in Python 2&3.) This patch use utils.prepare_query_string instead of these and plus some notes in the 'prepare_query_string' method. Change-Id: Idb3c5e97f8bbcd5ec5446f776c10fa8c84b54d5d Closes-Bug: 1727968 - Move zuulv3 jobs to project repo This patch moves the zuulv3 jobs for python novaclient. Needed-By: I1508933ef77669754adf8032fc3d835960f78cb7 Needed-By: I37b02be0aeffc3a0f0516616b5294444012b8dea Change-Id: I43a8435485751748ca6228f67d401945cb32652e - Merge "Microversion 2.54 - Enable reset keypair while rebuild" - [functional] Remove duplication of boot helper The base test class for functionl tests has an unified helper method for booting VM and waiting for active status. This method can be easily extended with one new argumen `flavor` to cover the case required by `TestServersResize` test case. This patch ports `TestServersResize` to use generic helper method. Change-Id: I9a53066dbb8907ed87a70f207b1e41b5b8a66908 - Merge "Remove setting of version/release from releasenotes" - Microversion 2.54 - Enable reset keypair while rebuild Adds support for microversion 2.54 which adds resetting keypair and unsetting keypair in rebuild operation. Adds optional ``--key-name`` and ``--key-unset`` options in the ``nova rebuild`` command. The ``--key-name`` and ``--key-unset`` cannot be specified at the same time. Change-Id: Ie2a39bb29dd59c070adc94e79ea0f6473227a427 Implements: blueprint rebuild-keypair-reset - Merge "Remove SecretsHelper" - Remove setting of version/release from releasenotes Release notes are version independent, so remove version/release values. We've found that projects now require the service package to be installed in order to build release notes, and this is entirely due to the current convention of pulling in the version information. Release notes should not need installation in order to build, so this unnecessary version setting needs to be removed. This is needed for new release notes publishing, see I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting at http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html . Change-Id: Ie7a8592f29a7d809ae9bcc2577cae563210b4de9 - Merge "Stop posting to os-volumes_boot" - Remove SecretsHelper This code hasn't worked for over two years when 9ed9ab68f7d2fb98c505afc3a1079a72f15c959c was added which does API version discovery, which requires auth, which happens before the SecretsHelper is used. That was back in the 2.27.0 release in the Liberty series. Given how long this has been broken without anyone noticing, and it's undocumented and untested (basically), and python-openstackclient properly handles prompting for a password, we should just remove this code rather than try to fix it. Change-Id: I62188e73a48f6878ce920a3b4724dba101564aef Closes-Bug: #1732744 - Merge "Fix missing metavar in aggregate-update" - Stop posting to os-volumes_boot os-volumes_boot is an old clone of /servers and is not documented in the API docs. POST to /servers. Change-Id: If0161a89877f19f24e91d780cf227fdc48e7e860 - Updated from global requirements Change-Id: Iefb2680c35d9d1eab550f914bb46f621162cf1c9 - Fix missing metavar in aggregate-update Fix missing metavar in aggregate-update in order to fix inconsistency with other options. If 'metavar' is not added, 'NAME' is used instead of ''. But it should be ''. TrivialFix Change-Id: I22c012bac3381f63a3bfb5a5d0c6f0260d174695 - Updated from global requirements Change-Id: Ie231f3abecb182f46019ad611aefb77fb6fadce6 - Updated from global requirements Change-Id: Id0466fb1c6defa71c8b588f731df22c2f009cd19 - Use generic user for both zuul v2 and v3 Zuul v2 uses 'jenkins' as user, but Zuul v3 uses 'zuul'. Using $USER solves it for both cases. Change-Id: Ia3f2646bd3b5fa87c90c8dac57117fd29d73706b - Update "The nova Shell Utility" in the user guide Change-Id: I02025f364a11b7f41935fe835407852fc37b4d87 Closes-Bug: #1723895 --- python-novaclient | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-novaclient b/python-novaclient index 98ef444974..85e9b58e9b 160000 --- a/python-novaclient +++ b/python-novaclient @@ -1 +1 @@ -Subproject commit 98ef444974fed3bed7009e5f4fb92002404e5e63 +Subproject commit 85e9b58e9b638bc49679d2c7460dd1db7f39f48a