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
Support Neutron network mtu configuration with a new argument, --mtu
that allows CLI users to set MTU for Neutron networks.
Change-Id: I93d23581c7e8c84eaf9bb3b293360036f60f456b
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
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
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
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
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
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
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
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
We store the created conn on the instance, but we never pull it back off
if there is already one present.
Change-Id: I2d890dd206d4ddf67fa42d798e6fd2c652799785
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
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
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
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
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
--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 <chenhx@certusnet.com.cn>
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
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
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
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
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
Implements the commands that allow to link and endpoint to
a project for endpoint filter management.
Implements: blueprint keystone-endpoint-filter
Change-Id: Iecf61495664fb8413d35ef69f07ea929d190d002
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
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
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
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