Hello community,
here is the log from the commit of package python-neutronclient for
openSUSE:Factory checked in at 2014-03-09 20:14:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-neutronclient (Old)
and /work/SRC/openSUSE:Factory/.python-neutronclient.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-neutronclient"
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-neutronclient/python-neutronclient.changes
2014-01-23 15:54:22.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.python-neutronclient.new/python-neutronclient.changes
2014-03-09 20:14:49.000000000 +0100
@@ -1,0 +2,40 @@
+Tue Feb 18 12:20:54 UTC 2014 - [email protected]
+
+- remove nonsense buildrequires
+
+-------------------------------------------------------------------
+Sat Feb 15 00:13:29 UTC 2014 - [email protected]
+
+- added patches (bnc#864196):
+ * 0001-Fixed-get_auth_info-for-pre-authenticated-clients.patch
+
+-------------------------------------------------------------------
+Fri Feb 14 10:42:58 UTC 2014 - [email protected]
+
+- Replace git_tarballs source service with download_files and set_version
+ + Use upstream URL as source (enables verification)
+
+-------------------------------------------------------------------
+Thu Feb 13 14:08:30 UTC 2014 - [email protected]
+
+- added patches:
+ * 0001-Switch-over-to-mox3.patch
+
+-------------------------------------------------------------------
+Thu Feb 13 13:16:06 UTC 2014 - [email protected]
+
+- fix requires
+
+-------------------------------------------------------------------
+Wed Jan 29 09:12:37 UTC 2014 - [email protected]
+
+- Add refresh_patches source service
+
+-------------------------------------------------------------------
+Wed Jan 22 11:58:52 UTC 2014 - [email protected]
+
+- Add patch to fix listing security group rules when there are too
+ many security groups:
+ 0001-Fix-listing-security-group-rules-when-there-are-too-.patch
+
+-------------------------------------------------------------------
New:
----
0001-Fix-listing-security-group-rules-when-there-are-too-.patch
0001-Fixed-get_auth_info-for-pre-authenticated-clients.patch
0001-Switch-over-to-mox3.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-neutronclient.spec ++++++
--- /var/tmp/diff_new_pack.TLuCT1/_old 2014-03-09 20:14:49.000000000 +0100
+++ /var/tmp/diff_new_pack.TLuCT1/_new 2014-03-09 20:14:49.000000000 +0100
@@ -25,30 +25,23 @@
License: Apache-2.0
Group: Development/Languages/Python
Url: http://launchpad.net/python-neutronclient
-Source: python-neutronclient-2.3.3.tar.gz
+Source:
http://tarballs.openstack.org/python-neutronclient/python-neutronclient-2.3.3.tar.gz
+# https://review.openstack.org/68357
+Patch0: 0001-Fix-listing-security-group-rules-when-there-are-too-.patch
+Patch1: 0001-Switch-over-to-mox3.patch
+Patch2: 0001-Fixed-get_auth_info-for-pre-authenticated-clients.patch
BuildRequires: openstack-suse-macros
BuildRequires: python-base
BuildRequires: python-distribute
# Documentation build requirements:
BuildRequires: python-Sphinx
-BuildRequires: python-cliff >= 1.2.1
-BuildRequires: python-cliff-tablib
-BuildRequires: python-coverage
-BuildRequires: python-flake8
-BuildRequires: python-hacking
-BuildRequires: python-httplib2
-BuildRequires: python-iso8601
-BuildRequires: python-mox
BuildRequires: python-nose
BuildRequires: python-pbr
-BuildRequires: python-pep8
-BuildRequires: python-pyflakes
BuildRequires: python-pyparsing >= 1.5.6
BuildRequires: python-simplejson
-BuildRequires: python-testrepository
-BuildRequires: python-testtools
Requires: python >= 2.6.8
Requires: python-Babel >= 1.3
+Requires: python-argparse
Requires: python-cliff >= 1.4.3
Requires: python-httplib2
Requires: python-iso8601 >= 0.1.4
@@ -80,11 +73,7 @@
Requires: python-discover
%endif
Requires: python-fixtures >= 0.3.14
-Requires: python-flake8 >= 2.0
-Requires: python-hacking >= 0.5.6
-Requires: python-mox >= 0.5.3
-Requires: python-pep8 >= 1.4.5
-Requires: python-pyflakes >= 0.7.2
+Requires: python-mox3 >= 0.5.3
Requires: python-python-subunit
Requires: python-testrepository >= 0.0.17
Requires: python-testtools >= 0.9.32
@@ -93,7 +82,10 @@
This package contains testsuite files for %{name}.
%prep
-%setup -q -n python-neutronclient-2.3.3
+%setup -q -n python-neutronclient-%{version}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%openstack_cleanup_prep
%build
++++++ 0001-Fix-listing-security-group-rules-when-there-are-too-.patch ++++++
>From 6584861c806388ececf7427c466fcfd7b017f6e7 Mon Sep 17 00:00:00 2001
From: Vincent Untz <[email protected]>
Date: Wed, 22 Jan 2014 12:19:04 +0100
Subject: [PATCH] Fix listing security group rules when there are too many
security groups
We're hitting a RequestURITooLong exception.
Change-Id: I4ac6447281f4bceb5587c891a900379a073d93bf
Closes-Bug: 1271462
---
neutronclient/neutron/v2_0/securitygroup.py | 29 ++++++++++++++++++++++++++---
1 file changed, 26 insertions(+), 3 deletions(-)
diff --git a/neutronclient/neutron/v2_0/securitygroup.py
b/neutronclient/neutron/v2_0/securitygroup.py
index e125e49..4a9f1e6 100644
--- a/neutronclient/neutron/v2_0/securitygroup.py
+++ b/neutronclient/neutron/v2_0/securitygroup.py
@@ -18,6 +18,7 @@
import argparse
import logging
+from neutronclient.common import exceptions
from neutronclient.neutron import v2_0 as neutronV20
from neutronclient.openstack.common.gettextutils import _
@@ -101,6 +102,9 @@ class UpdateSecurityGroup(neutronV20.UpdateCommand):
class ListSecurityGroupRule(neutronV20.ListCommand):
"""List security group rules that belong to a given tenant."""
+ # Length of a query filter on security group rule id
+ # id=<uuid>& (with len(uuid)=36)
+ sec_group_id_filter_len = 40
resource = 'security_group_rule'
log = logging.getLogger(__name__ + '.ListSecurityGroupRule')
list_columns = ['id', 'security_group_id', 'direction', 'protocol',
@@ -142,9 +146,28 @@ class ListSecurityGroupRule(neutronV20.ListCommand):
for rule in data:
for key in self.replace_rules:
sec_group_ids.add(rule[key])
- search_opts.update({"id": sec_group_ids})
- secgroups = neutron_client.list_security_groups(**search_opts)
- secgroups = secgroups.get('security_groups', [])
+ sec_group_ids = list(sec_group_ids)
+
+ def _get_sec_group_list(sec_group_ids):
+ search_opts['id'] = sec_group_ids
+ return neutron_client.list_security_groups(
+ **search_opts).get('security_groups', [])
+
+ try:
+ secgroups = _get_sec_group_list(sec_group_ids)
+ except exceptions.RequestURITooLong as uri_len_exc:
+ # The URI is too long because of too many sec_group_id filters
+ # Use the excess attribute of the exception to know how many
+ # sec_group_id filters can be inserted into a single request
+ sec_group_count = len(sec_group_ids)
+ max_size = ((self.sec_group_id_filter_len * sec_group_count) -
+ uri_len_exc.excess)
+ chunk_size = max_size / self.sec_group_id_filter_len
+ secgroups = []
+ for i in range(0, sec_group_count, chunk_size):
+ secgroups.extend(
+ _get_sec_group_list(sec_group_ids[i: i + chunk_size]))
+
sg_dict = dict([(sg['id'], sg['name'])
for sg in secgroups if sg['name']])
for rule in data:
--
1.8.4
++++++ 0001-Fixed-get_auth_info-for-pre-authenticated-clients.patch ++++++
>From 02baef46968b816ac544b037297273ff6a4e8e1b Mon Sep 17 00:00:00 2001
From: Ihar Hrachyshka <[email protected]>
Date: Thu, 6 Feb 2014 15:54:14 +0100
Subject: [PATCH] Fixed get_auth_info() for pre-authenticated clients
When a client is instantiated with pre-defined authorization token,
no authentication is done, so no auth_[tenant|user]_id keys are set
for HTTPClient. As a result, Client.get_auth_info() fails with KeyError.
Fixed the issue by setting those keys on HTTPClient initialization.
Change-Id: Ifc9d6b128286b635346a7bc026fcc55dbd002050
Closes-Bug: 1277120
---
neutronclient/client.py | 2 ++
neutronclient/tests/unit/test_auth.py | 17 +++++++++++++++++
2 files changed, 19 insertions(+)
Index: python-neutronclient-2.3.3/neutronclient/client.py
===================================================================
--- python-neutronclient-2.3.3.orig/neutronclient/client.py
+++ python-neutronclient-2.3.3/neutronclient/client.py
@@ -112,6 +112,8 @@ class HTTPClient(httplib2.Http):
self.endpoint_type = endpoint_type
self.region_name = region_name
self.auth_token = token
+ self.auth_tenant_id = None
+ self.auth_user_id = None
self.content_type = 'application/json'
self.endpoint_url = endpoint_url
self.auth_strategy = auth_strategy
Index: python-neutronclient-2.3.3/neutronclient/tests/unit/test_auth.py
===================================================================
--- python-neutronclient-2.3.3.orig/neutronclient/tests/unit/test_auth.py
+++ python-neutronclient-2.3.3/neutronclient/tests/unit/test_auth.py
@@ -85,6 +85,23 @@ class CLITestAuthKeystone(testtools.Test
self.addCleanup(self.mox.VerifyAll)
self.addCleanup(self.mox.UnsetStubs)
+ def test_reused_token_get_auth_info(self):
+ """Test that Client.get_auth_info() works even if client was
+ instantiated with predefined token.
+ """
+ client_ = client.HTTPClient(username=USERNAME,
+ tenant_id=TENANT_ID,
+ tenant_name=TENANT_NAME,
+ token=TOKEN,
+ password=PASSWORD,
+ auth_url=AUTH_URL,
+ region_name=REGION)
+ expected = {'auth_token': TOKEN,
+ 'auth_tenant_id': None,
+ 'auth_user_id': None,
+ 'endpoint_url': self.client.endpoint_url}
+ self.assertEqual(client_.get_auth_info(), expected)
+
def test_get_token(self):
self.mox.StubOutWithMock(self.client, "request")
++++++ 0001-Switch-over-to-mox3.patch ++++++
>From 645d7cc567c3d843d3ae9884d940baa7a05c410e Mon Sep 17 00:00:00 2001
From: Dirk Mueller <[email protected]>
Date: Thu, 13 Feb 2014 11:13:12 +0100
Subject: [PATCH] Switch over to mox3
mox3 is a Python 3.x compatible drop-in and allows
to continue with the porting effort to Python 3.x with
minimal code changes.
Change-Id: Ib052f1b87e312481e4c7c8d775ece94f53e7106b
---
neutronclient/tests/unit/fw/test_cli20_firewallpolicy.py | 2 +-
neutronclient/tests/unit/lb/test_cli20_healthmonitor.py | 2 +-
neutronclient/tests/unit/lb/test_cli20_pool.py | 2 +-
neutronclient/tests/unit/test_auth.py | 2 +-
neutronclient/tests/unit/test_cli20.py | 2 +-
neutronclient/tests/unit/test_cli20_network.py | 2 +-
neutronclient/tests/unit/test_cli20_port.py | 2 +-
neutronclient/tests/unit/test_cli20_securitygroup.py | 2 +-
neutronclient/tests/unit/test_http.py | 2 +-
neutronclient/tests/unit/test_name_or_id.py | 2 +-
neutronclient/tests/unit/test_shell.py | 2 +-
neutronclient/tests/unit/test_ssl.py | 2 +-
test-requirements.txt | 2 +-
13 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/neutronclient/tests/unit/fw/test_cli20_firewallpolicy.py
b/neutronclient/tests/unit/fw/test_cli20_firewallpolicy.py
index 7be066e..afc5617 100644
--- a/neutronclient/tests/unit/fw/test_cli20_firewallpolicy.py
+++ b/neutronclient/tests/unit/fw/test_cli20_firewallpolicy.py
@@ -19,7 +19,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.neutron.v2_0.fw import firewallpolicy
from neutronclient import shell
diff --git a/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
b/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
index 959bd98..ed30a15 100644
--- a/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
+++ b/neutronclient/tests/unit/lb/test_cli20_healthmonitor.py
@@ -19,7 +19,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.neutron.v2_0.lb import healthmonitor
from neutronclient.tests.unit import test_cli20
diff --git a/neutronclient/tests/unit/lb/test_cli20_pool.py
b/neutronclient/tests/unit/lb/test_cli20_pool.py
index 1c0203d..a63035b 100644
--- a/neutronclient/tests/unit/lb/test_cli20_pool.py
+++ b/neutronclient/tests/unit/lb/test_cli20_pool.py
@@ -19,7 +19,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.neutron.v2_0.lb import pool
from neutronclient.tests.unit import test_cli20
diff --git a/neutronclient/tests/unit/test_auth.py
b/neutronclient/tests/unit/test_auth.py
index 911c37a..434c629 100644
--- a/neutronclient/tests/unit/test_auth.py
+++ b/neutronclient/tests/unit/test_auth.py
@@ -20,7 +20,7 @@ import httplib2
import json
import uuid
-import mox
+from mox3 import mox
import testtools
from neutronclient import client
diff --git a/neutronclient/tests/unit/test_cli20.py
b/neutronclient/tests/unit/test_cli20.py
index 2153c53..bc5a80e 100644
--- a/neutronclient/tests/unit/test_cli20.py
+++ b/neutronclient/tests/unit/test_cli20.py
@@ -18,7 +18,7 @@
import urllib
import fixtures
-import mox
+from mox3 import mox
import testtools
from neutronclient.common import constants
diff --git a/neutronclient/tests/unit/test_cli20_network.py
b/neutronclient/tests/unit/test_cli20_network.py
index cd1b02f..4a8b00d 100644
--- a/neutronclient/tests/unit/test_cli20_network.py
+++ b/neutronclient/tests/unit/test_cli20_network.py
@@ -16,7 +16,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.common import exceptions
from neutronclient.common import utils
diff --git a/neutronclient/tests/unit/test_cli20_port.py
b/neutronclient/tests/unit/test_cli20_port.py
index 1d7f80b..26c474b 100644
--- a/neutronclient/tests/unit/test_cli20_port.py
+++ b/neutronclient/tests/unit/test_cli20_port.py
@@ -17,7 +17,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.neutron.v2_0 import port
from neutronclient import shell
diff --git a/neutronclient/tests/unit/test_cli20_securitygroup.py
b/neutronclient/tests/unit/test_cli20_securitygroup.py
index 85c3be6..c86fff8 100644
--- a/neutronclient/tests/unit/test_cli20_securitygroup.py
+++ b/neutronclient/tests/unit/test_cli20_securitygroup.py
@@ -18,7 +18,7 @@
import sys
-import mox
+from mox3 import mox
from neutronclient.neutron.v2_0 import securitygroup
from neutronclient.tests.unit import test_cli20
diff --git a/neutronclient/tests/unit/test_http.py
b/neutronclient/tests/unit/test_http.py
index 910944a..45be353 100644
--- a/neutronclient/tests/unit/test_http.py
+++ b/neutronclient/tests/unit/test_http.py
@@ -15,7 +15,7 @@
# vim: tabstop=4 shiftwidth=4 softtabstop=4
import httplib2
-import mox
+from mox3 import mox
import testtools
from neutronclient.client import HTTPClient
diff --git a/neutronclient/tests/unit/test_name_or_id.py
b/neutronclient/tests/unit/test_name_or_id.py
index f097440..6c2ab51 100644
--- a/neutronclient/tests/unit/test_name_or_id.py
+++ b/neutronclient/tests/unit/test_name_or_id.py
@@ -17,7 +17,7 @@
import uuid
-import mox
+from mox3 import mox
import testtools
from neutronclient.common import exceptions
diff --git a/neutronclient/tests/unit/test_shell.py
b/neutronclient/tests/unit/test_shell.py
index a3ac68b..933bf49 100644
--- a/neutronclient/tests/unit/test_shell.py
+++ b/neutronclient/tests/unit/test_shell.py
@@ -21,7 +21,7 @@ import re
import sys
import fixtures
-import mox
+from mox3 import mox
import testtools
from testtools import matchers
diff --git a/neutronclient/tests/unit/test_ssl.py
b/neutronclient/tests/unit/test_ssl.py
index d7154d7..6f06acb 100644
--- a/neutronclient/tests/unit/test_ssl.py
+++ b/neutronclient/tests/unit/test_ssl.py
@@ -16,7 +16,7 @@
import fixtures
import httplib2
-import mox
+from mox3 import mox
import testtools
from neutronclient.client import HTTPClient
diff --git a/test-requirements.txt b/test-requirements.txt
index 17ddf23..16d923e 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4,7 +4,7 @@ cliff-tablib>=1.0
coverage>=3.6
discover
fixtures>=0.3.14
-mox>=0.5.3
+mox3>=0.7.0
python-subunit
sphinx>=1.1.2,<1.2
testrepository>=0.0.17
--
1.8.4.1
++++++ _service ++++++
--- /var/tmp/diff_new_pack.TLuCT1/_old 2014-03-09 20:14:49.000000000 +0100
+++ /var/tmp/diff_new_pack.TLuCT1/_new 2014-03-09 20:14:49.000000000 +0100
@@ -1,7 +1,11 @@
<services>
- <service name="git_tarballs" mode="disabled">
- <param
name="url">http://tarballs.openstack.org/python-neutronclient/python-neutronclient-2.3.3.tar.gz</param>
- <param name="email">[email protected]</param>
- <param name="plain-version">True</param>
+ <service mode="disabled" name="download_files">
+ <param name="changesgenerate">enable</param>
+ </service>
+ <service mode="disabled" name="set_version">
+ <param name="basename">python-neutronclient</param>
+ </service>
+ <service name="refresh_patches" mode="disabled">
+ <param name="changesgenerate">enable</param>
</service>
</services>
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]