Let's switch flavors from novaclient or direct API requests onto using
SDK. Microversion agreement comes out of the box.
SDK normalizes property names, while OSC uses server side names. In
order not to break OSC users continue using server-side names.
This new query parameter will allow to send a query to the Neutron
server filtering only by those parameters needed by the list
command: ID, name, MAC address, fixed IPs and status.
When using input parameter "long", security groups IDs, device owner
and tags will be added to the fields filter.
With 4500 ports, those are the execution times for the command
"openstack port list" (average values in a development environment):
Neutron API (seconds) CLI (seconds)
Without filter: 3.05 10.15
With filter: 2.76 8.19
Oslo things are really server-side oriented and are heavy-weight
for client things. Remove oslo.utils and just use iso8601 and
importlib directly. It's not actually a bad library, but pulling
it and its other deps in just for a couple of wrapper methods
is a bit much here.
oslo.i18n, fwiw, is lightweight and helpful.
With python3.x, classes can use 'metaclass=' instead of
'six.add_metaclass', 'six.iteritems' and 'six.iterkeys' can
be replaced by 'items' and 'keys', 'six.moves.urllib.parse'
can be replaced by 'urllib.parse', 'six.StringIO' and
'six.moves.cStringIO' can be replaced by 'io.StringIO',
'six.text_type' and 'six.string_type' are just 'str'.
Importing pkg_resources scans every installed distribution to find
all of the entry points. Stevedore is adding a new caching layer using
importlib.metadata, which will not. Switching to the stevedore should
eventually speed up load times, especially for command line apps. This
change makes the switch now to ensure API compatibility.
We were already using stevedore for tests, so this moves the dependency
from test-requirements.txt to requirements.txt and raises the minimum
version to something more recent.
Signed-off-by: Doug Hellmann <email@example.com>
openstacksdk added support for using image import as a fallback
which is transparently supported here, but also provides an
override flag to allow a user to force use of import. Expose that
Add the `description` field to Floating IP Port Forwardings
Implements: blueprint portforwarding-description
Add commands to osc to call the two new API methods introduced by
new Neutron extension: extraroute-atomic.
Bump our openstacksdk requirement to >=0.38.0 which contains
the corresponding sdk change.
The lower-constraints of dogpile.cache and keystoneauth1 are bumped
because of requirements bumps in openstacksdk.
The lower-constraint of decorator is bumped because of problem already
fixed by amotoki here: https://review.opendev.org/701706
Partial-Bug: #1826396 (rfe)
Related-Change: https://review.opendev.org/655680 (spec)
In https://review.opendev.org/#/c/650374/ a work has been started to
switch image service support from glanceclient with all it's
dependencies to the SDK version. With this change version 1 (anyway
deprecated since ages) is also being switched to SDK.
This is a work to switch OSC from using glanceclient to OpenStackSDK.
With this change only v2 is using OpenStackSDK. V1 is still using
glanceclient and will be switched in a separate change.
Remove the direct depend on keystoneauth- let that flow through
This commit introduces the --access-rules option for 'application
credential create' as well as new 'access rule' commands for listing,
showing, and deleting access rules.
This patch updates the network modules to use the new
osc_lib.utils.tags module and removes the in tree _tag.py version.
A previous patch moves the _tag.py code to osc-lib to allow other
projects to leverage the code.
Added ``--disable-delete-on-termination`` and
``--enable-delete-on-termination`` options to the
``openstack server add volume`` command that enables users to mark
whether to delete the attached volume when the server is destroyed.
Part of blueprint support-delete-on-termination-in-server-attach-volume
This patch adds a new parameter ``--availability-zone`` to
``openstack server unshelve`` command. This can help users to specify
an ``availability_zone`` to unshelve a shelve offloaded server from
Implements: blueprint support-specifying-az-when-restore-shelved-server
Adds the --host and --hypervisor-hostname options to
``openstack server create`` CLI.
This patch adds a new parameter ``--reason`` to ``openstack server lock``
command and ``--locked``, ``unlocked`` filtering parameters to
``openstack server list`` command. This can help users to provide a
reason when locking the server and to filter instances based on their
locked value from 2.73 microversion.
Implements blueprint add-locked-reason
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.
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.
Co-Authored-By: Markus Hentsch <firstname.lastname@example.org>
This commit adds support for users to manage registered limits via
the command line.
This commit adds the necessary bits to expose system role
assignments to openstackclient via python-keystoneclient.