3157 Commits

Author SHA1 Message Date
Johannes Kulik
b8438adbbf Add floating IP filter to floating IP list command
Add a parameter ``--floating-ip-address`` to ``floating ip list``
because it's supported by the API and also more efficient than the
current ``floating ip show``. This also works as a work-around for
pagination issues ``floating ip show`` might run into with an IP
parameter.

Change-Id: I113e3fa2495e1e86bb553c55c44f71a3f9f49d23
2019-01-14 10:27:07 +01:00
Monty Taylor
2dd5393167
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
2019-01-10 14:21:03 +00:00
Zuul
2ab3396f19 Merge "trivial: remove commented-out code" 2018-12-30 14:30:28 +00:00
Zuul
7b72fb816f Merge "Support enable/disable uplink status propagation" 2018-12-24 12:00:03 +00:00
Zuul
4eab836441 Merge "More volume functional test fixes" 2018-12-21 23:59:11 +00:00
Dean Troyer
f9df3ce3cd 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 <dtroyer@gmail.com>
2018-12-18 22:32:16 -06:00
Zuul
ea2e6d6bfb Merge "Modify the help message for 'registered limit set'" 2018-12-18 07:17:25 +00:00
Zuul
235999b995 Merge "Supports router gateway IP QoS" 2018-12-12 13:07:29 +00:00
Zuul
955f22314a Merge "Replace assertEqual(True/False, expr) with assertTrue/assertFalse" 2018-12-12 04:38:19 +00:00
Zuul
6fec6d625f Merge "Don't display router's is_ha and is_distributed attributes always" 2018-12-10 20:09:24 +00:00
LIU Yulong
fd23025227 Supports router gateway IP QoS
Adds --qos-policy and --no-qos-policy to `openstack router set`:
    --qos-policy <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
2018-12-10 17:20:38 +00:00
Hongbin Lu
c82f4237e5 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
2018-12-05 21:07:07 +00:00
Zuul
9100e56d08 Merge "Updated the take_actions for unified limits" 2018-11-29 07:54:07 +00:00
liuyamin
5bec3b7e3b 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
2018-11-14 14:50:05 +08:00
liuyamin
4f66f66b6c Fix i18n issue
This patch fix some i18n issues in the files vapi/compute_v2.py.

Change-Id: Ic4da472ca585a35ce64512cf0e72e2fe9d4c9d6e
2018-11-13 17:05:05 +08:00
Sean McGinnis
b90c780d2b
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 <sean.mcginnis@gmail.com>
2018-11-10 02:11:04 -06:00
Vishakha Agarwal
eb06a24e4f 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
2018-11-09 08:15:40 +05:30
Vishakha Agarwal
81fd5c995d 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
2018-11-09 07:53:55 +05:30
Zuul
097b45686e Merge "Add project param in LimitList parser" 2018-11-08 23:27:05 +00:00
Zuul
51986b1eae Merge "Remove invalid 'unlock-volume' migration arg" 2018-11-08 19:11:06 +00:00
Zuul
c3a60e1173 Merge "Add --name-lookup-one-by-one option to server list" 2018-11-08 19:07:02 +00:00
Vishakha Agarwal
0d764cdb5a 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
2018-11-08 11:19:24 -06:00
Zuul
9b1e5f052e Merge "image/v2: support multiple property filters" 2018-11-08 05:40:17 +00:00
Sven Wegener
21e4c87bde
image/v2: support multiple property filters
Change-Id: I8ba40cb8ca647ec24b80c2824bb64e84430535d4
Signed-off-by: Sven Wegener <sven.wegener@inovex.de>
2018-11-07 14:55:51 +01:00
melanie witt
013c9a4f3a 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
2018-11-06 20:18:13 +00:00
Zuul
1894a3cb17 Merge "Add --key-name and --key-unset option for server rebuild API." 2018-11-02 19:41:24 +00:00
Zuul
594eeae2de Merge "Make use of keystoneauth service-type filtering for versions" 2018-11-02 18:48:06 +00:00
Zuul
9ab8143179 Merge "Address issues from volume backend commands" 2018-11-02 18:00:32 +00:00
Pavlo Shchelokovskyy
e782f49927 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
2018-11-02 12:01:36 -05:00
Sean McGinnis
f00ffebea6
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
2018-10-26 12:02:58 -05:00
Zuul
0fa3c84b4f Merge "Default --nic to 'auto' if creating a server with >= 2.37" 2018-10-26 03:20:17 +00:00
Monty Taylor
dfd37a2e6e
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
2018-10-19 07:55:41 -05:00
Zuul
02f492ae4c Merge "Handle not having cinderclient.v1 available" 2018-10-15 22:07:43 +00:00
Zuul
c19aee4c70 Merge "Allow endpoint filtering on both project and project-domain" 2018-10-12 22:41:46 +00:00
Zuul
ac9877de46 Merge "Add volume backend pool list command" 2018-10-12 22:41:43 +00:00
Zuul
5ad925b600 Merge "Add volume backend capability show command" 2018-10-12 22:41:41 +00:00
Sean McGinnis
e0615e8d69
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 <sean.mcginnis@gmail.com>
2018-10-12 15:54:02 -05:00
Sean McGinnis
651f0c38a1
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 <sean.mcginnis@gmail.com>
2018-10-12 14:19:51 -05:00
Sean McGinnis
9647d43bd5
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 <sean.mcginnis@gmail.com>
Change-Id: I826c9946ffe11340d44ad57914f72fc2a72b6938
2018-10-09 15:56:58 -05:00
Sean McGinnis
4039d0d94f
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 <sean.mcginnis@gmail.com>
2018-10-09 15:31:35 -05:00
Julie Pichon
91a2d88862 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
2018-10-09 13:23:49 +00:00
Fan Zhang
f82c5b85ce Add --key-name and --key-unset option for server rebuild API.
Change-Id: I6d4793a8e961080ea1d6d414cef8d6bbed0c53e7
Story: 2002609
Task: 22228
Signed-off-by: Fan Zhang <zh.f@outlook.com>
2018-10-09 14:34:44 +08:00
Ruby Loo
e3dc30fe8c 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
2018-10-05 16:33:48 -04:00
Zuul
4e6f47e28e Merge "Add metavar for name parameter in subnet create" 2018-10-03 01:30:11 +00:00
Chen
a4fcae2ac2 trivial: remove commented-out code
These comments have existed from the beginning. But they seem to
be meaningless.

Change-Id: Ic38272ecfb321d77219d477634e9e29b968e7f00
2018-09-28 19:20:07 +08:00
Brian Haley
3c5824415f 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
2018-09-27 17:54:40 -04:00
Wenran Xiao
01c3548dc8 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
2018-09-19 10:11:47 +08:00
Julie Pichon
1b66ad9067 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
2018-09-14 10:23:14 +01:00
David Rabel
14ceb6307f Add metavar for name parameter in subnet create
Change-Id: I2511677006687fff3166441c51e91191492962f1
Closes-Bug: #1747731
2018-09-12 17:25:10 +02:00
Zuul
53c99a21fd Merge "osc-included image signing (using openstacksdk)" 2018-09-08 05:11:02 +00:00