Hello community,

here is the log from the commit of package python-openstackclient for 
openSUSE:Factory checked in at 2018-11-29 23:01:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-openstackclient (Old)
 and      /work/SRC/openSUSE:Factory/.python-openstackclient.new.19453 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-openstackclient"

Thu Nov 29 23:01:12 2018 rev:16 rq:652504 version:3.16.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-openstackclient/python-openstackclient.changes
    2018-09-07 15:38:19.718605402 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-openstackclient.new.19453/python-openstackclient.changes
 2018-11-29 23:01:15.147443396 +0100
@@ -1,0 +2,9 @@
+Wed Nov 28 23:52:50 UTC 2018 - cloud-de...@suse.de
+
+- update to version 3.16.1
+  - Update UPPER_CONSTRAINTS_FILE for stable/rocky
+  - Update .gitreview for stable/rocky
+  - import zuul job settings from project-config
+  - Fix broken gate jobs
+
+-------------------------------------------------------------------

Old:
----
  python-openstackclient-3.16.0.tar.gz

New:
----
  python-openstackclient-3.16.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-openstackclient.spec ++++++
--- /var/tmp/diff_new_pack.dt2dCX/_old  2018-11-29 23:01:16.147442162 +0100
+++ /var/tmp/diff_new_pack.dt2dCX/_new  2018-11-29 23:01:16.147442162 +0100
@@ -12,18 +12,18 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
 Name:           python-openstackclient
-Version:        3.16.0
+Version:        3.16.1
 Release:        0
 Summary:        OpenStack Command-line Client
 License:        Apache-2.0
 Group:          Development/Languages/Python
 URL:            https://launchpad.net/python-openstackclient
-Source0:        
https://files.pythonhosted.org/packages/source/p/python-openstackclient/python-openstackclient-3.16.0.tar.gz
+Source0:        
https://files.pythonhosted.org/packages/source/p/python-openstackclient/python-openstackclient-3.16.1.tar.gz
 BuildRequires:  openstack-macros
 BuildRequires:  python-devel
 BuildRequires:  python2-cinderclient >= 3.3.0
@@ -122,15 +122,15 @@
 This package contains auto-generated documentation.
 
 %prep
-%autosetup -p1 -n python-openstackclient-3.16.0
+%autosetup -p1 -n python-openstackclient-3.16.1
 %py_req_cleanup
 sed -i 's/^warning-is-error.*/warning-is-error = 0/g' setup.cfg
 
 %build
 %{python_build}
 
-PBR_VERSION=3.16.0 sphinx-build -b html doc/source doc/build/html
-PBR_VERSION=3.16.0 sphinx-build -b man doc/source doc/build/man
+PBR_VERSION=3.16.1 sphinx-build -b html doc/source doc/build/html
+PBR_VERSION=3.16.1 sphinx-build -b man doc/source doc/build/man
 # remove the sphinx-build leftovers
 rm -rf doc/build/html/.{doctrees,buildinfo}
 

++++++ python-openstackclient-3.16.0.tar.gz -> 
python-openstackclient-3.16.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/.zuul.yaml 
new/python-openstackclient-3.16.1/.zuul.yaml
--- old/python-openstackclient-3.16.0/.zuul.yaml        2018-07-26 
11:16:46.000000000 +0200
+++ new/python-openstackclient-3.16.1/.zuul.yaml        2018-09-05 
21:35:32.000000000 +0200
@@ -192,6 +192,12 @@
     templates:
       - openstackclient-plugin-jobs
       - osc-tox-unit-tips
+      - openstack-python-jobs
+      - openstack-python35-jobs
+      - publish-openstack-sphinx-docs
+      - check-requirements
+      - release-notes-jobs
+      - lib-forward-testing
     check:
       jobs:
         - osc-functional-devstack
@@ -210,3 +216,6 @@
       jobs:
         - osc-functional-devstack
         - openstack-tox-lower-constraints
+    post:
+      jobs:
+        - openstack-tox-cover
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/AUTHORS 
new/python-openstackclient-3.16.1/AUTHORS
--- old/python-openstackclient-3.16.0/AUTHORS   2018-07-26 11:20:13.000000000 
+0200
+++ new/python-openstackclient-3.16.1/AUTHORS   2018-09-05 21:39:11.000000000 
+0200
@@ -84,6 +84,7 @@
 Elena Ezhova <eezh...@mirantis.com>
 Emilien Macchi <emil...@redhat.com>
 Eric Brown <bro...@vmware.com>
+Fan Zhang <z...@outlook.com>
 Fang Zhen <zhen.f...@easystack.cn>
 Fei Long Wang <flw...@catalyst.net.nz>
 Flavio Percoco <flape...@gmail.com>
@@ -343,6 +344,7 @@
 npraveen35 <npravee...@gmail.com>
 phil-hopkins-a <phil.hopk...@rackspace.com>
 qinchunhua <qin.chun...@zte.com.cn>
+qingszhao <zhao.daq...@99cloud.net>
 qtang <qt...@vmware.com>
 rabi <ramis...@redhat.com>
 reedip <reedip.baner...@nectechnologies.in>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/ChangeLog 
new/python-openstackclient-3.16.1/ChangeLog
--- old/python-openstackclient-3.16.0/ChangeLog 2018-07-26 11:20:13.000000000 
+0200
+++ new/python-openstackclient-3.16.1/ChangeLog 2018-09-05 21:39:11.000000000 
+0200
@@ -1,6 +1,14 @@
 CHANGES
 =======
 
+3.16.1
+------
+
+* Fix broken gate jobs
+* import zuul job settings from project-config
+* Update UPPER\_CONSTRAINTS\_FILE for stable/rocky
+* Update .gitreview for stable/rocky
+
 3.16.0
 ------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/PKG-INFO 
new/python-openstackclient-3.16.1/PKG-INFO
--- old/python-openstackclient-3.16.0/PKG-INFO  2018-07-26 11:20:19.000000000 
+0200
+++ new/python-openstackclient-3.16.1/PKG-INFO  2018-09-05 21:39:16.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: python-openstackclient
-Version: 3.16.0
+Version: 3.16.1
 Summary: OpenStack Command-line Client
 Home-page: https://docs.openstack.org/python-openstackclient/latest/
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/RELEASENOTES.rst 
new/python-openstackclient-3.16.1/RELEASENOTES.rst
--- old/python-openstackclient-3.16.0/RELEASENOTES.rst  2018-07-26 
11:20:19.000000000 +0200
+++ new/python-openstackclient-3.16.1/RELEASENOTES.rst  2018-09-05 
21:39:16.000000000 +0200
@@ -1,177 +1,3 @@
 ======================
 python-openstackclient
 ======================
