From 07016cc216a44afb705f183553414997eaad074d Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Tue, 8 Jan 2019 15:39:58 +0000 Subject: [PATCH] Update git submodules * Update python-openstackclient from branch 'master' - Use os-cloud instead of OS env vars for functional tests In order to support switching auth contexts, such as for registered_limits which take a system scoped token, switch the functional tests to using the --os-cloud command line parameter. However, honor the OS_CLOUD env var as a way that someone can select a different cloud, including 'envvars', to use. Use devstack-system-admin cloud for limit tests Keystone requires these to have system scope now. Change-Id: Ia81eebd3e00ae986cf3ba7e3d98f3e8a1647b622 - Merge "trivial: remove commented-out code" - Merge "Support enable/disable uplink status propagation" - Merge "More volume functional test fixes" - Merge "Remove testr.conf as it's been replaced by stestr" - Merge "Update the URL in doc" - Add osc repo to the base job definition The osc-functional-devstack job is to be run against devstack changes in order to verify that the devstack-tox-functional job, which our job is based upon, doesn't introduce a regression[0]. In order to prevent this from failing, include our own repo as required-project. [0] https://review.openstack.org/526115 Change-Id: I782cd51dda1477c2e3a067cd902a3d3f29490083 - Remove testr.conf as it's been replaced by stestr Change-Id: Ia596789a916b9271933c5b10f00399d83f18d44a - More volume functional test fixes Remove the use of class setup/teardown from volume transfer functional tests as that just doesn't work too well here. Also wait for volume status before attempting transfer request operations, some test nodes take a while to create the volumes. Change-Id: Ib9378ab5c973deb2aa86c9b9ed31408f3a05115a Signed-off-by: Dean Troyer - Merge "Modify the help message for 'registered limit set'" - Merge "Use devstack functional base job" - Merge "Supports router gateway IP QoS" - Merge "Replace assertEqual(True/False, expr) with assertTrue/assertFalse" - Merge "Don't display router's is_ha and is_distributed attributes always" - Supports router gateway IP QoS Adds --qos-policy and --no-qos-policy to `openstack router set`: --qos-policy Attach QoS policy to router gateway IPs --no-qos-policy Remove QoS policy from router gateway IPs Adds --qos-policy to `openstack router unset`: --qos-policy Remove QoS policy from router gateway IPs Partially-Implements blueprint: router-gateway-ip-qos Closes-Bug: #1757044 Change-Id: Ifec3b2cf9bdb59513c8bcd7bd60305506a071192 - Support enable/disable uplink status propagation Add options to enable/disable uplink status propagation on creating a neutron port. Related patches: * neutron: https://review.openstack.org/#/c/571899/ * openstacksdk: https://review.openstack.org/#/c/586687/ Depends-On: https://review.openstack.org/#/c/586687/ Change-Id: I095a98fc5f5aee62d979a16b3cd79d91ec3b9ddb Related-Bug: #1722720 - Change openstack-dev to openstack-discuss Mailinglists have been updated. Openstack-discuss replaces openstack-dev. Change-Id: I7c7fdfb71348f77aa6063ec99b3c4a90bde21d06 - Add Python 3.6 classifier to setup.cfg Change-Id: Id723040f895f06527d46755dd408dec16200c001 - Merge "Updated the take_actions for unified limits" - Use devstack functional base job We extracted some of our functional base job to the devstack repo. Consume it. Change-Id: I11e6f9dab935e4b2cd16228f031f7e0adb3a6c89 Depends-On: I84de60181cb88574e341ff83cd4857cce241f2dd - Replace assertEqual(True/False, expr) with assertTrue/assertFalse In some cases, If the result of expr is a boolen value, we shoud use assertTrue/assertFalse to instead. Because it is clear and simple. Change-Id: I53b345fc3915a7b0e737e9dd4d58fe09c746d61c - Fix i18n issue This patch fix some i18n issues in the files vapi/compute_v2.py. Change-Id: Ic4da472ca585a35ce64512cf0e72e2fe9d4c9d6e - Add volume backup import/export commands This adds commands to import and export volume backup records so they can be imported and restored on other Cinder instances or to the original instance if the service or database has been lost and had to be rebuilt. I know this is a commonly used process by some users, so it would be good to have this functionality in osc so they do not have to switch clients. More details about the export and import process can be found here: https://docs.openstack.org/cinder/latest/admin/blockstorage-volume-backups-export-import.html Change-Id: Ic95f87b36a416a2b50cb2193fd5759ab59336975 Signed-off-by: Sean McGinnis - Modify the help message for 'registered limit set' Regsitered limit set CLI takes --service, --region and --resource-name as param which can be updated along with --default limit for existing registered limit. Default limit can be updated with same value and CLI return the success. But --service, --region and --resource- name cannot be same as existing one. CLI return 409 for this case. Which is valid behaviour because more than one limit with same service and same resource cannot exist. But help message of --service, --region and --resource-name are not much clear to tell that they cannot be passed with same value. This patch clarifies the help message for resigtered limit set CLI. Reference Scenario: * openstack registered limit set --default-limit 91 64c2e97fbe904b888544ffdcab21989b limit updated sucessfully Updating limit with exsiting service and resource-name: * openstack registered limit set --default-limit 92 --resource-name snapshot 64c2e97fbe904b888544ffdcab21989b Conflict occurred attempting to store registered_limit - Duplicate entry. (HTTP 409) *openstack registered limit set --default-limit 93 --service compute 64c2e97fbe904b888544ffdcab21989b Conflict occurred attempting to store registered_limit - Duplicate entry. (HTTP 409) *openstack registered limit set --default-limit 91 --resource-name snapshot --service glance 64c2e97fbe904b888544ffdcab21989b Conflict occurred attempting to store registered_limit - Duplicate entry. (HTTP 409) Change-Id: I9e78a6250567cd981adde96946818bb016760a49 - Updated the take_actions for unified limits When user passes --region None, the find_resource of osc_lib calls get() of region. The get API of region ignores the name param returning all the regions in result. As the find_resource checks many cases against the result returned by get API. The output comes greater than 1, thus returning "More than one region ID exist" which is incorrect. However in case of region which cannot be filtered by name we do not require to check these many cases. The solution is to directly call the get method of APIs and returning No resource name exist with the xyz" on passing invaid parameter. And returning all in case of None. Thus created a new function get_resource which can be used in future too by these types of API's. Change-Id: Ib3f881d34a82af97199ce51bfbefc6f3f08599f1 Closes-bug: #1799153 - Merge "Add project param in LimitList parser" - Merge "Remove invalid 'unlock-volume' migration arg" - Merge "Add --name-lookup-one-by-one option to server list" - Add project param in LimitList parser when doing openstack limit list --project xyz_id, CLI raising error unrecognized arguments, whereas in api-ref document [1], user can pass project_id as query param.This addresses the above issue, by adding param --project in parser of LimitList. [1] https://developer.openstack.org/api-ref/identity/v3/index.html Change-Id: If4644cc99a3803f61f4a688b828aeb73977fc0dd Closes-Bug: #1798744 - Merge "image/v2: support multiple property filters" - image/v2: support multiple property filters Change-Id: I8ba40cb8ca647ec24b80c2824bb64e84430535d4 Signed-off-by: Sven Wegener - Handle multiple ports in AddFloatingIP AddFloatingIP refers to an old nova proxy API to neutron that was deprecated in nova. The neutron API for floating IP associate requires a port to be specified. Currently, the code is selecting the first port if the server has multiple ports. But, an attempt to associate the first port with a floating IP can fail if the first port is not on a network that is attached to an external gateway. In order to make the command work better for users who have a server with multiple ports, we can: 1. Select the port corresponding to the fixed_ip_address, if one was specified 2. Try to associate the floating IP with each port until one of the attempts succeeds, else re-raise the last exception. (404 ExternalGatewayForFloatingIPNotFound from neutron) This also fixes incorrect FakeFloatingIP attributes that were being set in the TestServerAddFloatingIPNetwork unit tests, which were causing the tests to use None as parsed args for ip-address and --fixed-ip-address and thus bypassing code in the 'if parsed_args.fixed_ip_address:' block. Task: 27800 Story: 2004263 Change-Id: I11fbcebf6b00f12a030b000c84dcf1d6b5e86250 - Merge "Add --key-name and --key-unset option for server rebuild API." - Merge "Make use of keystoneauth service-type filtering for versions" - Merge "Address issues from volume backend commands" - Add --name-lookup-one-by-one option to server list usually in a big cloud there are many images and flavors, while each given project might use only some of those. This patch introduces '--name-lookup-one-by-one' argument to server list command (mutually exclusive with '--no-name-lookup') When provided (or either '--image' or '--flavor' is specified) to the `server list` command, name resolving for corresponding entity is now using targeted GET commands instead of full entities list. In some situations this can significantly speedup the execution of the `server list` command by reducing the number of API requests performed. Change-Id: I59cbf3f75c55e5d3747654edcc9be86ad954cf40 Story: #2002039 Task: #19682 - trivial: modify spelling error of project Change-Id: I6cf68325bc58cfd073c5fca4eb2773d108735399 - Merge "Improve document 'openstack complete'" - Merge "Update release note version reference table" - Remove invalid 'unlock-volume' migration arg There is an optional flag that can be passed in to a volume migration to tell Cinder to 'lock' a volume so no other process can abort the migration. This is reflected correctly with the --lock-volume argument flag to `openstack volume migrate`, but there is another --unlock-volume flag that is shown in the help text for this command that does not do anything and is not used anywhere. Since there is no action to "unlock" a volume, this just causes confusion - including for Cinder developers that know this API. To avoid confusion, this invalid flag should just be removed from the command. Change-Id: I5f111ed58803a1bf5d34e828341d735099247108 - Update the Neutron CLI decoder document The floatingip-disassociate mapping had 'port' instead of '--port', also fixed a few places where 'unset' was missing from some of the mappings. Trivialfix Change-Id: I3b01db28dda674e9988176d496154fbd26e4449f - Merge "Default --nic to 'auto' if creating a server with >= 2.37" - Update release note version reference table The table indicating the openstackclient release at the time of the overall OpenStack release had not been updated since Pike. This adds release versions for Queens and Rocky. Change-Id: Icd9a72c2460fae3d1b714b6da473564e6c709ef6 Signed-off-by: Sean McGinnis - Make use of keystoneauth service-type filtering for versions The first version of the versions show command does client-side service-type filtering, which while functional, causes many more API calls than needed. Now that keystoneauth supports the filtering at the source, use it. Change-Id: I57c49e67f9cb285a5f5bc19ec53a42d10de9f0da - Improve document 'openstack complete' The openstack complete command requires bash-completion package Without the relevant package the bash completion doesn't work. Change-Id: I47c77f3e7efe112417d2b96936fcd0cafeb9442e Closes-Bug: #1798493 - Merge "Handle not having cinderclient.v1 available" - Merge "Allow endpoint filtering on both project and project-domain" - Merge "Add volume backend pool list command" - Merge "Add volume backend capability show command" - Address issues from volume backend commands This fixes some minor issues in release notes and the command list for the new volume backend commands. Also sorts the fakes used for volume unit tests to allow for multiple command update patches to hopefully reduce the odds of merge conflicts. Change-Id: Ic6e40f4c639368338cf085c68c17038f81da5361 Signed-off-by: Sean McGinnis - Handle not having cinderclient.v1 available The Cinder v1 API was deprecated several years ago and may be removed from python-cinderclient in the near future. To handle the case where v1 is no longer present, this updates cinderclient initialization to work without it and give an appropriate error if v1 is requested with a version where it is no longer available. Change-Id: I277d7b48b8ad4cce383ec3722f8117938378f615 Signed-off-by: Sean McGinnis - Add volume backend pool list command Adds an equivalent for "cinder get-pools" with "volume backend pool list" and "cinder get-pools --detail" with "volume backend pool list --long". Story: 1655624 Task: 136949 Signed-off-by: Sean McGinnis Change-Id: I826c9946ffe11340d44ad57914f72fc2a72b6938 - Add volume backend capability show command Adds and equivalend for "cinder get-capabilities" command to show the capabilities supported by a Cinder backend. Story: 1655624 Task: 26947 Change-Id: I38686a26cd503e45ce0102705a6632994ef10274 Signed-off-by: Sean McGinnis - Allow endpoint filtering on both project and project-domain The --project and --project-domain flags are currently mutually exclusive for listing endpoints, however the --project-domain argument is supposed to help with filtering projects with colliding names. They should be allowed together. Story: 2004018 Task: 27007 Change-Id: I7340e01f509e3515f07cb46f175fb603f1ce8b67 - Add --key-name and --key-unset option for server rebuild API. Change-Id: I6d4793a8e961080ea1d6d414cef8d6bbed0c53e7 Story: 2002609 Task: 22228 Signed-off-by: Fan Zhang - Add --property option to 'server rebuild' command Add '--property' option to the 'server rebuild' command, to provide the ability to specify properties of the rebuilt instance. This is equivalent to the '--meta' option of the compute's 'nova rebuild' command. Change-Id: I25ea6622e970416090109316e1e28fab8b0b3f07 Story: #2003979 Task: #26922 - Merge "Add metavar for name parameter in subnet create" - Merge "fix tox python3 overrides" - Remove python-ceilometerclient Project is retired [1]. [1] https://github.com/openstack/python-ceilometerclient Change-Id: Idc3a340c99c9fd79d80c90e45fd9a1c44c205218 - trivial: remove commented-out code These comments have existed from the beginning. But they seem to be meaningless. Change-Id: Ic38272ecfb321d77219d477634e9e29b968e7f00 - Add monascaclient to `not plugins` list Change-Id: I377a018a4e3c7b6fa44ce9323d1ee2edbd0e4728 - Fix some spaces in help messages Fix some missing and not necessary trailing spaces in the network v2 API files. Also fixed one block indent that was different from all its friends. Trivialfix Change-Id: Ic6491203c2fb9085543d69f0bb5f38e5a96039da - 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: I051f1c18b719a27372b626d483e47327085dd3b7 Signed-off-by: Doug Hellmann - Update the URL in doc Change-Id: I1c0c58dada83a930fafc7141d5446c754ca5c80c - Fix help message for subnetpool default-quota value Default pre-project quota is the number of IP addresses that can be allocated from the subnet pool. For example, with a quota of 128, I might get a 64 addresses subnet1, and 16 addresses subnet2, and still have room to allocate 48 more addresses in the future. Change-Id: Ia0ba827790b190647aed990e47347560fc9e9f0c - Fix 'project purge' deleting wrong project's servers and volumes Project purge would delete the servers and volumes for the project the user is currently authenticated for, regardless of the --project flag. Note: This change means that no server at all will be deleted if the logged in user doesn't have the get_all_tenants permission set in the Nova policy (default: admin_api). This doesn't appear to be an issue with Cinder as the default rule appears to be admin_or_owner. Change-Id: If1c54e24e1482438b81c3c32fd5fc9fdd7a7be04 Story: 1747988 Task: 13854 - Add metavar for name parameter in subnet create Change-Id: I2511677006687fff3166441c51e91191492962f1 Closes-Bug: #1747731 - Merge "osc-included image signing (using openstacksdk)" - osc-included image signing (using openstacksdk) This extension adds image signing functionality to the "image create" command. Therefore, new CLI options --sign-key-path and --sign-cert-id have been added. This patch uses openstacksdk as the signing backend library instead of cursive. Therefore, requirements and lower_constraints have been updated to use the openstacksdk version 0.17 or higher. Depends-On: Idc15b9a12d408bd4b2e096da8402c374be56f9fa Change-Id: Ia20bc02a49c3fbeb9222e485e3396395f4ab817a Story: 2002128 Co-Authored-By: Markus Hentsch - Use templates for cover and lower-constraints Use openstack-tox-cover template, this runs the cover job in the check queue only. Use openstack-lower-constraints-jobs template Remove jobs that are part of the templates. Change-Id: Id210b2f15dcba9dcf9ad75e0436995e7d5c1b62b - 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: I1d186a6759bd3e633661c75e62545d0d56700244 Story: #2002586 Task: #24320 - 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: I1681490fcaa52593abcbf8f935cbe1df7769f2eb Story: #2002586 Task: #24320 - 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: If0416171105673b6ed031398e41d46257fe113eb Story: #2002586 Task: #24320 - 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: I43acfa46c1df8912ae641529f3cc975c8e752480 Story: #2002586 Task: #24320 - Merge "Deprecate volume create --project and --user options" - Merge "Detailed help message for QoS max-burst-kbps value" - Merge "Fix inconsistency (nit)" - Deprecate volume create --project and --user options Cinder's volume create API does not support overriding the project_id and user_id, and it silently igores those API inputs. Cinder always uses the project and user info in the keystone identity associated with the API request. If a user specifies the --project or --user option, the volume create is aborted and a CommandError exception is raised. This prevents a volume from being created, but without the desired project/user values. A user wishing to specify alternate values can still do so using identity overrides (e.g. --os-username, --os-project-id). Story: 2002583 Task: 22192 Change-Id: Ia9f910ea1b0e61797e8c8c463fa28e7390f15bf9 - Fix inconsistency (nit) Word choice of description for "host-evacuate-live" is slightly different from that in novaclient ("migrate of" instead of "migrate off"). https://github.com/openstack/python-novaclient/blob/master/doc/source/cli/nova.rst#nova-host-evacuate-live They are supposed to be exactly the same, so use "migrate off" to keep consistent. Change-Id: Ie54c6ed83b6e9a3116e1832b3fb36dd80781366d - Detailed help message for QoS max-burst-kbps value For QoS rule type bandwidth-limit the max-burst-kbps value for ovs and linuxbridge is suggested to be 80% of the maxkbps value, let's give a detailed help message for the CLI user. For details see https://docs.openstack.org/neutron/queens/admin/ config-qos.html#user-workflow Change-Id: Ia6e38ec7052b7af64880c2f4c5e242d7cb980df5 Closes-Bug: #1777866 - Merge "Add DNS support to floating IP commands" - Merge "Add dns-domain support to Network object" - Merge "Fix missing trailing spaces in network help messages" - Merge "Fix broken gate jobs" - Fix broken gate jobs This patch aims at fixing the broken gate jobs because of cinder and glance patches [1], [2], [3] and [4]. * Remove parameter `--source-replicated` to drop volume replication v1 support * Address some timing issues with volume transfer requests * Only run Image v1 tests when the test cloud has v1 available * Get tolerant of unexpected additional attributes being returned in Image data [1].https://review.openstack.org/#/c/586293/ [2].https://review.openstack.org/#/c/532503/ [3].https://review.openstack.org/#/c/533564/ [4].https://review.openstack.org/#/c/578755/ Co-Authored-By: Dean Troyer Co-Authored-By: Monty Taylor Depends-on: https://review.openstack.org/588664 Change-Id: I2a785750e92155185d3344e6116c7f5c6fdd3cbe Signed-off-by: Fan Zhang - Add DNS support to floating IP commands Add the DNS domain and name options to the ``floating ip create`` command. Also add these two columns to the output of the ``floating ip list --long`` command. Change-Id: Id4cb18b51b252f19b87b24ec5d77183771189d17 Story: 1547736 Task: 13114 - Fix missing trailing spaces in network help messages Trivialfix Change-Id: I1eeab576e7f50d858860a19c045f24a33449dc92 - Update reno for stable/rocky Change-Id: Ieb4130d9f9d420fb3b858b6972a1f2a896fa7fc4 - Merge "Release note cleanup for 3.16.0 release" - Merge "Don't sent disk_over_commit if nova api > 2.24" - Release note cleanup for 3.16.0 release Change-Id: I64efea562117706529c4b474085f5c12939ba4d6 Signed-off-by: Dean Troyer - Merge "Add command to show all service versions" - Merge "Support --community in openstack image list" - Merge "Implement support for project limits" - Merge "Implement support for registered limits" - Merge "compute: host: expand kwargs in host_set() call" - Merge "Support filtering port with IP address substring" - Support --community in openstack image list "--community" was added to "image create" and "image set" previously, but was missed in "image list". Change-Id: I959fdd7f67ae62c8326659ce52389228152ec019 Story: 2001925 Task: 14453 - Merge "Fix error with image show when image name is None" - Don't sent disk_over_commit if nova api > 2.24 In API microversion 2.25 Nova removed the disk_over_commit parameter to the live migration server action. This patch makes sure that we don't include it in our request if we're running with 2.25 or higher. Story: #2002963 Task: #22966 Change-Id: I1bbdd33be96d82422a05982508e370237c3560f3 - Merge "Do not require port argument when updating floating IP" - Fix error with image show when image name is None Need to bump osc-lib to 1.10.0 Closes-Bug: #1736696 Depends-On: I2aab5cc1f550848bda2b90ef7ef9a60f07b88996 Change-Id: I7420204f28d36529354e5671bd88587d9b15bb06 - Add command to show all service versions Knowing what services and what versions of those services exist on a cloud isn't always a spectacular experience. Add a command that will use get_all_version_data from keystoneauth to produce a report of the available services and the version info for each service. Depends-On: https://review.openstack.org/584944 Change-Id: I84751c175d0c5f6d857a5473d2db6d5f1b41f946 - Implement support for project limits This commit let's users manage limits via the command line. bp unified-limits Change-Id: I7c44bbb60557378b66c5c43a7ba917f40dc2b633 - Implement support for registered limits This commit adds support for users to manage registered limits via the command line. bp unified-limits Depends-On: https://review.openstack.org/#/c/574391/ Change-Id: Id8377363f7a3248b45aeeba21d2acc02684a0305 - Pass volume snapshot size to volume create When creating a volume from a snapshot, the size parameter is required and type is checked. Since we have to pass something and it needs to be a valid data type (None is not acceptable) grab the size from the snapshot object and pass it. Change-Id: Ie23e3d23828919234e40336b5c65b22e140d337c - compute: host: expand kwargs in host_set() call `host_set()` expects `status` and `maintenance_mode` as keyword arguments, but in `SetHost.take_action()`, it is called without expanding the keyword arguments. So it's called as ``` host_set(host, {'status': 'enable'}) ``` instead of ``` host_set(host, status='enable') ``` Change-Id: If0b37ac60091161a892bfc694fce31a988f66005 Task: 23023 - Merge "Slow down and retry aggregate create/delete to lessen race" - Merge "Fix docs from I0dc80bee3ba6ff4ec8cc3fc113b6de7807e0bf2a" - Merge "Skip calls to glance and nova when got no servers" - Merge "Replace pbr autodoc with sphinxcontrib-apidoc" - Fix lower-constraints.txt During the change https://review.openstack.org/#/c/573216/ neutron-vpnaas lower-constraints.txt looks out-of-date. This commit fixes lower-constraints.txt. Change-Id: Id9cfb463a98bdcc3c45505d8701c515549ecaa55 - Replace pbr autodoc with sphinxcontrib-apidoc This fixes local building of the documentation using tox, and allows the gate to stop relying on pbr and move completely to the new docs PTI. http://lists.openstack.org/pipermail/openstack-dev/2018-March/128594.html Change-Id: I485acda07098a435753e91c1ca45e586de199c35 - Merge "Make Profile fallback go bye-bye" - Skip calls to glance and nova when got no servers save (potentially many) HTTP calls to Glance API for image list and a call to Nova API for flavor list when the server list actually returned no servers. Change-Id: I93a56138c50b82fb4dce67a2f788107f71c5f423 Story: #2002039 Task: #19681 - Slow down and retry aggregate create/delete to lessen race Change-Id: I676894c1bfd3156313d88e6457250b9ff226118b Signed-off-by: Dean Troyer - Merge "Retry floating IP tests" - Retry floating IP tests test_server_attach_detach_floating_ip() has a test for server add/remove floating IP that seems to be racy, add a retry loop to let neutron and nova do their thing before calling it bad. Change-Id: I999a0d7dae1706d746053bafb7ab4e3b791d0042 - Support filtering port with IP address substring Change-Id: I9559f1c0a6db943705bd32aefb60d7ea7054dd1b Related-Bug: #1718605 - Merge "Adding api_version to FakeApp" - Merge "Display private flavors in server list" - Merge "Add ability to filter image list by tag" - Fix docs from I0dc80bee3ba6ff4ec8cc3fc113b6de7807e0bf2a The CLI usage docs should mention the microversion restriction for creating a flavor with a description and setting a description on a flavor. Also, the release note talks about setting the server description on the flavor commands (wrong resource). Change-Id: I93af3da9a0be62395a1c719fd1dcbfd2b669580d Story: 2002196 Task: 22607 - Merge "Format port_details field of Floating IP" - Merge "Compute: Add description support for flavor" - Add ability to filter image list by tag Change-Id: I2e222d3e69df9d8d7cd472663caaee31bedd848c - Add release note link in README Change-Id: I53896535dc369a499a6850b71d23feff9350e557 - Change bug url to a correct one The url for the python-openstackclient bugs is deprecated and needs to change it to a correct one. Change-Id: I3762faf27fdb647dbff2e47b19d238108ef1975f - Merge "Network: Add tag support for security group" - Merge "compute: limit the service's force down command above 2.10" - Merge "Fix subnet host_routes error" - Adding api_version to FakeApp In order to use app.api_version[''] we need to have the api_version on FakeApp otherwise the test will fail. Patch that will benefit from this: https://review.openstack.org/#/c/572536/ Change-Id: Ibb3c548daf2a62b6c4aefb5e257372dd5c56521e - Fix the `role implies list` command. The code was calling an unexisting function which never existed. The module refers now to the correct `InferenceRuleManager`. It also allows the compatibility with the future python-keystoneclient in which the compatibility method will be removed from the RoleManager. Change-Id: I08f785dc9e840da2e16915683eecfe49189c44b3 - Fix volume type functional tests Convert functional VolumeTypeTests to not use class methods for setup. Depends-On: https://review.openstack.org/577147 Change-Id: I855583ad1a50bf5f5046acdb85e977ab9e3c45d2 - Compute: Add description support for flavor Co-Authored-By: Fan Zhang Change-Id: I0dc80bee3ba6ff4ec8cc3fc113b6de7807e0bf2a Story: 2002196 Task: 21681 - compute: limit the service's force down command above 2.10 The force down action is added in Microversion 2.11, we should limit the command only can be executed when the microversion is above 2.10. Change-Id: I0a87e02e71ff025d30181fc17ebcd003a590f110 - Fix subnet host_routes error When updating subnet with "no-host-route" option, set host_routes to an empty list as neutron_lib.api.validators expected. Change-Id: I6fe039793d813758429c7a104fd40172b4f8122b Closes-Bug: #1747101 - Do not require port argument when updating floating IP When setting floating ip other properties, port argument is force to use. The patch modifies the command, when setting floating ip other properties, like tags, no need port argument. Change-Id: I908712c8913f32d3dd5fdfefe7347277d72f66de Story: 1751431 Task: 13865 - Network: Add tag support for security group Change-Id: Icccb23429913724c6a8bd15d4737672b47a5f13a Closes-Bug: #1750983 - Merge "Fix server show for microversion 2.47" - Merge "Optimize _prep_server_detail to avoid redundant find_resource" - Merge "Use Server.to_dict() rather than Server._info" - Merge "Remove deprecated ip floating commands" - Merge "Add bgp commands to neutron decoder" - Merge "Fix urls in README.rst" - Merge "Update role document to include system parameter" - Merge "Add system role functionality" - Fix server show for microversion 2.47 Compute API version 2.47 embeds the server's internal flavor in the response. The original flavor id is not preserved since it could have changed if the flavor was deleted and re-created after the server was created, which was the dreaded Horizon "Edit Flavor" issue. So the flavor dict in the server response is a dict of information about the flavor representing the server "right now" excluding the id. The original flavor name is shown though along with the ram/disk/vcpu etc information. The server list command has a similar issue which will be fixed in a follow up change. Change-Id: I1a92999758006d02567c542b6be8902a049899cc Task: 13864 Story: 1751104 - Optimize _prep_server_detail to avoid redundant find_resource When showing a server or doing a rebuild, we already have the latest version of the server so _prep_server_detail getting the server again is an unnecessary performance hit. ShowServer is pretty obvious here. For RebuildServer, the compute API actually refreshes the server before returning it in the response, so the client already gets the latest when the rebuild call returns. The only other usage of _prep_server_detail that does require a refresh is CreateServer since the POST /servers response is a minimal version of the server object. This adds a new refresh kwarg, backward compatible by default, to _prep_server_detail but changes ShowServer and RebuildServer to no longer refresh. Change-Id: Ib1c9c424ed1cafc2dfd8be90af8de8a774bdfbf0 - Use Server.to_dict() rather than Server._info There is a to_dict() method on the Server object from python-novaclient which makes a deepcopy of the internal Server._info - use this instead of accessing the _info attribute directly. Also, while in here, fixed a typo in _prep_server_detail. Change-Id: I679b4489c815f8a54368ef6b23b9f77e75b4d0bc - Update role document to include system parameter With the recent addition of system scope support in osc, we should add system docs to the role documentation. bp system-scope Change-Id: Id77511c52ff0c36ea845e0f0fbbe3ec14818ee58 - Fix urls in README.rst 1. bug tracking has been moved to storyboard 2. syntax issues 3. remove PyPI downloads since it is no longer maintained https://packaging.python.org/guides/analyzing-pypi-package-downloads/ Change-Id: Ic57c7032af0296d666841021c19e6e56f0b3e89a - Allow setting network-segment on subnet update To enable the possibility to migrate a non-routed network to a routed network allow updating the segment_id of a subnet. Change-Id: I3ebae2ff28d5d4e5373ebd1f52194f8c52071b88 Partial-Bug: bug/1692490 Depends-On: I1aee29dfb59e9769ec0f1cb1f5d2933bc5dc0dc5 - Add system role functionality This commit adds the necessary bits to expose system role assignments to openstackclient via python-keystoneclient. bp system-scope Depends-On: Iecbcbf020a15f2bec777334c648d4477f89f3b2c Change-Id: I261e84700b51e8715eaebdc3f8f8bc46b68542c2 - Merge "Prevent "server migrate --wait" from hanging" - Merge "Add cliff project link" - Merge "Make max_burst_kbps option as optional for bw limit QoS rule" - Fix lower-constraints.txt This was originally generated before the compliance test was installed, so it is now failing for every unrelated change to requirements. Replace lower-constraints.txt with the output of running openstack/requirements/tools/fix-lower-constraints.py . Change-Id: I492e663622db75994bdababfa6dc81589e3fb53b - Make max_burst_kbps option as optional for bw limit QoS rule Attribute max_burst_kbps of QoS bandwidth limit rule in Neutron's is optional in API so it should be also optional on client's side. Change-Id: Ie085b73fa885ff12f9ac080666cf3ca6a09b632a Related-Bug:#1770622 Task: 19658 Story: 2002017 - Don't display router's is_ha and is_distributed attributes always In case when is_ha or is_distributed attribute of Neutron's router is set to None, it means that it wasn't returned from server and should not be displayed. Otherwise it might be confusing for user is making openstack router show call as an admin will return e.g. is_ha=True but same call done as regular user will return False or None. It might happen like that because returning of those attributes is forbidden for regular users in Neutron's policy.json Depends-On: https://review.openstack.org/567606/ Change-Id: I626b5193d9ecb308baad7b27939f9673c32b4182 Closes-Bug: #1689510 Task: 19789 Story: 2002110 - Add cliff project link Change-Id: I6a964781667aa92f4b8d364f63a25f1c76309dca - Update command test for volume.v3 The default cinder version in devstack changed to v3 in https://review.openstack.org/#/c/566747/which breaks this test. Change the test to test what's going to happen. Change-Id: Iff4d8b47812a86d21bf5dbdddbd642b9d63ff8fe - Prevent "server migrate --wait" from hanging Migrate uses the same mechanism in the backend than Resize and so the steps and step names are similar. Currently when using the --wait option with 'migrate', we wait forever because the status won't get to active until the user performs an action. This makes it return on verify_resize status just like 'resize' does, so that the user can perform the next manual step. Change-Id: Ie1aeac52506bc8801f88fd6a6eb4f6094cf20050 Story: 2001994 Task: 19621 - Format port_details field of Floating IP Depends-On: I31e940d2986278d2fbee6fdfea4ff15f7c07ebaa Change-Id: I115739ea253ce26e075cd3f10e719b13f18afa5b Partial-Bug: #1723026 - Merge "Fix limits show command without Nova and Cinder" - Add dns-domain support to Network object Add "dns-domain" parameter to Network class. Also check backend extensions and send an error message in case of an argument (like dns-domain) is sent and the extension is missing (dns-integration in this case). Change-Id: I7303658c27d9b9f2d8381ccea0b29e96909cab54 Closes-Bug: 1633214 Partial-Bug: 1547736 - Merge "Network: Add tag support for floating ip" - Merge "Fix functional job failed" - 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: I61f3d53737616dbbd6df725823b5335a57045dba - Fix functional job failed After Neutron patch I3c93818002c2d7753454547231ba08544b6fa1c0 merged, the default value of segment description is an empty string. This patch will determine whether the Neuron shim extension standard-attr-segment supported. Change-Id: I68a3c018f03e5bb53bd637844ac9d7742a765db0 - Network: Add tag support for floating ip Change-Id: I7a500a4ff6cec2442b4050df26c0b017d9f71903 Closes-Bug: #1750985 - Merge "Clean up W503 and E402 pep8 errors" - Clean up W503 and E402 pep8 errors pycodestyle 2.40 and later enforce these rules that were not previously enforced. Rather than just skipping them, this cleans up the trivial instances of these violations. This does also include some other updates that were not triggering errors in an attempt to keep some of the style consistent. Change-Id: Id7c0a6b8f1f835e69d844b000e3ed751852ada63 Closes-bug: #1762803 - Add bgp commands to neutron decoder Help folks that need to migrate their use of the neutron CLI for neutron-dynamic-routing commands. Change-Id: I324608d7bbce8c55aaab122bfd8bff0ee1ccf9e3 - Add help for nova interface-list to decoder Running "openstack port list --server " is a good replacement for "nova interface-list ", add it to the decoder. Change-Id: I656e190f4da59d9c57e9ab97d068a8a0dbd77774 - Remove deprecated ip floating commands We had already implemented floating ip(pool) commands more than two cycles, we can remove those deprecated commands. Change-Id: Ib98a7403a63bb0c48c03de4c79795737de2aa84c - Fix limits show command without Nova and Cinder This patch implements an endpoint lookup when showing limits. This addresses the issue when showing limits without both Nova and Cinder and will display limits if one is missing. Change-Id: I2214b281e0206f8fe117aae52de2bf4c4e2c6525 Closes-bug: #1707960 - Merge "Add support to list image members" - Merge "Add --image-property parameter in 'server create'" - Merge "Update help text for encryption provider" - Merge "Updated from global requirements" - Merge "add lower-constraints job" - Merge "Fix additional output encoding issues" - Updated from global requirements Change-Id: I8c400b12269f00fcf9fcaac27098ca55cdc27ac4 - Add --image-property parameter in 'server create' add --image-property option, just like --image-with of novaclient did. Change-Id: Ic1a8976559255529a8785b1b301a0307812433cb Signed-off-by: Chen Hanxiao - 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: I4a4ca9726fab1d0cf9a33311201b7f65951a0942 Depends-On: https://review.openstack.org/555034 Signed-off-by: Doug Hellmann - Merge "Fix crashing "console log show"" - Merge "Rename python-openstacksdk to openstacksdk" - Merge "neutron: add --mtu for create/set network" - Merge "Remove duplicated network attributes" - Rename python-openstacksdk to openstacksdk Depends-On: https://review.openstack.org/554662 Change-Id: I6169f9e98418055c7c3ae5bc3b76b1216703cd55 - Add support to list image members The OpenStack client presently has support to add or remove members from an image, but no way to list image members. This patch addreses this issue. Change-Id: Ie85c5de23c6beb21fd6b4c04c83ddf2a116606ef - Display private flavors in server list Update the code so that "openstack server list --all" also displays the names of private flavors. Change-Id: I4804fcd905eaf67b1ad9b461084eaf0caa820d2f Closes-Bug: #1742453 - Default --nic to 'auto' if creating a server with >= 2.37 Compute API version >= 2.37 requires a 'networks' value in the server create request. The novaclient CLI defaults this to 'auto' if not specified, but the novaclient ServerManager.create python API binding code does not, as it wants clients to be explicit. For the purposes of the OSC CLI, we should follow suit and if the user is requesting OS_COMPUTE_API_VERSION>=2.37 without specific nics, we should just default to 'auto'. Change-Id: Ib760c55e31209223338a4086ff1f4fee88dc6959 Closes-Bug: #1750395 - Fix additional output encoding issues This is a followup to https://review.openstack.org/#/c/541609/ that changes most outstanding direct uses of sys.stdout to use the encoded stdout set up by cliff. Change-Id: I07cfc418385fc787d3b7d3c32d39676cf81bb91f - Merge "Correct application credential usage doc" - Correct application credential usage doc There is a --restricted flag to counter the --unrestricted flag. It was documented, but the usage example had missed it. Add it for completeness. Change-Id: Ib4cdcacdd16bfb59e9d18714106ecda99e418812 - Fix crashing "console log show" Because of encoding issue, the "openstack console show log" is prone to a stack dump, as explained in the bug report. Use the stdout handle that has already been set up by cliff's App class with a sane default encoding. Change-Id: I4d8b0df7f16ee0463e638bb11276220e5b92023b Closes-Bug: 1747862 - Fix typo in 'floating ip associate' command and doc Assocaite -> Associate Trivialfix Change-Id: I432e35ddcd80ef77c865bee9a54ac2777f5b6386 - neutron: add --mtu for create/set network Support Neutron network mtu configuration with a new argument, --mtu that allows CLI users to set MTU for Neutron networks. Change-Id: I93d23581c7e8c84eaf9bb3b293360036f60f456b - Make Profile fallback go bye-bye It's time to move on with life. (dtroyer) This requires sdk >= 0.10.0 (0.9.19 is in global-requirements.txt) and osc-lib >= 1.8.0 (1.8.0 is already in g-r). Once we have sdk bumped make_client() becomes just a pass-through for the plugin interface and existing code compatibility. Change-Id: Ie3d7c442da4257b11140c109e9df69b629336f42 - Merge "Add CRUD support for application credentials" - Remove duplicated network attributes Change-Id: If77609d06e7d80c8da5111b8a30036b58fbfa187 - Merge "Cleanup error messages on failure" - Merge "Updated from global requirements" - Merge "Re-implement novaclient bits removed in 10.0" - Re-implement novaclient bits removed in 10.0 a) /os-floating-ips was removed in Compute API 2.36 and from novaclient's Python API in 10.0 Add to api.computev2: floating_ip_add() floating_ip_remove() Convert add floating IP command to nova-net/neutron split: "server add floating ip" "server remove floating ip" b) /os-hosts was removed in Compute API 2.43 and from novaclient's Python API in 10.0. Add to api.computev2: host_list() host_set() host_show() Convert host commands to use intenal api: "host list" "host set" "host show" c) The introduction of the Network-style commands into the server group broke cliff's autoprogram directive as it executes the get_parser() methods without fully initializing the Command object. NOTE: This is really three reviews squashed to get through the gate in one pass. Depends-on: Id6de87211d6c4ea8fd14aa9203d8d5b17e9e2f04 Change-Id: I5116086f9a9e4b2b31a744bf8f4558c79f0bfe59 - Updated from global requirements Change-Id: Idf311a7fa08e8738bb4c70b0d84f8a4121606f56 - Merge "Update links in README" - Update links in README Change the outdated links to the latest links in README Change-Id: I94c781866c8b65e84708dd9f951f023a5e2913b1 - Imported Translations from Zanata For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: Ie76221736bb0fda2d7f4ee114787e5b11fc734ac - Cleanup error messages on failure When test_server_commands_main_help() fails it dumps a ton of unformatted text on an exception message. This commit attempts to clean it up to make it easier to read. Change-Id: I793e6337728a22302a5a87938dbec60d7f2320d8 - Merge "Add support for endpoint group commands" - Merge "Add project tags functionality" - Merge "Add support for "--dns-domain" argument" - Update help text for encryption provider The volume encryption provider no longer uses class names. Instead, 'luks' and 'plain' are used. This patch updates the help text for the volume encryption provider to use the new encryption provider format constants. Change-Id: I2911098505a99658e04ac4008e5f3e857db81f95 - Add support for endpoint group commands Implements the commands for endpoint group filter management. Includes the CRUD management of the endpoint groups and the association management between them and the projects that are using this method. Implements: blueprint keystone-endpoint-filter Change-Id: I4265f7f8598d028191e90d76781b7b6ece6fef64 - Add support for "--dns-domain" argument This patchset implements support for "--dns-domain" argument to the following commands: "openstack port create" / "openstack port set". Change-Id: I4bb001054b00a969b74db3bb310e567033bf589b Depends-On: https://review.openstack.org/#/c/500660/ Closes-Bug: #1714878 Partial-Bug: #1704769 - Add project tags functionality This change adds tags functionality for projects in keystone. A user can add a single tag with "--tag", chain "--tag" to add multiple tags, or clear tags with "--no-tag". Change-Id: I31cfef3e76dcefe299dacb00c11bb1a10a252628 Partially-Implements: bp project-tags - Merge "Zuul: Remove project name" - Make osc-functional-devstack-tips actually use tips The base job has tox_install_siblings: false - which we want. But that means we need tox_install_siblings: true on the tips job. While we're at it - add fetch-tox-output so that we have tox log files in the fetched build output for easier verification of what wound up installed. Don't look for ResourceNotFound string in test The string ResourceNotFound is not in the error string anymore. Look for the text that is. Depends-On: https://review.openstack.org/541033 Change-Id: Id6de1485bcafb41f238f3e74277094ce64a6acf4 - 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: I92ea13e64dcdc24a8dd1fd6d17df9f771b2fc1e0 - Merge "Make functional-tips job voting" - Add CRUD support for application credentials Add support for creating, retrieving, and deleting application credentials. Application credentials do not support updates. In order to provide a positive user experience for the `--role` option, this patch also includes an improvement to the `identity.common._get_token_resource()` function that allows it to introspect the roles list within a token. This way there is no need to make a request to keystone to retrieve a role object, which would fail most of the time anyway due to keystone's default policy prohibiting unprivileged users from retrieving roles. bp application-credentials Change-Id: I29e03b72acd931305cbdac5a9ff666854d05c6d7 - Merge "Fix tox -e venv -- reno new " - Use find_ip from openstacksdk The find_ip from openstacksdk started being usable by OSC back in 0.9.15 but the local method never got replaced. Change-Id: I18a334280e5f384f8bb96198cdad79c612a02290 - Updated from global requirements Change-Id: I7febe9ca4d4c9ac5044208ff1816eab8f1d9452e - Fix tox -e venv -- reno new Change I7e8c47dead1e019e8705db3ff7559dd39b1d90d9 broke the ability to create a new release note from the venv tox target because the reno requirement was moved from test-requirements.txt. This fixes it. Change-Id: Ifac83121388728fa445e0ed4433c9d981c057737 - Update reno for stable/queens Change-Id: Iace9272b22ec8ccc8790e63c3f5e435d497c5e71 - Updated from global requirements Change-Id: I7b712b41e633f7e3dc40749b5a55706cb32fecee - Fix use of new openstacksdk connection We store the created conn on the instance, but we never pull it back off if there is already one present. Change-Id: I2d890dd206d4ddf67fa42d798e6fd2c652799785 - Rework Network client config for new SDK Connection network.client.make_client() has always put a copy of it's SDK Connection directly into ClientManager, the new-style Connection create will move into osc-lib ClientManager, do it here too until then. Change-Id: I1edfd19c9e73320768fb9640931fafe857c980b4 - Merge "Updated from global requirements" - Merge "Replace assert with condition" - Merge "Check that Glance returns image data before processing it" - Replace assert with condition a piece of code in image client has some business logic behind assert, which can be lost when running python in optimized mode (-O). Change-Id: I2179970df495e1215d691915c51cebe5cb4541a7 - Updated from global requirements Change-Id: I72c81c299759b883e316b450716d1528bdb06308 - Corrected spelling mistake in quotas -> in quotes Change-Id: I3adb1ccd8f3a9c495f0b9cf688aee5c4c1e63507 - Merge "Fix indentation in authentication.rst" - Merge "Updated from global requirements" - Merge "Partially Revert "Update new documentation PTI jobs"" - Merge "Use Zuul v3 fetch-subunit-output" - Updated from global requirements Change-Id: Ic5715c21e19d92c8f3d85091bfa41c28bb271c42 - Fix indentation in authentication.rst Fix indentation in doc/source/cli/authentication.rst Change-Id: I7d408e9d27a384903680303219f2578be0e2937e - Partially Revert "Update new documentation PTI jobs" The zuul job figures out whether to run "setup.py build_sphinx" or "build-sphinx" based on whether the project is relying on pbr's ability to auto-generate API reference docs. Because we are relying on that, we want local builds to use "setup.py build_sphinx". This reverts commit 42e0037cd055d81d9452f046c347f8e469d27350. Change-Id: Ia01188110fa9c3ccaf3d794fa3a511a6780e683e - Use Zuul v3 fetch-subunit-output We have consolidated the fetch output roles into one fetch-subunit-output, replace useage of old roles with new one. Depends-On: I0cdfc66ee8b046affeb0b071fef38c21cb7a4948 Change-Id: Iae2892d9b4cd870a11579434edc9ee66bd16798c - Updated from global requirements Change-Id: I72311597c1b62d985282cef5e219c16cd6745b42 - Updated from global requirements Change-Id: I90df2e58bb83239f5b041982844516eb34cb5656 - Merge "Add floating IP qos_policy actions" - Add floating IP qos_policy actions Now we can associate a qos policy to the floating IP, and dissociate it. The commands are: $ openstack floating ip create --qos-policy ... $ openstack floating ip set --qos-policy ... $ openstack floating ip set --no-qos-policy ... $ openstack floating ip unset --qos-policy These commands are based on the neutron change: I4efe9e49d268dffeb3df4de4ea1780152218633b Partially-Implements blueprint: floating-ip-rate-limit Change-Id: I932b32f78cc5a2b53926feaec1a0b392cf7e8b57 - Updated from global requirements Change-Id: Ic85eb65f3f143fdfbf2b6fa71d7cdd6961b24c76 - Check that Glance returns image data before processing it Now if Glance v2 cannot find image data it returns an empty response with 204 status code, instead of raising an error. Glance client handles this situation and wraps the response with a RequestIdProxy object, whose 'wrapped' attribute is None. But when openstack client tries to parse this object using glanceclient's save_image util function, it fails with "NoneType object is not iterable" message, for the object doesn't contain any data. This patch adds additional check to prevent such behaviour and raises SystemExit exception if no data was returned from the server. Glance v1 is not affected, because it raises an error if can't find an image data. Change-Id: I016a60462ba586f9fa7585c2cfafffd7be38de7b Closes-Bug: #1741223 - Allow ports filtering with device_id Right now, if a neutron port is owned by a container powered by Kuryr, there is no way to list and filter those ports because OSC assumed a neutron port is owned by either a server or router. This patch adds support for that by introducing an option '--device-id' to the 'port list' command. Change-Id: Ib1fd27e8d843a99fb02ccabd8a12a24ac27cec9c - Merge "Update new documentation PTI jobs" - Merge "Allow port list to shown undefined attributes" - 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: I7e8c47dead1e019e8705db3ff7559dd39b1d90d9 - flavor: 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: Ic079c069985d39cc969b97876901007a81883f57 Signed-off-by: Chen Hanxiao - Merge "Switch to use stestr directly" - Merge "Updated from global requirements" - Switch to use stestr directly This commit makes to use stestr instead of ostestr directly. ostestr>1.0.0 has started to use stestr instead of testrepository. So there is no reason to use ostestr anymore. Change-Id: I6327d50c9f6dd19f1de24b9b51532104fb3e916e - Fix func tests: Ensure to pass OS_CLOUD envvar Our functional tests depend on OS_CLOUD (or other OS_* envvars) to retrieve authentication information. Functional test failure is caused by the lack of OS_CLOUD envvar. This commit updates the job playbook to pass OS_CLOUD. Change-Id: I903ce599082cc923f02e26a2058bbfa7eb9bb2d6 - Updated from global requirements Change-Id: Ieb1a29ba275784f67f0d943fab5f3b59cd9fc28e - Merge "Send 'changes-since' instead of 'changes_since' query parameter" - Merge "Add support for endpoing filter commands" - Send 'changes-since' instead of 'changes_since' query parameter Per API reference, only 'changes-since' is accepted and the variant with underscore is ignored, making the CLI functionality broken. [dtroyer] added release note and fixed unit tests. Change-Id: I0c596531a8af03da17d5ce39d75b12e941403aa5 Closes-Bug: 1732216 - Merge "Fix credentials in create, update and list." - Fix SDK Connection creation alternative to Profile Do a dummy import to determine which SDK is installed (Pre/post merge). This solves the DevStack error "Cloud defaults was not found" in -tips jobs. Depends-On: Ia111f127fbdceac2afe20fd9d1fe032145cdd72c Change-Id: I60c2d418dd5a393eee2cc2a5c2fdebfffdabf2d3 - Merge "Remove a bunch of things we promised to remove in 2H 2017" - Make functional-tips job voting Depends-on: I57cf95763d54ad2060a4ce2af91c3ba18ca04db0 Change-Id: I6cc4421e4b55df84f494ab9bb18092dcc111baeb - Remove -U from pip install 'pip install -U' ugrades specified packages, this is not necessary since we use constraints, remove the parameter '-U' from the line. With tools/tox_install.sh - which a previous change of mine removed - the -U was not harmful, but with the current set up, it might cause upgrades, so remove it. Change-Id: I9f818d4b78e7540498a1501be14cd63ac3e891b3 - Merge "openstack subnet create fails when tags is None" - openstack subnet create fails when tags is None In network/v2/_tag.py lines 105 and 110: obj.tags can be None, in which case set(obj.tags) throws a NoneType exception. Change-Id: I1e965ec947844cbf84676fab27a2261fc0c0ea49 Closes-Bug: #1735836 - 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: Ie7c06ead39c8597ec9326f223625d1fa0d5208d1 - Make py27 and py35 versions and template of unit-tips jobs Make py27 and py35 versions of the tips job, and a project-template to hold them so it's easy for other projects to use both (or more, we ever add them) The base tox job knows how to install siblings based on required-projects, which makes it easy to piggyback on them. Remove the irrelevant-files sections, as these are specified in the base openstack-tox jobs. Using the unit-tips or functional-tips tox env is no longer neccessary. For the gate it's actually important to not do the sibling processing by hand in tox as the base tox job version of the logic does all the right things to deal with constraints and whatnot. Leave them for local developer convenience. Leave the osc-tox-unit-tips job for now, since there are some other repos using it. Once we switch them to the template, we can remove the job. Change-Id: I599b18218c10cb08e508cca3b3bbc9c88b8f809c - Add cliff and keystoneauth to tips jobs Both of these can severely break openstackclient. Add them to the required-projects list of the tips jobs. We should then add at least osc-tox-unit-tips but maybe also osc-functional-devstack-tips to both cliff and keystoneauth so that it's symmetrical. Change-Id: Ie0f3e9d7e221c9cdd3c5d726148f456246186ff4 - Remove a bunch of things we promised to remove in 2H 2017 Change-Id: I060559fe13e354fe87551cd9dd82774bddb54640 - Release note cleanup Change-Id: Iea05a9b696a225b41bb5bf0c52498969e32acf66 - Merge "Set correct designate endpoint in docs" - Set correct designate endpoint in docs Change-Id: Id2ecf65f3e5afef9b6231565cac2d797650e38a7 Closes-Bug: #1726726 - Merge "Fix file mode on network-topology.rst" - Merge "Replace %r with %s on printing string variable" - Make osc-tox-unit-tips work on other repos We want to run osc-tox-unit-tips on changes to os-client-config and python-openstacksdk - but the tox role defaults to using zuul.project.src_dir as the working directory. We want it to always be the openstackclient source dir. Change-Id: Ic7a49b79fb9141d9d0b8da40e10c85b107564edc - Allow port list to shown undefined attributes At now, OSC command implementation extracts resource attributes based on a predefined column list, so if a user specifies an unknown attribute not defined in the column lists, such attribute will be ignored. In case of 'port list', the neutron port defines many attributes and it is not a good idea to show all attributes even in the long mode from the perspective of user experience. This commit consumes osc_lib.utils.calculate_headers_and_attrs() function to show undefined port attributes if requested in -c option. Closes-Bug: #1707848 Depends-On: I6c6bc3c6e3c769c96869fd76b9d9c1661280850e Change-Id: I130a6aed41d80603698b6cab0c9a1d1dc59df743 - Merge "Updated from global requirements" - Updated from global requirements Change-Id: I6d09649d109445bee8ec541a1366dfcf49fd6563 - Fix file mode on network-topology.rst doc/source/contributor/specs/network-topology.rst was executable, change mode to 0644. Change-Id: I7e9c8a86ee8563f47da3f59c189b5bd5f3846344 - Add support for endpoing filter commands Implements the commands that allow to link and endpoint to a project for endpoint filter management. Implements: blueprint keystone-endpoint-filter Change-Id: Iecf61495664fb8413d35ef69f07ea929d190d002 - Remove hard-coded policy choices for creating a server group The hard-coded choices for the server group policy make it impossible to create a server group with the soft-affinity or soft-anti-affinity policy rules which were added in compute API microversion 2.15. This removes the hard-coded choices so that the policy is restricted on the server side rather than the client side. Change-Id: Ib3dc39422ac1015872d56ae2fdeddf0f29613494 Closes-Bug: #1732938 - Merge "Prepare for os-clinet-config to go away" - Merge "Add logic to handle old and new sdk constructor" - Fix credentials in create, update and list. Now, keystone has supported serverl auth method, like 'totp'. Before we use this method, we should create the credential first. And we need create it with type 'totp'. But now we cannot create credential with this method. Also, I think the type should not have constrains. We can create any type in keystone project. So, we should do these actions too. The type would be more which We cannot control. Change-Id: Ie0482da3133fb515e4bb8e45f8c54f509589cc5e Closes-bug: #1731848 - 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: Ia0c8d7dc346182fde095eebb82eeeb70fc1b9770 - Prepare for os-clinet-config to go away We used that module in a test functional for module list, it is being absorbed into python-openstacksdk and having it listed in this test breaks -tips jobs. Change-Id: I98fdf5a5d1b3c6e30cb4c5f5fec3dd8e43e53145 - Add logic to handle old and new sdk constructor SDK is removing Profile, but currently has compat code to support this invocation in OSC. While the intent is to protect people from upgrade breakage, it's python, and packaging things have a tendency to get strange. By putting in a little belt and suspenders if block here, we can hopefully protect folks who upgrade sdk for some reason without upgrading python-openstackclient. Change-Id: Id678e97a2b99dbbfc772acc8c6ba283db551723d - Updated from global requirements Change-Id: I714dbe5326ed99c4edab6c63ecea4dc6a72b57e7 - Merge "Network: Add interfaces info in router show" - Merge "Show detailed message of neutron exception" - Merge "Add RemoveNetwork command to server" - Network: Add interfaces info in router show Add a list of interfaces info in the output of 'openstack router show'. The information of router interface are: IP address, subnet ID and port ID. Co-Authored-By: Dongcan Ye Change-Id: I1252986122122defffe795292b83dc4e84481c7e Closes-Bug: #1675489 - Updated from global requirements Change-Id: I2c8a5132f6078609ad0d46093642a1b361115c5c - Show detailed message of neutron exception This patch improves the error message by retrieving the more details from the exception instance. Otherwise, the real error message won't be displayed (unless using --debug in the command). Change-Id: I8ba694bda86f7cc8362e301b2044d9b610dde49c - Add RemoveNetwork command to server This command will detach a server from a network. All server's neutron ports that belongs to the specified networks will be removed. Change-Id: I83a064ed62ab00c6f1016900b9cf30f1c15b8382 - Replace %r with %s on printing string variable Change-Id: Idd8c15255f024bba7079d3a9a29545dec0c91b58 - Updated from global requirements Change-Id: Icf2e8d6cca0194de127ef0dfaee5db04381b5cd1 - Merge "Be robust on import plugin module" - Merge "Add python-rsdclient into plugin list" - Merge "Neutron agent delete: remove the wrong argument" - Merge "Network: Add supports rbac target-all-projects" - Neutron agent delete: remove the wrong argument The take_action() function was calling get_agent() with the wrong attribute, causing agent deletion to fail. It turns out calling get_agent() isn't necessary; this removes the call entirely and moves the 'ignore_missing' argument to the delete_agent() function. Change-Id: Iaa3754a3be0765112f396495fa5fb2e32e6eae4e Closes-Bug: #1711301 - Merge "Display Network QoS rule type details" - Merge "Rehome test units lib" - Display Network QoS rule type details Neutron API now supports getting details of supported QoS rule type. This patch adds support for this feature to OpenStack client. Change-Id: I74d16563ce2236a7c899f5994f1dab43ace02138 Depends-On: I448b5d4f8e4ef42eafe50d9d6c63d0be666f98fc Related-Bug: #1686035 - Network: Add supports rbac target-all-projects Add a boolean option "target-all-projects", which allows creating rbac policy for all projects. Change-Id: Ie3af83a1bba7dd66e83b0595bb276bf8fd105831 Closes-Bug: #1728525 Closes-Bug: #1704834 - Updated from global requirements Change-Id: I9935e5f3eeab0e0d8a56f5983822ad96c79a7526 - Rehome test units lib Rehoming deprecated libs for the ones provided in osc-lib. Change-Id: Idb4a27f2c8edf48909ef010e3c7a1a5c0c16efc5 - Merge "Zuul job updates" - Merge "Added AddNetwork command to server" - Zuul: add file extension to playbook path Zuul now supports including the file extension on the playbook path and omitting the extension is now deprecrated. Update references to include the extension. Change-Id: Ia1747b6c97140b7e12972c7f7b14cb0620ead084 - Add python-rsdclient into plugin list Intel RSD is new architecture that disaggregates compute, storage, and network resources, and provide the ability to dynamically compose resources based on workload-specific demands [1]. The python-rsdclient project provide specific RSD plugin to allow user to invoke RSD API through OpenStackClient. So Added it into existing plugin list. [1] https://www.intel.com/content/www/us/en/architecture-and-technology/rack-scale-design-overview.html Change-Id: Ic49efddfb003c89ece6d782905b27fb46402b3ab - Add server rescue unit tests Added to support the new options to server rescue command. Change-Id: Ia9dca85e05488fa8d5f57cd5e8920e94b8f65c22 - Merge "Add missing parameters on openstack server rescue" - Zuul job updates * Add unit-tips job to run unit tests with the same project master branches as the functional-tips job (mostly useful for the unit.integ tests) * Add irrelevant-files to the osc-functional-devstack-base job * Comment out the functional-n-net job as it is horribly broken for now until the replacement package-installed OpenStack is ready Change-Id: I5acdcb0a2f0f0dfe488740ae0add36366cc0ee21 - Add missing parameters on openstack server rescue Change-Id: I27afca9e826378dbcb7feb7528e0c65c528b04b0 Closes-Bug: #1703278 - Added AddNetwork command to server Currently, if users want to add another NIC to a running instance, they need to (i) create a neutron port and (ii) add the port to the server via teh AddPort command. It would be more convenient to have a single command to achieve the equivalent. Novaclient already support adding network to an instance via the interface-attach command. This patch introduces a similar capability in OSC. Change-Id: Ia3e39c57ae7ecb96aae1b66adc52c289daccb6ec - Convert 'server' commands to use autoprogram Convert the remaining server commands. Change-Id: Ief84abb899be9fd60ce4d546abefc226e0ae4f81 - Merge "Native DevStack jobs" - Native DevStack jobs Convert legacy DevStack jobs to native Zuul v3 form, plus some test-job-related docs updates. Change-Id: Ia8c08be81605da885b9eee799fc58129305dfc41 - Merge "Add wrapper around ostestr" - Add wrapper around ostestr The functional tests assume that an openrc file has been sourced. Make a simple wrapper that will do that. Change-Id: I42584aaebcbca99a8c922f6ff90c8bbce57bbfbb - Merge "Allow creating security rules without protocol" - Merge "auto-generate docs for v3 identity resources" - Merge "Accept 0 for --min-disk and --min-ram" - Accept 0 for --min-disk and --min-ram The current openstackclient implementation cannot accept 0 for --min-disk and --min-ram with the "openstack image set" command. If theses options get set to 0, the option parser in openstackclient wrongly interprets 0 as no option value. The 0 is valid for these options if administrators want to make it the default(no minimum requirements). This patch fix the parser so that it avoids only 'None'. Change-Id: Ie8ee37484c02c26f54adc56263fcd167c0ce7eb3 Closes-bug: #1719499 - Move more jobs in-repo Now consume the merged openstackclient-plugin-jobs template in openstack/openstackclient repo. Change-Id: I60f2c8ad443c802e13de8f185647faa68e07bfe2 - Attempt to de-race qos policy We're getting about 1-in-6 failures on qos policy delete now, with the message that the policy is in use by a network. It shouldn't be, this is possibly due to the small window where the policy is set as the default. Let's remove that and shore up the test using --share instead. Change-Id: I8d669bd3c5c88dadd2927aee89e5ef72cf4001c4 - Allow creating security rules without protocol In order to create a rule for any protocol, the client must not specify the protocol in the API call. This is currently impossible because protocol defaults to TCP. In order not to change the default behavior, a "new" protocol name is added: "any", which makes this CLI skip sending the protocol field altogether. Change-Id: I58853d3745f3631007e5e9780c0c5c2526b730a3 Closes-Bug: 1712242 - Merge "Move base functional test job in-repo" - Move base functional test job in-repo Depends-On: I26ed12133c75a69182c56b6ecf483fcdc37d98f3 Change-Id: Ib46eed6e038a502926bf92297120e2d494ef5b20 - Switch to $USER in post_test_hooks As a first step to zuul migration, switch to $USER from a static "jenkins" username. Change-Id: I26ed12133c75a69182c56b6ecf483fcdc37d98f3 - Merge "Optimize getting endpoint list" - Avoid default mutable values in arguments Mutable values shouldn't be used as default values in function arguments [1]. [1] http://docs.python-guide.org/en/latest/writing/gotchas/ Change-Id: I3c7f915f0409c77f4c430467365eb1bcfd7757b3 - Be robust on import plugin module On loading external plugin, OSC should be robust on importing the plugin module so that commands from other modules can continue to execute. Closes-Bug: #1722008 Change-Id: Ibe716681c7f78fabee31b7ef281af2588d68ab30 - auto-generate docs for v3 identity resources skipped shared v2/v3 identity resources. Change-Id: I9e1fb5dee5506780fd79a0cbfbde059d0ccd1489 - Updated from global requirements Change-Id: I79e4ddb75c7cf7088d6f0abc79f9f07dcd165535 - Support creating unaddress neutron port Introduce an option '--no-fixed-ip' on port create command. If this option is specified and '--fixed-ip' is unspecified, OSC will send a request to neutron with 'fixed_ips' as an empty list, which will create an unaddress neutron port. Note: The use cases of unaddress port was outlined in: https://specs.openstack.org/openstack/neutron-specs/specs/liberty/unaddressed-port.html (dtroyer: add Depends-On for Zuul v3 test) Depends-On: I39e8e49243ab0bda631600715c971c55a34e2fd9 Change-Id: Ibe38598acbbcd0d353c952fc2a6fa67780762151 Closes-Bug: #1717829 - Merge "Support icmp-type and icmp-code to be set as zero" - Merge "Fix 'project purge' deletes ALL images problem" - Merge "Add "volume service list --host" functional test case" - Merge "Update the documentation link for doc migration" - Optimize getting endpoint list Currently ListEndpoint.take_action method unconditionally iterates over all endpoints and issue GET /v3/services/ request for each endpoint. In case of HTTPS keystone endpoint this can take significant amout of time, and it only getting worse in case of multiple regions. This commit change this logic to making just two GET requests: first it gets endpoint list, then it gets service list, searching service in the list instead of issuing GET /v3/services/ request. Change-Id: I22b61c0b45b0205a2f5a4608c2473cb7814fe3cf Closes-Bug: 1719413 - Support icmp-type and icmp-code to be set as zero When icmp-type or icmp-code are set to 0, the current implementation ignores the value, this fix will allow the value to be copied and displayed Change-Id: I96133a57883d22e98fcbb9fe0328d9e050472469 Signed-off-by: gvrangan - Fix 'project purge' deletes ALL images problem Closes-Bug: #1717130 Change-Id: I33c6fc7897dfee85d1c197a1267bde4abfa5bbd9 - Update the documentation link for doc migration This patch is proposed according to the Direction 10 of doc migration(https://etherpad.openstack.org/p/doc-migration-tracking). Change-Id: Ieca93d77bfc5e54486312f16122cc12c5bda0934 - Updated from global requirements Change-Id: I9509fb386bc28eaaeab8d27f4cfc7109ec261b73 - Merge "Add functional test cases for "volume qos associate/disassociate"" - Merge "Unroll the network qos policy functional tests" - Merge "Add python-zunclient plugin" - Add "volume service list --host" functional test case Change-Id: I467252d9fc6083fb891a8701d7992f16ce42556f - Add functional test cases for "volume qos associate/disassociate" Change-Id: I07b25bebb8a0ea18cdf042357be65c4ec6e1cfed Closes-Bug: #1717874 - Unroll the network qos policy functional tests These seem to have gotten a bit racy in the last revision, just do it the long way now. Change-Id: I3748b8b4f264dbfa8c991b32653682e5c86eeb4c - Add python-zunclient plugin This patch adds the "appcontainer" commands to the docs and sets up the document generation for the python-zunclient plugin Change-Id: I58bd208e98bd059d9df03ee71dcb83779044f83a --- python-openstackclient | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-openstackclient b/python-openstackclient index 39c00ab8b7..2dd5393167 160000 --- a/python-openstackclient +++ b/python-openstackclient @@ -1 +1 @@ -Subproject commit 39c00ab8b7a2c5ee8b82a26f779966806236dbc8 +Subproject commit 2dd5393167119c043ae125fead9f8ed9ba84241d