deb-python-osc-lib/releasenotes/notes/1.0-summary-47dcce446d6a512...

54 lines
2.6 KiB
YAML

---
prelude: >
``osc-lib`` was extracted from the main OpenStackClient
repo after the OSC 2.4.0 release. A number of the lower-layer
modules were simply renamed into the osc_lib namespace::
* openstackclient.api.api -> osc_lib.api.api
* openstackclient.api.auth -> osc_lib.api.auth
* openstackclient.api.utils -> osc_lib.api.utils
* openstackclient.common.command -> osc_lib.command.command
* openstackclient.common.exceptions -> osc_lib.exceptions
* openstackclient.common.logs -> osc_lib.logs
* openstackclient.common.parseractions -> osc_lib.cli.parseractions
* openstackclient.common.session -> osc_lib.session
* openstackclient.common.utils -> osc_lib.utils
* openstackclient.i18n -> osc_lib.i18n
The higher-layer components, such as the OpenStackShell and ClientManager
objects, have had significant changes made to them to streamline interaction
with ``os-client-config`` and ``keystoneauth`` in addition to the rename::
* openstackclient.common.commandmanager -> osc_lib.command.commandmanager
* openstackclient.shell -> osc_lib.shell
features:
- Add ``utils.find_min_match()`` function to filter a list
based on a set of minimum values of attributes. For example,
selecting all compute flavors that have a minimum amount of
RAM and disk and VCPUs.
- Add ``cli.client_config.OSC_Config`` as a subclass of
``os_client_config.config.OpenStackConfig`` to collect all of the
configuration option special cases in OSC into one place and insert
into the ``os-client-config`` handling.
fixes:
- The ``parseractions.KeyValueAction`` class now raises
a ``argparse.ArgumentTypeError`` exception when the
argument is not in the form ``<key>=<value>``.
- Change ``utils.find_resource()`` to handle client managers
that lack a ``find()`` method. Raise an
``exceptions.CommandError`` exception when multiple matches
are found.
- Change ``utils.find_resource()`` to handle glanceclient's
``HTTPNotFound`` exception.
- Change ``utils.find_resource()`` to attempt lookups as
IDs first, falling back to ``find()`` methods when available.
- Refactor ``ClientManager`` class to remove OSC-specific logic and
move all option special-cases into ``cli.client_config.OSC_Config``.
Also change some private attributes to public (``region_name``,
``interface``, ``cacert``, ``verify`` and remove ``_insecure``).
- Refactor ``OpenStackShell`` to handle only global argument
processing and setting up the ClientManager with configuration
from ``os-client-config``. Command and plugin loading remain in
OSC.