-
-.. _python-openstackclient_3.16.0:
-
-3.16.0
-======
-
-.. _python-openstackclient_3.16.0_New Features:
-
-New Features
-------------
-
-.. releasenotes/notes/add-image-member-list-1630ead5988348c2.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``image member list`` command to list all members of an image.
-
-.. releasenotes/notes/add-image-tag-filter-support-5cb039416b07caab.yaml @ 
9edbab8c90bb74ba12892d0c77c8e8a99d4868fe
-
-- Add ``--tag`` option to ``image list`` command to filter by tag.
-
-.. releasenotes/notes/add-server-create-image-property-ef76af26233b472b.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add  ``--image-property`` option to ``server create`` command.
-  This parameter will filter a image which properties that are matching.
-
-.. 
releasenotes/notes/allow-port-list-with-ip-address-substr-14c5805b241e402f.yaml 
@ 4a9cb8eea8e47950cb30ecaa7572a23d80d5bfcd
-
-- Add an ``ip-substring`` key to the ``--fixed-ip`` option of the
-  ``port list`` command.  This allows filtering ports by a substring
-  match of an IP address.
-  [Bug `1718605 <https://bugs.launchpad.net/bugs/1718605>`_]
-
-.. releasenotes/notes/bp-unified-limits-58f166401534a4ff.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``registered limit`` commands for managing registered limits in Keystone.
-  Registered limits define limits of resources for projects to assume by 
default.
-  [`bp unified-limits 
<https://blueprints.launchpad.net/keystone/+spec/unified-limit>`_]
-
-.. releasenotes/notes/bp-unified-limits-6c5fdb1c26805d86.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``limit`` commands for managing project-specific limits in keystone.
-  Limits define limits of resources for projects to consume once a limit
-  has been registered.
-  [`bp unified-limits 
<https://blueprints.launchpad.net/keystone/+spec/unified-limit>`_]
-
-.. releasenotes/notes/bug-1750983-420945d6c0afb509.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``--tag`` and ``--no-tag`` options to ``security group create`` and
-  ``security group set`` commands.
-  [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-.. releasenotes/notes/bug-1750983-420945d6c0afb509.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``--tags``, ``--any-tags``, ``--not-tags`` and ``--not-any-tags`` options
-  to ``security group list`` command.
-  [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-.. releasenotes/notes/bug-1750983-420945d6c0afb509.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add ``--tag`` and ``--all-tag`` options to ``security group unset`` command.
-  [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-.. releasenotes/notes/flavor-add-description-b618abd4a7fb6545.yaml @ 
7e8c55fa1bbc5f44b9233602786c22d6019eef22
-
-- Add ``--description`` option to ``flavor set`` command to update the 
description of the flavor. Only available starting with 
``--os-compute-api-version 2.55``.
-
-.. releasenotes/notes/flavor-add-description-b618abd4a7fb6545.yaml @ 
7e8c55fa1bbc5f44b9233602786c22d6019eef22
-
-- Add ``--description`` option to ``flavor create`` command to set the 
description of the flavor. Only available starting with 
``--os-compute-api-version 2.55``.
-
-.. releasenotes/notes/implement-system-scope-4c3c47996f98deac.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- Add support for system-scope to ``role`` commands. This includes the ability 
to
-  generate system-scoped tokens using ``system_scope: all`` in ``cloud.yaml``
-  or ``OS_SYSTEM_SCOPE=all`` in an environment variable. Support is also
-  included for managing role assignments on the system using ``--system``
-  when adding and removing roles.
-  [`bp system-scope 
<https://blueprints.launchpad.net/keystone/+spec/system-scope>`_]
-
-.. releasenotes/notes/subnet-set-segment-id-4440e433b170f9f3.yaml @ 
e8c731547d85b1241c7898d2fb77b8d635901dfd
-
-- Add ``--network-segment`` option to ``subnet set`` command. This enables the 
possiblity to set the ``segment_id`` of a subnet on update.
-
-.. releasenotes/notes/versions-show-12a2443624c83048.yaml @ 
9ece632f96844fd78c2f717f2f6d35e61c3b9ef2
-
-- A new command, ``openstack versions show`` was added, which will
-  provide a list of all versions of all services in the cloud. It
-  includes relevant metadata, such as min/max microversion, endpoint,
-  status and region.
-
-
-.. _python-openstackclient_3.16.0_Bug Fixes:
-
-Bug Fixes
----------
-
-.. releasenotes/notes/add-community-option-to-image-list-ac0651eb2e5d632f.yaml 
@ 860639a548a2c07193662cd361432cb5061c2a7f
-
-- Add ``--community`` option to ``image list`` command. [Bug `2001925 
<https://storyboard.openstack.org/#!/story/2001925>`_]
-
-.. releasenotes/notes/bug-1742453-ae4be6de90a3ae1d.yaml @ 
c615bcd75e85a2a2231d9944caeffd746e881e5e
-
-- The ``server list --all`` command now resolves non-public flavor names,
-  too, so that the ``Flavor`` column will be properly populated.
-  [Bug `1742453 <https://bugs.launchpad.net/bugs/1742453>`_]
-
-.. releasenotes/notes/bug-1750985-a5345f715a14825c.yaml @ 
09a0916daeeb9c257d84175a43062d5b4a1d0b1a
-
-- Add ``--tag`` support to ``floating ip create|list|set|unset`` commands.
-  [:lpbug:`1750985`]
-
-.. releasenotes/notes/bug-1751104-compute-api-2.47-4bfa21cfaa13f408.yaml @ 
4236d777ffb6f03bb2682142aaa18b48e9a00d96
-
-- The ``server show`` command will now properly show the server's
-  flavor information when using ``--os-compute-api-version 2.47`` or higher.
-  [Bug `1751104 <https://storyboard.openstack.org/#!/story/1751104>`_]
-
-
-.. _python-openstackclient_3.16.0_Other Notes:
-
-Other Notes
------------
-
-.. releasenotes/notes/remove-ip-floating-commands-d5363f313e09249a.yaml @ 
ea89065dabf92c2684e55c4b37c7be9b667cfa1e
-
-- Remove deprecated ``ip floating`` and ``ip floating pool`` commands.
-
-
-.. _python-openstackclient_3.15.0:
-
-3.15.0
-======
-
-.. _python-openstackclient_3.15.0_New Features:
-
-New Features
-------------
-
-.. releasenotes/notes/bp-application-credential-a7031a043efc4a25.yaml @ 
375964f270e125b8887e0ca4ee1cbe15d5eddf04
-
-- Adds support for creating, reading, and deleting application credentials
-  via the ``appication credential`` command. With application credentials, a
-  user can grant their applications limited access to their cloud resources.
-  Once created, users can authenticate with an application credential by
-  using the ``v3applicationcredential`` auth type.
-  [`blueprint application-credentials 
<https://blueprints.launchpad.net/keystone/+spec/application-credentials>`_]
-
-.. releasenotes/notes/bp-project-tags-b544aef9672d415b.yaml @ 
d32664150fbc00340f3ff4304c13abf9a191299a
-
-- Add ``--tag`` option to ``project create`` command,  ``--tag``, 
``--clear-tags``, and
-  ``--remove-tag`` options to ``project set`` command. Add ``--tags``, 
``--tags-any``, 
-  ``--not-tags``, and ``--not-tags-any`` options to ``project list`` command 
to filter
-  list results by different projects based on their tags.
-  [`blueprint project-tags 
<https://blueprints.launchpad.net/keystone/+spec/project-tags>`_]
-
-.. releasenotes/notes/bug-1714878-46806jv2yv13q054.yaml @ 
4a9e84be994575146b30bd40a341d5686174eaad
-
-- Add ``--dns-domain`` option to ``port create`` and ``port set`` commands.
-  Requires the ``dns_domain for ports`` extension to be enabled. See the
-  `Neutron DNS integration 
<https://docs.openstack.org/neutron/latest/admin/config-dns-int.html>`_
-  documentation for information how to use this.
-  [Bug `1714878 
<https://bugs.launchpad.net/python-openstackclient/+bug/1714878>`_]
-
-.. releasenotes/notes/keystone-endpoint-group-0c55debbb66844f2.yaml @ 
1eae301c4fab30c551ed7542cdaf8735cbbc3822
-
-- Add endpoint group commands: ``endpoint group add project``, ``endpoint 
group create``,
-  ``endpoint group delete``, ``endpoint group list``, ``endpoint group remove 
project``,
-  ``endpoint group set`` and ``endpoint group show``.
-  [Blueprint `keystone-endpoint-filter 
<https://blueprints.launchpad.net/python-openstackclient/+spec/keystone-endpoint-filter>`_]
-
-.. releasenotes/notes/neutron_mtu-d87e53e2d76f8612.yaml @ 
18563b4132f794cc6612c2897795f96a31b565ae
-
-- Add ``--mtu`` option to ``network create`` and ``network set``
-  commands, allowing CLI users to set the MTU for Neutron networks.
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/doc/source/cli/command-objects/volume.rst 
new/python-openstackclient-3.16.1/doc/source/cli/command-objects/volume.rst
--- old/python-openstackclient-3.16.0/doc/source/cli/command-objects/volume.rst 
2018-07-26 11:16:46.000000000 +0200
+++ new/python-openstackclient-3.16.1/doc/source/cli/command-objects/volume.rst 
2018-09-05 21:35:12.000000000 +0200
@@ -15,7 +15,7 @@
     openstack volume create
         [--size <size>]
         [--type <volume-type>]
-        [--image <image> | --snapshot <snapshot> | --source <volume> | 
--source-replicated <replicated-volume>]
+        [--image <image> | --snapshot <snapshot> | --source <volume> ]
         [--description <description>]
         [--user <user>]
         [--project <project>]
@@ -31,7 +31,7 @@
 .. option:: --size <size>
 
     Volume size in GB
-    (Required unless --snapshot or --source or --source-replicated is 
specified)
+    (Required unless --snapshot or --source is specified)
 
 .. option:: --type <volume-type>
 
@@ -54,10 +54,6 @@
 
     Volume to clone (name or ID)
 
-.. option:: --source-replicated <replicated-volume>
-
-    Replicated volume to clone (name or ID)
-
 .. option:: --description <description>
 
     Volume description
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/base.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/base.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/base.py
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/base.py
    2018-09-05 21:35:12.000000000 +0200
@@ -0,0 +1,24 @@
+#    Licensed under the Apache License, Version 2.0 (the "License"); you may
+#    not use this file except in compliance with the License. You may obtain
+#    a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+#    License for the specific language governing permissions and limitations
+#    under the License.
+
+from openstackclient.tests.functional import base
+
+
+class BaseImageTests(base.TestCase):
+    """Functional tests for Image commands"""
+
+    @classmethod
+    def setUpClass(cls):
+        super(BaseImageTests, cls).setUpClass()
+        # TODO(dtroyer): maybe do image API discovery here to determine
+        #                what is available, it isn't in the service catalog
+        cls.haz_v1_api = False
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/v1/test_image.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/v1/test_image.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/v1/test_image.py
   2018-07-26 11:16:46.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/v1/test_image.py
   2018-09-05 21:35:12.000000000 +0200
@@ -15,50 +15,47 @@
 
 import fixtures
 
-from openstackclient.tests.functional import base
+from openstackclient.tests.functional.image import base
 
 
-class ImageTests(base.TestCase):
-    """Functional tests for image. """
+class ImageTests(base.BaseImageTests):
+    """Functional tests for Image commands"""
 
-    NAME = uuid.uuid4().hex
-    OTHER_NAME = uuid.uuid4().hex
+    def setUp(self):
+        super(ImageTests, self).setUp()
+        if not self.haz_v1_api:
+            self.skipTest('No Image v1 API present')
 
-    @classmethod
-    def setUpClass(cls):
-        super(ImageTests, cls).setUpClass()
-        json_output = json.loads(cls.openstack(
+        self.name = uuid.uuid4().hex
+        json_output = json.loads(self.openstack(
             '--os-image-api-version 1 '
             'image create -f json ' +
-            cls.NAME
+            self.name
         ))
-        cls.image_id = json_output["id"]
-        cls.assertOutput(cls.NAME, json_output['name'])
+        self.image_id = json_output["id"]
+        self.assertOutput(self.name, json_output['name'])
+
+        ver_fixture = fixtures.EnvironmentVariable(
+            'OS_IMAGE_API_VERSION', '1'
+        )
+        self.useFixture(ver_fixture)
 
-    @classmethod
-    def tearDownClass(cls):
+    def tearDown(self):
         try:
-            cls.openstack(
+            self.openstack(
                 '--os-image-api-version 1 '
                 'image delete ' +
-                cls.image_id
+                self.image_id
             )
         finally:
-            super(ImageTests, cls).tearDownClass()
-
-    def setUp(self):
-        super(ImageTests, self).setUp()
-        ver_fixture = fixtures.EnvironmentVariable(
-            'OS_IMAGE_API_VERSION', '1'
-        )
-        self.useFixture(ver_fixture)
+            super(ImageTests, self).tearDown()
 
     def test_image_list(self):
         json_output = json.loads(self.openstack(
             'image list -f json '
         ))
         self.assertIn(
-            self.NAME,
+            self.name,
             [img['Name'] for img in json_output]
         )
 
@@ -72,11 +69,11 @@
             '--min-ram 5 ' +
             '--disk-format qcow2 ' +
             '--public ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         self.assertEqual(
             4,
@@ -100,11 +97,11 @@
             '--property a=b ' +
             '--property c=d ' +
             '--public ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         self.assertEqual(
             "a='b', c='d'",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/v2/test_image.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/v2/test_image.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/image/v2/test_image.py
   2018-07-26 11:16:46.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/image/v2/test_image.py
   2018-09-05 21:35:12.000000000 +0200
@@ -16,60 +16,55 @@
 import fixtures
 # from glanceclient import exc as image_exceptions
 
-from openstackclient.tests.functional import base
+from openstackclient.tests.functional.image import base
 
 
-class ImageTests(base.TestCase):
-    """Functional tests for image. """
+class ImageTests(base.BaseImageTests):
+    """Functional tests for Image commands"""
 
-    NAME = uuid.uuid4().hex
-    OTHER_NAME = uuid.uuid4().hex
+    def setUp(self):
+        super(ImageTests, self).setUp()
 
-    @classmethod
-    def setUpClass(cls):
-        super(ImageTests, cls).setUpClass()
-        cls.image_tag = 'my_tag'
-        json_output = json.loads(cls.openstack(
+        self.name = uuid.uuid4().hex
+        self.image_tag = 'my_tag'
+        json_output = json.loads(self.openstack(
             '--os-image-api-version 2 '
             'image create -f json --tag {tag} {name}'.format(
-                tag=cls.image_tag, name=cls.NAME)
+                tag=self.image_tag, name=self.name)
         ))
-        cls.image_id = json_output["id"]
-        cls.assertOutput(cls.NAME, json_output['name'])
+        self.image_id = json_output["id"]
+        self.assertOutput(self.name, json_output['name'])
+
+        ver_fixture = fixtures.EnvironmentVariable(
+            'OS_IMAGE_API_VERSION', '2'
+        )
+        self.useFixture(ver_fixture)
 
-    @classmethod
-    def tearDownClass(cls):
+    def tearDown(self):
         try:
-            cls.openstack(
+            self.openstack(
                 '--os-image-api-version 2 '
                 'image delete ' +
-                cls.image_id
+                self.image_id
             )
         finally:
-            super(ImageTests, cls).tearDownClass()
-
-    def setUp(self):
-        super(ImageTests, self).setUp()
-        ver_fixture = fixtures.EnvironmentVariable(
-            'OS_IMAGE_API_VERSION', '2'
-        )
-        self.useFixture(ver_fixture)
+            super(ImageTests, self).tearDown()
 
     def test_image_list(self):
         json_output = json.loads(self.openstack(
             'image list -f json '
         ))
         self.assertIn(
-            self.NAME,
+            self.name,
             [img['Name'] for img in json_output]
         )
 
     def test_image_list_with_name_filter(self):
         json_output = json.loads(self.openstack(
-            'image list --name ' + self.NAME + ' -f json'
+            'image list --name ' + self.name + ' -f json'
         ))
         self.assertIn(
-            self.NAME,
+            self.name,
             [img['Name'] for img in json_output]
         )
 
@@ -101,11 +96,11 @@
             '--min-disk 4 ' +
             '--min-ram 5 ' +
             '--public ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         self.assertEqual(
             4,
@@ -126,31 +121,31 @@
             '--property a=b ' +
             '--property c=d ' +
             '--public ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
-        self.assertEqual(
-            "a='b', c='d'",
-            json_output["properties"],
-        )
+        # NOTE(dtroyer): Don't do a full-string compare so we are tolerant of
+        #                new artributes in the returned data
+        self.assertIn("a='b'", json_output["properties"])
+        self.assertIn("c='d'", json_output["properties"])
 
         self.openstack(
             'image unset ' +
             '--property a ' +
             '--property c ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
-        self.assertNotIn(
-            'properties',
-            json_output,
-        )
+        # NOTE(dtroyer): Don't do a full-string compare so we are tolerant of
+        #                new artributes in the returned data
+        self.assertNotIn("a='b'", json_output["properties"])
+        self.assertNotIn("c='d'", json_output["properties"])
 
         # Test tags
         self.assertNotIn(
@@ -160,11 +155,11 @@
         self.openstack(
             'image set ' +
             '--tag 01 ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         self.assertIn(
             '01',
@@ -174,11 +169,11 @@
         self.openstack(
             'image unset ' +
             '--tag 01 ' +
-            self.NAME
+            self.name
         )
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         self.assertNotIn(
             '01',
@@ -222,7 +217,7 @@
 
         json_output = json.loads(self.openstack(
             'image show -f json ' +
-            self.NAME
+            self.name
         ))
         # NOTE(dtroyer): Until OSC supports --shared flags in create and set
         #                we can not properly test membership.  Sometimes the
@@ -230,47 +225,47 @@
         if json_output["visibility"] == 'shared':
             self.openstack(
                 'image add project ' +
-                self.NAME + ' ' +
+                self.name + ' ' +
                 my_project_id
             )
             # self.addCleanup(
             #     self.openstack,
             #     'image remove project ' +
-            #     self.NAME + ' ' +
+            #     self.name + ' ' +
             #     my_project_id
             # )
 
             self.openstack(
                 'image set ' +
                 '--accept ' +
-                self.NAME
+                self.name
             )
             json_output = json.loads(self.openstack(
                 'image list -f json ' +
                 '--shared'
             ))
             self.assertIn(
-                self.NAME,
+                self.name,
                 [img['Name'] for img in json_output]
             )
 
             self.openstack(
                 'image set ' +
                 '--reject ' +
-                self.NAME
+                self.name
             )
             json_output = json.loads(self.openstack(
                 'image list -f json ' +
                 '--shared'
             ))
             # self.assertNotIn(
-            #     self.NAME,
+            #     self.name,
             #     [img['Name'] for img in json_output]
             # )
 
             self.openstack(
                 'image remove project ' +
-                self.NAME + ' ' +
+                self.name + ' ' +
                 my_project_id
             )
 
@@ -280,11 +275,11 @@
         #         image_exceptions.HTTPForbidden,
         #         self.openstack,
         #         'image add project ' +
-        #         self.NAME + ' ' +
+        #         self.name + ' ' +
         #         my_project_id
         #     )
         #     self.openstack(
         #         'image set ' +
         #         '--share ' +
-        #         self.NAME
+        #         self.name
         #     )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v1/test_transfer_request.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v1/test_transfer_request.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v1/test_transfer_request.py
       2018-07-26 11:16:46.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v1/test_transfer_request.py
       2018-09-05 21:35:12.000000000 +0200
@@ -29,20 +29,13 @@
             'volume create -f json --size 1 ' + cls.VOLUME_NAME))
         cls.assertOutput(cls.VOLUME_NAME, cmd_output['name'])
 
-        cmd_output = json.loads(cls.openstack(
-            'volume transfer request create -f json ' +
-            cls.VOLUME_NAME +
-            ' --name ' + cls.NAME))
-        cls.assertOutput(cls.NAME, cmd_output['name'])
+        cls.wait_for_status("volume", cls.VOLUME_NAME, "available")
 
     @classmethod
     def tearDownClass(cls):
         try:
-            raw_output_transfer = cls.openstack(
-                'volume transfer request delete ' + cls.NAME)
             raw_output_volume = cls.openstack(
                 'volume delete ' + cls.VOLUME_NAME)
-            cls.assertOutput('', raw_output_transfer)
             cls.assertOutput('', raw_output_volume)
         finally:
             super(TransferRequestTests, cls).tearDownClass()
@@ -79,12 +72,28 @@
             'volume delete ' + volume_name)
         self.assertEqual('', raw_output)
 
-    def test_volume_transfer_request_list(self):
+    def test_volume_transfer_request_list_show(self):
+        name = uuid.uuid4().hex
+        cmd_output = json.loads(self.openstack(
+            'volume transfer request create -f json ' +
+            ' --name ' + name + ' ' +
+            self.VOLUME_NAME
+        ))
+        self.addCleanup(
+            self.openstack,
+            'volume transfer request delete ' + name
+        )
+        self.assertOutput(name, cmd_output['name'])
+        auth_key = cmd_output['auth_key']
+        self.assertTrue(auth_key)
+
         cmd_output = json.loads(self.openstack(
-            'volume transfer request list -f json'))
-        self.assertIn(self.NAME, [req['Name'] for req in cmd_output])
+            'volume transfer request list -f json'
+        ))
+        self.assertIn(name, [req['Name'] for req in cmd_output])
 
-    def test_volume_transfer_request_show(self):
         cmd_output = json.loads(self.openstack(
-            'volume transfer request show -f json ' + self.NAME))
-        self.assertEqual(self.NAME, cmd_output['name'])
+            'volume transfer request show -f json ' +
+            name
+        ))
+        self.assertEqual(name, cmd_output['name'])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v2/test_transfer_request.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v2/test_transfer_request.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v2/test_transfer_request.py
       2018-07-26 11:16:46.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v2/test_transfer_request.py
       2018-09-05 21:35:12.000000000 +0200
@@ -21,29 +21,24 @@
 
     NAME = uuid.uuid4().hex
     VOLUME_NAME = uuid.uuid4().hex
+    API_VERSION = '2'
 
     @classmethod
     def setUpClass(cls):
         super(TransferRequestTests, cls).setUpClass()
 
         cmd_output = json.loads(cls.openstack(
+            '--os-volume-api-version ' + cls.API_VERSION + ' ' +
             'volume create -f json --size 1 ' + cls.VOLUME_NAME))
         cls.assertOutput(cls.VOLUME_NAME, cmd_output['name'])
 
-        cmd_output = json.loads(cls.openstack(
-            'volume transfer request create -f json ' +
-            cls.VOLUME_NAME +
-            ' --name ' + cls.NAME))
-        cls.assertOutput(cls.NAME, cmd_output['name'])
+        cls.wait_for_status("volume", cls.VOLUME_NAME, "available")
 
     @classmethod
     def tearDownClass(cls):
         try:
-            raw_output_transfer = cls.openstack(
-                'volume transfer request delete ' + cls.NAME)
             raw_output_volume = cls.openstack(
                 'volume delete ' + cls.VOLUME_NAME)
-            cls.assertOutput('', raw_output_transfer)
             cls.assertOutput('', raw_output_volume)
         finally:
             super(TransferRequestTests, cls).tearDownClass()
@@ -80,12 +75,31 @@
             'volume delete ' + volume_name)
         self.assertEqual('', raw_output)
 
-    def test_volume_transfer_request_list(self):
+    def test_volume_transfer_request_list_show(self):
+        name = uuid.uuid4().hex
         cmd_output = json.loads(self.openstack(
-            'volume transfer request list -f json'))
-        self.assertIn(self.NAME, [req['Name'] for req in cmd_output])
+            '--os-volume-api-version ' + self.API_VERSION + ' ' +
+            'volume transfer request create -f json ' +
+            ' --name ' + name + ' ' +
+            self.VOLUME_NAME
+        ))
+        self.addCleanup(
+            self.openstack,
+            'volume transfer request delete ' + name
+        )
+        self.assertEqual(name, cmd_output['name'])
+        auth_key = cmd_output['auth_key']
+        self.assertTrue(auth_key)
+
+        cmd_output = json.loads(self.openstack(
+            '--os-volume-api-version ' + self.API_VERSION + ' ' +
+            'volume transfer request list -f json'
+        ))
+        self.assertIn(name, [req['Name'] for req in cmd_output])
 
-    def test_volume_transfer_request_show(self):
         cmd_output = json.loads(self.openstack(
-            'volume transfer request show -f json ' + self.NAME))
-        self.assertEqual(self.NAME, cmd_output['name'])
+            '--os-volume-api-version ' + self.API_VERSION + ' ' +
+            'volume transfer request show -f json ' +
+            name
+        ))
+        self.assertEqual(name, cmd_output['name'])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v3/test_transfer_request.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v3/test_transfer_request.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/functional/volume/v3/test_transfer_request.py
       2018-07-26 11:16:46.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/functional/volume/v3/test_transfer_request.py
       2018-09-05 21:35:12.000000000 +0200
@@ -17,3 +17,5 @@
 
 class TransferRequestTests(common.BaseVolumeTests, v2.TransferRequestTests):
     """Functional tests for transfer request. """
+
+    API_VERSION = '3'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/tests/unit/volume/v2/test_volume.py
 
new/python-openstackclient-3.16.1/openstackclient/tests/unit/volume/v2/test_volume.py
--- 
old/python-openstackclient-3.16.0/openstackclient/tests/unit/volume/v2/test_volume.py
       2018-07-26 11:16:47.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/openstackclient/tests/unit/volume/v2/test_volume.py
       2018-09-05 21:35:32.000000000 +0200
@@ -133,7 +133,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -185,7 +184,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=consistency_group.id,
-            source_replica=None,
             multiattach=True,
             scheduler_hints={'k': 'v'},
         )
@@ -231,7 +229,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -277,7 +274,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -317,7 +313,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -359,7 +354,6 @@
             imageRef=image.id,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -401,7 +395,6 @@
             imageRef=image.id,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -442,7 +435,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -484,7 +476,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -530,7 +521,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -585,7 +575,6 @@
             imageRef=None,
             source_volid=None,
             consistencygroup_id=None,
-            source_replica=None,
             multiattach=False,
             scheduler_hints=None,
         )
@@ -598,40 +587,6 @@
         self.volumes_mock.update_readonly_flag.assert_called_with(
             self.new_volume.id, True)
 
-    def test_volume_create_with_source_replicated(self):
-        self.volumes_mock.get.return_value = self.new_volume
-        arglist = [
-            '--source-replicated', self.new_volume.id,
-            self.new_volume.name,
-        ]
-        verifylist = [
-            ('source_replicated', self.new_volume.id),
-            ('name', self.new_volume.name),
-        ]
-        parsed_args = self.check_parser(self.cmd, arglist, verifylist)
-
-        columns, data = self.cmd.take_action(parsed_args)
-        self.volumes_mock.create.assert_called_once_with(
-            size=None,
-            snapshot_id=None,
-            name=self.new_volume.name,
-            description=None,
-            volume_type=None,
-            user_id=None,
-            project_id=None,
-            availability_zone=None,
-            metadata=None,
-            imageRef=None,
-            source_volid=None,
-            consistencygroup_id=None,
-            source_replica=self.new_volume.id,
-            multiattach=False,
-            scheduler_hints=None,
-        )
-
-        self.assertEqual(self.columns, columns)
-        self.assertEqual(self.datalist, data)
-
     def test_volume_create_without_size(self):
         arglist = [
             self.new_volume.name,
@@ -649,7 +604,6 @@
             '--image', 'source_image',
             '--source', 'source_volume',
             '--snapshot', 'source_snapshot',
-            '--source-replicated', 'source_replicated_volume',
             '--size', str(self.new_volume.size),
             self.new_volume.name,
         ]
@@ -657,7 +611,6 @@
             ('image', 'source_image'),
             ('source', 'source_volume'),
             ('snapshot', 'source_snapshot'),
-            ('source-replicated', 'source_replicated_volume'),
             ('size', self.new_volume.size),
             ('name', self.new_volume.name),
         ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/openstackclient/volume/v2/volume.py 
new/python-openstackclient-3.16.1/openstackclient/volume/v2/volume.py
--- old/python-openstackclient-3.16.0/openstackclient/volume/v2/volume.py       
2018-07-26 11:16:47.000000000 +0200
+++ new/python-openstackclient-3.16.1/openstackclient/volume/v2/volume.py       
2018-09-05 21:35:32.000000000 +0200
@@ -14,6 +14,7 @@
 
 """Volume V2 Volume action implementations"""
 
+import argparse
 import copy
 import logging
 
@@ -37,7 +38,7 @@
     volume is not specified.
     """
 
-    if ((args.snapshot or args.source or args.source_replicated)
+    if ((args.snapshot or args.source)
             is None and args.size is None):
         msg = _("--size is a required option if snapshot "
                 "or source volume is not specified.")
@@ -59,7 +60,7 @@
             metavar="<size>",
             type=int,
             help=_("Volume size in GB (Required unless --snapshot or "
-                   "--source or --source-replicated is specified)"),
+                   "--source is specified)"),
         )
         parser.add_argument(
             "--type",
@@ -85,7 +86,7 @@
         source_group.add_argument(
             "--source-replicated",
             metavar="<replicated-volume>",
-            help=_("Replicated volume to clone (name or ID)"),
+            help=argparse.SUPPRESS,
         )
         parser.add_argument(
             "--description",
@@ -168,12 +169,6 @@
                 volume_client.volumes,
                 parsed_args.source).id
 
-        replicated_source_volume = None
-        if parsed_args.source_replicated:
-            replicated_source_volume = utils.find_resource(
-                volume_client.volumes,
-                parsed_args.source_replicated).id
-
         consistency_group = None
         if parsed_args.consistency_group:
             consistency_group = utils.find_resource(
@@ -227,7 +222,6 @@
             imageRef=image,
             source_volid=source_volume,
             consistencygroup_id=consistency_group,
-            source_replica=replicated_source_volume,
             multiattach=parsed_args.multi_attach,
             scheduler_hints=parsed_args.hint,
         )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/python_openstackclient.egg-info/PKG-INFO 
new/python-openstackclient-3.16.1/python_openstackclient.egg-info/PKG-INFO
--- old/python-openstackclient-3.16.0/python_openstackclient.egg-info/PKG-INFO  
2018-07-26 11:20:13.000000000 +0200
+++ new/python-openstackclient-3.16.1/python_openstackclient.egg-info/PKG-INFO  
2018-09-05 21:39:11.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: python-openstackclient
-Version: 3.16.0
+Version: 3.16.1
 Summary: OpenStack Command-line Client
 Home-page: https://docs.openstack.org/python-openstackclient/latest/
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/python_openstackclient.egg-info/SOURCES.txt 
new/python-openstackclient-3.16.1/python_openstackclient.egg-info/SOURCES.txt
--- 
old/python-openstackclient-3.16.0/python_openstackclient.egg-info/SOURCES.txt   
    2018-07-26 11:20:15.000000000 +0200
+++ 
new/python-openstackclient-3.16.1/python_openstackclient.egg-info/SOURCES.txt   
    2018-09-05 21:39:13.000000000 +0200
@@ -326,6 +326,7 @@
 openstackclient/tests/functional/identity/v3/test_token.py
 openstackclient/tests/functional/identity/v3/test_user.py
 openstackclient/tests/functional/image/__init__.py
+openstackclient/tests/functional/image/base.py
 openstackclient/tests/functional/image/v1/__init__.py
 openstackclient/tests/functional/image/v1/test_image.py
 openstackclient/tests/functional/image/v2/__init__.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/python_openstackclient.egg-info/pbr.json 
new/python-openstackclient-3.16.1/python_openstackclient.egg-info/pbr.json
--- old/python-openstackclient-3.16.0/python_openstackclient.egg-info/pbr.json  
2018-07-26 11:20:13.000000000 +0200
+++ new/python-openstackclient-3.16.1/python_openstackclient.egg-info/pbr.json  
2018-09-05 21:39:11.000000000 +0200
@@ -1 +1 @@
-{"git_version": "f77ca68", "is_release": true}
\ No newline at end of file
+{"git_version": "3e5a2d2", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-openstackclient-3.16.0/releasenotes/notes/reno.cache 
new/python-openstackclient-3.16.1/releasenotes/notes/reno.cache
--- old/python-openstackclient-3.16.0/releasenotes/notes/reno.cache     
2018-07-26 11:20:18.000000000 +0200
+++ new/python-openstackclient-3.16.1/releasenotes/notes/reno.cache     
2018-09-05 21:39:16.000000000 +0200
@@ -1,201 +1,3 @@
 ---
-file-contents:
-  releasenotes/notes/add-community-option-to-image-list-ac0651eb2e5d632f.yaml:
-    fixes: ['Add ``--community`` option to ``image list`` command. [Bug 
`2001925 <https://storyboard.openstack.org/#!/story/2001925>`_]']
-  releasenotes/notes/add-image-member-list-1630ead5988348c2.yaml:
-    features: [Add ``image member list`` command to list all members of an 
image.]
-  releasenotes/notes/add-image-tag-filter-support-5cb039416b07caab.yaml:
-    features: ['Add ``--tag`` option to ``image list`` command to filter by 
tag.
-
-        ']
-  releasenotes/notes/add-server-create-image-property-ef76af26233b472b.yaml:
-    features: ['Add  ``--image-property`` option to ``server create`` command.
-
-        This parameter will filter a image which properties that are matching.
-
-        ']
-  
releasenotes/notes/allow-port-list-with-ip-address-substr-14c5805b241e402f.yaml:
-    features: ['Add an ``ip-substring`` key to the ``--fixed-ip`` option of the
-
-        ``port list`` command.  This allows filtering ports by a substring
-
-        match of an IP address.
-
-        [Bug `1718605 <https://bugs.launchpad.net/bugs/1718605>`_]']
-  releasenotes/notes/bp-application-credential-a7031a043efc4a25.yaml:
-    features: ['Adds support for creating, reading, and deleting application 
credentials
-
-        via the ``appication credential`` command. With application 
credentials, a
-
-        user can grant their applications limited access to their cloud 
resources.
-
-        Once created, users can authenticate with an application credential by
-
-        using the ``v3applicationcredential`` auth type.
-
-        [`blueprint application-credentials 
<https://blueprints.launchpad.net/keystone/+spec/application-credentials>`_]
-
-        ']
-  releasenotes/notes/bp-project-tags-b544aef9672d415b.yaml:
-    features: ["Add ``--tag`` option to ``project create`` command,  
``--tag``, ``--clear-tags``,\
-        \ and\n``--remove-tag`` options to ``project set`` command. Add 
``--tags``,\
-        \ ``--tags-any``, \n``--not-tags``, and ``--not-tags-any`` options to 
``project\
-        \ list`` command to filter\nlist results by different projects based 
on their\
-        \ tags.\n[`blueprint project-tags 
<https://blueprints.launchpad.net/keystone/+spec/project-tags>`_]\n"]
-  releasenotes/notes/bp-unified-limits-58f166401534a4ff.yaml:
-    features: ['Add ``registered limit`` commands for managing registered 
limits in
-        Keystone.
-
-        Registered limits define limits of resources for projects to assume by 
default.
-
-        [`bp unified-limits 
<https://blueprints.launchpad.net/keystone/+spec/unified-limit>`_]
-
-        ']
-  releasenotes/notes/bp-unified-limits-6c5fdb1c26805d86.yaml:
-    features: ['Add ``limit`` commands for managing project-specific limits in 
keystone.
-
-        Limits define limits of resources for projects to consume once a limit
-
-        has been registered.
-
-        [`bp unified-limits 
<https://blueprints.launchpad.net/keystone/+spec/unified-limit>`_]
-
-        ']
-  releasenotes/notes/bug-1714878-46806jv2yv13q054.yaml:
-    features: ['Add ``--dns-domain`` option to ``port create`` and ``port 
set`` commands.
-
-        Requires the ``dns_domain for ports`` extension to be enabled. See the
-
-        `Neutron DNS integration 
<https://docs.openstack.org/neutron/latest/admin/config-dns-int.html>`_
-
-        documentation for information how to use this.
-
-        [Bug `1714878 
<https://bugs.launchpad.net/python-openstackclient/+bug/1714878>`_]
-
-        ']
-  releasenotes/notes/bug-1742453-ae4be6de90a3ae1d.yaml:
-    fixes: ['The ``server list --all`` command now resolves non-public flavor 
names,
-
-        too, so that the ``Flavor`` column will be properly populated.
-
-        [Bug `1742453 <https://bugs.launchpad.net/bugs/1742453>`_]
-
-        ']
-  releasenotes/notes/bug-1750983-420945d6c0afb509.yaml:
-    features: ['Add ``--tag`` and ``--no-tag`` options to ``security group 
create``
-        and
-
-        ``security group set`` commands.
-
-        [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-        ', 'Add ``--tags``, ``--any-tags``, ``--not-tags`` and 
``--not-any-tags``
-        options
-
-        to ``security group list`` command.
-
-        [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-        ', 'Add ``--tag`` and ``--all-tag`` options to ``security group 
unset`` command.
-
-        [Bug `1750983 
<https://bugs.launchpad.net/python-openstackclient/+bug/1750983>`_]
-
-        ']
-  releasenotes/notes/bug-1750985-a5345f715a14825c.yaml:
-    fixes: ['Add ``--tag`` support to ``floating ip create|list|set|unset`` 
commands.
-
-        [:lpbug:`1750985`]
-
-        ']
-  releasenotes/notes/bug-1751104-compute-api-2.47-4bfa21cfaa13f408.yaml:
-    fixes: ['The ``server show`` command will now properly show the server''s
-
-        flavor information when using ``--os-compute-api-version 2.47`` or 
higher.
-
-        [Bug `1751104 <https://storyboard.openstack.org/#!/story/1751104>`_]
-
-        ']
-  releasenotes/notes/flavor-add-description-b618abd4a7fb6545.yaml:
-    features: [Add ``--description`` option to ``flavor set`` command to 
update the
-        description of the flavor. Only available starting with 
``--os-compute-api-version
-        2.55``., Add ``--description`` option to ``flavor create`` command to 
set
-        the description of the flavor. Only available starting with 
``--os-compute-api-version
-        2.55``.]
-  releasenotes/notes/implement-system-scope-4c3c47996f98deac.yaml:
-    features: ['Add support for system-scope to ``role`` commands. This 
includes the
-        ability to
-
-        generate system-scoped tokens using ``system_scope: all`` in 
``cloud.yaml``
-
-        or ``OS_SYSTEM_SCOPE=all`` in an environment variable. Support is also
-
-        included for managing role assignments on the system using ``--system``
-
-        when adding and removing roles.
-
-        [`bp system-scope 
<https://blueprints.launchpad.net/keystone/+spec/system-scope>`_]
-
-        ']
-  releasenotes/notes/keystone-endpoint-group-0c55debbb66844f2.yaml:
-    features: ['Add endpoint group commands: ``endpoint group add project``, 
``endpoint
-        group create``,
-
-        ``endpoint group delete``, ``endpoint group list``, ``endpoint group 
remove
-        project``,
-
-        ``endpoint group set`` and ``endpoint group show``.
-
-        [Blueprint `keystone-endpoint-filter 
<https://blueprints.launchpad.net/python-openstackclient/+spec/keystone-endpoint-filter>`_]
-
-        ']
-  releasenotes/notes/neutron_mtu-d87e53e2d76f8612.yaml:
-    features: ['Add ``--mtu`` option to ``network create`` and ``network set``
-
-        commands, allowing CLI users to set the MTU for Neutron networks.
-
-        ']
-  releasenotes/notes/remove-ip-floating-commands-d5363f313e09249a.yaml:
-    other: ['Remove deprecated ``ip floating`` and ``ip floating pool`` 
commands.
-
-        ']
-  releasenotes/notes/subnet-set-segment-id-4440e433b170f9f3.yaml:
-    features: [Add ``--network-segment`` option to ``subnet set`` command. 
This enables
-        the possiblity to set the ``segment_id`` of a subnet on update.]
-  releasenotes/notes/versions-show-12a2443624c83048.yaml:
-    features: ['A new command, ``openstack versions show`` was added, which 
will
-
-        provide a list of all versions of all services in the cloud. It
-
-        includes relevant metadata, such as min/max microversion, endpoint,
-
-        status and region.
-
-        ']
-notes:
-- files:
-  - 
[releasenotes/notes/add-community-option-to-image-list-ac0651eb2e5d632f.yaml,
-    860639a548a2c07193662cd361432cb5061c2a7f]
-  - [releasenotes/notes/add-image-member-list-1630ead5988348c2.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/add-image-tag-filter-support-5cb039416b07caab.yaml, 
9edbab8c90bb74ba12892d0c77c8e8a99d4868fe]
-  - 
[releasenotes/notes/add-server-create-image-property-ef76af26233b472b.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - 
[releasenotes/notes/allow-port-list-with-ip-address-substr-14c5805b241e402f.yaml,
-    4a9cb8eea8e47950cb30ecaa7572a23d80d5bfcd]
-  - [releasenotes/notes/bp-unified-limits-58f166401534a4ff.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/bp-unified-limits-6c5fdb1c26805d86.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/bug-1742453-ae4be6de90a3ae1d.yaml, 
c615bcd75e85a2a2231d9944caeffd746e881e5e]
-  - [releasenotes/notes/bug-1750983-420945d6c0afb509.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/bug-1750985-a5345f715a14825c.yaml, 
09a0916daeeb9c257d84175a43062d5b4a1d0b1a]
-  - [releasenotes/notes/bug-1751104-compute-api-2.47-4bfa21cfaa13f408.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/flavor-add-description-b618abd4a7fb6545.yaml, 
7e8c55fa1bbc5f44b9233602786c22d6019eef22]
-  - [releasenotes/notes/implement-system-scope-4c3c47996f98deac.yaml, 
4236d777ffb6f03bb2682142aaa18b48e9a00d96]
-  - [releasenotes/notes/remove-ip-floating-commands-d5363f313e09249a.yaml, 
ea89065dabf92c2684e55c4b37c7be9b667cfa1e]
-  - [releasenotes/notes/subnet-set-segment-id-4440e433b170f9f3.yaml, 
e8c731547d85b1241c7898d2fb77b8d635901dfd]
-  - [releasenotes/notes/versions-show-12a2443624c83048.yaml, 
9ece632f96844fd78c2f717f2f6d35e61c3b9ef2]
-  version: 3.16.0
-- files:
-  - [releasenotes/notes/bp-application-credential-a7031a043efc4a25.yaml, 
375964f270e125b8887e0ca4ee1cbe15d5eddf04]
-  - [releasenotes/notes/bp-project-tags-b544aef9672d415b.yaml, 
d32664150fbc00340f3ff4304c13abf9a191299a]
-  - [releasenotes/notes/bug-1714878-46806jv2yv13q054.yaml, 
4a9e84be994575146b30bd40a341d5686174eaad]
-  - [releasenotes/notes/keystone-endpoint-group-0c55debbb66844f2.yaml, 
1eae301c4fab30c551ed7542cdaf8735cbbc3822]
-  - [releasenotes/notes/neutron_mtu-d87e53e2d76f8612.yaml, 
18563b4132f794cc6612c2897795f96a31b565ae]
-  version: 3.15.0
+file-contents: {}
+notes: []
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-openstackclient-3.16.0/tox.ini 
new/python-openstackclient-3.16.1/tox.ini
--- old/python-openstackclient-3.16.0/tox.ini   2018-07-26 11:16:47.000000000 
+0200
+++ new/python-openstackclient-3.16.1/tox.ini   2018-09-05 21:35:32.000000000 
+0200
@@ -11,7 +11,7 @@
          OS_STDERR_CAPTURE=1
          OS_TEST_TIMEOUT=60
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
+  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky}
   -r{toxinidir}/test-requirements.txt
   -r{toxinidir}/requirements.txt
 commands = stestr run {posargs}
@@ -88,7 +88,7 @@
 
 [testenv:venv]
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
+  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky}
   -r{toxinidir}/requirements.txt
   -r{toxinidir}/doc/requirements.txt
 commands = {posargs}
@@ -110,7 +110,7 @@
 
 [testenv:docs]
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
+  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky}
   -r{toxinidir}/requirements.txt
   -r{toxinidir}/doc/requirements.txt
 commands =
@@ -119,7 +119,7 @@
 
 [testenv:releasenotes]
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
+  
-c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky}
   -r{toxinidir}/doc/requirements.txt
 commands =
   sphinx-build -a -E -W -d releasenotes/build/doctrees -b html 
releasenotes/source releasenotes/build/html


Reply via email to