Hello community,
here is the log from the commit of package python-mistralclient for
openSUSE:Factory checked in at 2017-09-23 21:34:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-mistralclient (Old)
and /work/SRC/openSUSE:Factory/.python-mistralclient.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-mistralclient"
Sat Sep 23 21:34:12 2017 rev:4 rq:528107 version:3.1.3
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-mistralclient/python-mistralclient.changes
2017-08-28 15:31:07.423013203 +0200
+++
/work/SRC/openSUSE:Factory/.python-mistralclient.new/python-mistralclient.changes
2017-09-23 21:34:20.981283327 +0200
@@ -1,0 +2,10 @@
+Thu Sep 21 15:33:49 UTC 2017 - [email protected]
+
+- update to version 3.1.3
+ - Fix how "--limit" is passed to the server for action executions
+ - Update .gitreview for stable/pike
+ - Enable ssl support for keycloak auth module
+ - Updated from global requirements
+ - Update UPPER_CONSTRAINTS_FILE for stable/pike
+
+-------------------------------------------------------------------
Old:
----
python-mistralclient-3.1.1.tar.gz
New:
----
python-mistralclient-3.1.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-mistralclient.spec ++++++
--- /var/tmp/diff_new_pack.sf09Ex/_old 2017-09-23 21:34:21.833163524 +0200
+++ /var/tmp/diff_new_pack.sf09Ex/_new 2017-09-23 21:34:21.837162961 +0200
@@ -17,7 +17,7 @@
Name: python-mistralclient
-Version: 3.1.1
+Version: 3.1.3
Release: 0
Summary: Python API and CLI for OpenStack Mistral
License: Apache-2.0
@@ -30,7 +30,7 @@
BuildRequires: python-fixtures >= 3.0.0
BuildRequires: python-mock >= 2.0
BuildRequires: python-nose
-BuildRequires: python-openstackclient >= 3.3.0
+BuildRequires: python-openstackclient >= 3.11.0
BuildRequires: python-oslotest >= 1.10.0
BuildRequires: python-osprofiler >= 1.4.0
BuildRequires: python-pbr >= 2.0.0
@@ -39,10 +39,10 @@
BuildRequires: python-testrepository >= 0.0.18
BuildRequires: python-testtools >= 1.4.0
Requires: python-PyYAML >= 3.10.0
-Requires: python-cliff >= 2.6.0
+Requires: python-cliff >= 2.8.0
Requires: python-keystoneclient >= 3.8.0
-Requires: python-os-client-config >= 1.27.0
-Requires: python-osc-lib >= 1.5.1
+Requires: python-os-client-config >= 1.28.0
+Requires: python-osc-lib >= 1.7.0
Requires: python-oslo.i18n >= 2.1.0
Requires: python-oslo.utils >= 3.20.0
Requires: python-osprofiler >= 1.4.0
@@ -59,7 +59,7 @@
Summary: Documentation for OpenStack Mistral API client libary
Group: Documentation
BuildRequires: python-Sphinx
-BuildRequires: python-openstackdocstheme >= 1.11.0
+BuildRequires: python-openstackdocstheme >= 1.16.0
%description doc
Client library for Mistral built on the Mistral API. It provides a Python API
++++++ _service ++++++
--- /var/tmp/diff_new_pack.sf09Ex/_old 2017-09-23 21:34:21.869158461 +0200
+++ /var/tmp/diff_new_pack.sf09Ex/_new 2017-09-23 21:34:21.869158461 +0200
@@ -1,6 +1,6 @@
<services>
<service mode="disabled" name="renderspec">
- <param
name="input-template">https://raw.githubusercontent.com/openstack/rpm-packaging/stable/pike/openstack/python-mistralclient/python-mistralclient.spec.j2</param>
+ <param
name="input-template">https://git.openstack.org/cgit/openstack/rpm-packaging/plain/openstack/python-mistralclient/python-mistralclient.spec.j2?h=stable/pike</param>
<param name="output-name">python-mistralclient.spec</param>
<param
name="requirements">https://raw.githubusercontent.com/openstack/rpm-packaging/stable/pike/global-requirements.txt</param>
<param name="changelog-email">[email protected]</param>
++++++ python-mistralclient-3.1.1.tar.gz -> python-mistralclient-3.1.3.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-mistralclient-3.1.1/AUTHORS
new/python-mistralclient-3.1.3/AUTHORS
--- old/python-mistralclient-3.1.1/AUTHORS 2017-07-25 08:11:25.000000000
+0200
+++ new/python-mistralclient-3.1.3/AUTHORS 2017-09-08 00:21:46.000000000
+0200
@@ -35,6 +35,7 @@
Lucky samadhiya <[email protected]>
Marcos Fermin Lobo <[email protected]>
Michal Gershenzon <[email protected]>
+Mike Fedosin <[email protected]>
Nikolay Mahotkin <[email protected]>
OpenStack Release Bot <[email protected]>
Pierre-Arthur MATHIEU <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-mistralclient-3.1.1/ChangeLog
new/python-mistralclient-3.1.3/ChangeLog
--- old/python-mistralclient-3.1.1/ChangeLog 2017-07-25 08:11:25.000000000
+0200
+++ new/python-mistralclient-3.1.3/ChangeLog 2017-09-08 00:21:45.000000000
+0200
@@ -1,6 +1,19 @@
CHANGES
=======
+3.1.3
+-----
+
+* Enable ssl support for keycloak auth module
+* Updated from global requirements
+* Update UPPER\_CONSTRAINTS\_FILE for stable/pike
+
+3.1.2
+-----
+
+* Fix how "--limit" is passed to the server for action executions
+* Update .gitreview for stable/pike
+
3.1.1
-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-mistralclient-3.1.1/PKG-INFO
new/python-mistralclient-3.1.3/PKG-INFO
--- old/python-mistralclient-3.1.1/PKG-INFO 2017-07-25 08:11:27.000000000
+0200
+++ new/python-mistralclient-3.1.3/PKG-INFO 2017-09-08 00:21:47.000000000
+0200
@@ -1,11 +1,12 @@
Metadata-Version: 1.1
Name: python-mistralclient
-Version: 3.1.1
+Version: 3.1.3
Summary: Mistral Client Library
Home-page:
http://docs.openstack.org/developer/mistral/guides/mistralclient_guide.html
Author: OpenStack
Author-email: [email protected]
License: Apache Software License
+Description-Content-Type: UNKNOWN
Description: ========================
Team and repository tags
========================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/functionaltests/resources/v2/wf_v2.yaml
new/python-mistralclient-3.1.3/functionaltests/resources/v2/wf_v2.yaml
--- old/python-mistralclient-3.1.1/functionaltests/resources/v2/wf_v2.yaml
2017-07-25 08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/functionaltests/resources/v2/wf_v2.yaml
2017-09-08 00:17:49.000000000 +0200
@@ -7,9 +7,15 @@
tasks:
hello:
action: std.echo output="Hello"
- wait-before: 5
+ wait-before: 1
publish:
- result: <% task(hello).result %>
+ result: <% task().result %>
+ on-success: bye
+
+ bye:
+ action: std.echo output="Bye"
+ publish:
+ result: <% $.result + ', ' + task().result %>
wf1:
type: reverse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/api/v2/action_executions.py
new/python-mistralclient-3.1.3/mistralclient/api/v2/action_executions.py
--- old/python-mistralclient-3.1.1/mistralclient/api/v2/action_executions.py
2017-07-25 08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/mistralclient/api/v2/action_executions.py
2017-09-08 00:17:49.000000000 +0200
@@ -13,9 +13,12 @@
# limitations under the License.
import json
+import six
from mistralclient.api import base
+urlparse = six.moves.urllib.parse
+
class ActionExecution(base.Resource):
resource_name = 'ActionExecution'
@@ -66,15 +69,20 @@
def list(self, task_execution_id=None, limit=None):
url = '/action_executions'
- qparams = {}
-
if task_execution_id:
url = '/tasks/%s/action_executions' % task_execution_id
+ url += "%s"
+
+ qparams = {}
+
if limit:
qparams['limit'] = limit
- return self._list(url, response_key='action_executions')
+ query_string = ("?%s" % urlparse.urlencode(list(qparams.items()))
+ if qparams else "")
+
+ return self._list(url % query_string, response_key='action_executions')
def get(self, id):
self._ensure_not_empty(id=id)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/auth/keycloak.py
new/python-mistralclient-3.1.3/mistralclient/auth/keycloak.py
--- old/python-mistralclient-3.1.1/mistralclient/auth/keycloak.py
2017-07-25 08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/mistralclient/auth/keycloak.py
2017-09-08 00:17:49.000000000 +0200
@@ -13,8 +13,11 @@
# limitations under the License.
import logging
+import os
import pprint
+
import requests
+from six.moves import urllib
from mistralclient import auth
@@ -111,11 +114,13 @@
return response
+ @staticmethod
def _authenticate_with_token(auth_url, client_id, client_secret,
auth_token, cacert=None, insecure=None):
# TODO(rakhmerov): Implement.
raise NotImplementedError
+ @staticmethod
def _authenticate_with_password(auth_url, client_id, client_secret,
realm_name, username, password,
cacert=None, insecure=None):
@@ -124,6 +129,10 @@
(auth_url, realm_name)
)
+ verify = None
+ if urllib.parse.urlparse(access_token_endpoint).scheme == "https":
+ verify = False if insecure else cacert
+
client_auth = (client_id, client_secret)
body = {
@@ -137,7 +146,7 @@
access_token_endpoint,
auth=client_auth,
data=body,
- verify=not insecure
+ verify=verify
)
try:
@@ -151,6 +160,24 @@
return resp.json()['access_token']
+def get_system_ca_file():
+ """Return path to system default CA file."""
+ # Standard CA file locations for Debian/Ubuntu, RedHat/Fedora,
+ # Suse, FreeBSD/OpenBSD, MacOSX, and the bundled ca
+ ca_path = ['/etc/ssl/certs/ca-certificates.crt',
+ '/etc/pki/tls/certs/ca-bundle.crt',
+ '/etc/ssl/ca-bundle.pem',
+ '/etc/ssl/cert.pem',
+ '/System/Library/OpenSSL/certs/cacert.pem',
+ requests.certs.where()]
+ for ca in ca_path:
+ LOG.debug("Looking for ca file %s", ca)
+ if os.path.exists(ca):
+ LOG.debug("Using ca file %s", ca)
+ return ca
+ LOG.warning("System ca file could not be found.")
+
+
# An example of using KeyCloak OpenID authentication.
if __name__ == '__main__':
print("Using username/password to get access token from KeyCloak...")
@@ -158,13 +185,15 @@
auth_handler = KeycloakAuthHandler()
a_token = auth_handler.authenticate(
- "https://my.keycloak:8443/auth",
- client_id="mistral_client",
- client_secret="4a080907-921b-409a-b793-c431609c3a47",
- realm_name="mistral",
- username="user",
- password="secret",
- insecure=True
+ dict(
+ "https://my.keycloak:8443/auth",
+ client_id="mistral_client",
+ client_secret="4a080907-921b-409a-b793-c431609c3a47",
+ realm_name="mistral",
+ username="user",
+ password="secret",
+ insecure=True
+ )
)
print("Access token: %s" % a_token)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/commands/v2/action_executions.py
new/python-mistralclient-3.1.3/mistralclient/commands/v2/action_executions.py
---
old/python-mistralclient-3.1.1/mistralclient/commands/v2/action_executions.py
2017-07-25 08:08:07.000000000 +0200
+++
new/python-mistralclient-3.1.3/mistralclient/commands/v2/action_executions.py
2017-09-08 00:17:50.000000000 +0200
@@ -154,6 +154,7 @@
action_input = utils.load_json(parsed_args.input)
mistral_client = self.app.client_manager.workflow_engine
+
action_ex = mistral_client.action_executions.create(
parsed_args.name,
action_input,
@@ -196,10 +197,14 @@
def _get_resources(self, parsed_args):
if parsed_args.limit is None:
parsed_args.limit = base.DEFAULT_LIMIT
- LOG.info("limit is set to %s by default. Set "
- "the limit explicitly using \'--limit\', if required. "
- "Use \'--limit\' -1 to fetch the full result set.",
- base.DEFAULT_LIMIT)
+
+ LOG.info(
+ "limit is set to %s by default. Set "
+ "the limit explicitly using \'--limit\', if required. "
+ "Use \'--limit\' -1 to fetch the full result set.",
+ base.DEFAULT_LIMIT
+ )
+
mistral_client = self.app.client_manager.workflow_engine
return mistral_client.action_executions.list(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/commands/v2/executions.py
new/python-mistralclient-3.1.3/mistralclient/commands/v2/executions.py
--- old/python-mistralclient-3.1.1/mistralclient/commands/v2/executions.py
2017-07-25 08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/mistralclient/commands/v2/executions.py
2017-09-08 00:17:50.000000000 +0200
@@ -126,10 +126,14 @@
def _get_resources(self, parsed_args):
if parsed_args.limit is None:
parsed_args.limit = base.DEFAULT_LIMIT
- LOG.info("limit is set to %s by default. Set "
- "the limit explicitly using \'--limit\', if required. "
- "Use \'--limit\' -1 to fetch the full result set.",
- base.DEFAULT_LIMIT)
+
+ LOG.info(
+ "limit is set to %s by default. Set "
+ "the limit explicitly using \'--limit\', if required. "
+ "Use \'--limit\' -1 to fetch the full result set.",
+ base.DEFAULT_LIMIT
+ )
+
mistral_client = self.app.client_manager.workflow_engine
return mistral_client.executions.list(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/commands/v2/tasks.py
new/python-mistralclient-3.1.3/mistralclient/commands/v2/tasks.py
--- old/python-mistralclient-3.1.1/mistralclient/commands/v2/tasks.py
2017-07-25 08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/mistralclient/commands/v2/tasks.py
2017-09-08 00:17:50.000000000 +0200
@@ -97,10 +97,14 @@
def _get_resources(self, parsed_args):
if parsed_args.limit is None:
parsed_args.limit = base.DEFAULT_LIMIT
- LOG.info("limit is set to %s by default. Set "
- "the limit explicitly using \'--limit\', if required. "
- "Use \'--limit\' -1 to fetch the full result set.",
- base.DEFAULT_LIMIT)
+
+ LOG.info(
+ "limit is set to %s by default. Set "
+ "the limit explicitly using \'--limit\', if required. "
+ "Use \'--limit\' -1 to fetch the full result set.",
+ base.DEFAULT_LIMIT
+ )
+
mistral_client = self.app.client_manager.workflow_engine
return mistral_client.tasks.list(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/tests/functional/cli/v2/cli_tests_v2.py
new/python-mistralclient-3.1.3/mistralclient/tests/functional/cli/v2/cli_tests_v2.py
---
old/python-mistralclient-3.1.1/mistralclient/tests/functional/cli/v2/cli_tests_v2.py
2017-07-25 08:08:07.000000000 +0200
+++
new/python-mistralclient-3.1.3/mistralclient/tests/functional/cli/v2/cli_tests_v2.py
2017-09-08 00:17:50.000000000 +0200
@@ -1252,14 +1252,35 @@
)
wf_name = self.get_field_value(act_ex, 'Workflow name')
- status = self.get_field_value(act_ex, 'State')
+ state = self.get_field_value(act_ex, 'State')
self.assertEqual(
act_ex_from_list['ID'],
self.get_field_value(act_ex, 'ID')
)
self.assertEqual(self.direct_wf['Name'], wf_name)
- self.assertEqual('SUCCESS', status)
+ self.assertEqual('SUCCESS', state)
+
+ def test_act_execution_list_with_limit(self):
+ self.wait_execution_success(self.direct_ex_id)
+
+ act_execs = self.mistral_admin('action-execution-list')
+
+ # The workflow execution started in setUp()
+ # generates 2 action executions.
+ self.assertGreater(len(act_execs), 1)
+
+ act_execs = self.mistral_admin(
+ 'action-execution-list',
+ params="--limit 1"
+ )
+
+ self.assertEqual(len(act_execs), 1)
+
+ act_ex = act_execs[0]
+
+ self.assertEqual(self.direct_wf['Name'], act_ex['Workflow name'])
+ self.assertEqual('SUCCESS', act_ex['State'])
def test_act_execution_create_delete(self):
action_ex = self.mistral_admin(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/mistralclient/tests/unit/v2/test_action_executions.py
new/python-mistralclient-3.1.3/mistralclient/tests/unit/v2/test_action_executions.py
---
old/python-mistralclient-3.1.1/mistralclient/tests/unit/v2/test_action_executions.py
2017-07-25 08:08:07.000000000 +0200
+++
new/python-mistralclient-3.1.3/mistralclient/tests/unit/v2/test_action_executions.py
2017-09-08 00:17:49.000000000 +0200
@@ -24,7 +24,6 @@
'state': 'RUNNING',
}
-
URL_TEMPLATE = '/action_executions'
URL_TEMPLATE_ID = '/action_executions/%s'
@@ -94,6 +93,21 @@
self.assertEqual(expected, action_execution.to_dict())
+ def test_list_with_limit(self):
+ self.requests_mock.get(
+ self.TEST_URL + URL_TEMPLATE,
+ json={'action_executions': [ACTION_EXEC]}
+ )
+
+ action_execution_list = self.action_executions.list(limit=1)
+
+ self.assertEqual(1, len(action_execution_list))
+
+ last_request = self.requests_mock.last_request
+
+ # Make sure that limit is passed to the server correctly.
+ self.assertEqual(['1'], last_request.qs['limit'])
+
def test_get(self):
url = self.TEST_URL + URL_TEMPLATE_ID % ACTION_EXEC['id']
self.requests_mock.get(url, json=ACTION_EXEC)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/python_mistralclient.egg-info/PKG-INFO
new/python-mistralclient-3.1.3/python_mistralclient.egg-info/PKG-INFO
--- old/python-mistralclient-3.1.1/python_mistralclient.egg-info/PKG-INFO
2017-07-25 08:11:25.000000000 +0200
+++ new/python-mistralclient-3.1.3/python_mistralclient.egg-info/PKG-INFO
2017-09-08 00:21:46.000000000 +0200
@@ -1,11 +1,12 @@
Metadata-Version: 1.1
Name: python-mistralclient
-Version: 3.1.1
+Version: 3.1.3
Summary: Mistral Client Library
Home-page:
http://docs.openstack.org/developer/mistral/guides/mistralclient_guide.html
Author: OpenStack
Author-email: [email protected]
License: Apache Software License
+Description-Content-Type: UNKNOWN
Description: ========================
Team and repository tags
========================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-mistralclient-3.1.1/python_mistralclient.egg-info/pbr.json
new/python-mistralclient-3.1.3/python_mistralclient.egg-info/pbr.json
--- old/python-mistralclient-3.1.1/python_mistralclient.egg-info/pbr.json
2017-07-25 08:11:25.000000000 +0200
+++ new/python-mistralclient-3.1.3/python_mistralclient.egg-info/pbr.json
2017-09-08 00:21:46.000000000 +0200
@@ -1 +1 @@
-{"git_version": "0f28372", "is_release": true}
\ No newline at end of file
+{"git_version": "c33d39c", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-mistralclient-3.1.1/test-requirements.txt
new/python-mistralclient-3.1.3/test-requirements.txt
--- old/python-mistralclient-3.1.1/test-requirements.txt 2017-07-25
08:08:07.000000000 +0200
+++ new/python-mistralclient-3.1.3/test-requirements.txt 2017-09-08
00:17:50.000000000 +0200
@@ -11,4 +11,4 @@
tempest>=16.1.0 # Apache-2.0
osprofiler>=1.4.0 # Apache-2.0
reno!=2.3.1,>=1.8.0 # Apache-2.0
-openstackdocstheme>=1.11.0 # Apache-2.0
+openstackdocstheme>=1.16.0 # Apache-2.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-mistralclient-3.1.1/tox.ini
new/python-mistralclient-3.1.3/tox.ini
--- old/python-mistralclient-3.1.1/tox.ini 2017-07-25 08:08:07.000000000
+0200
+++ new/python-mistralclient-3.1.3/tox.ini 2017-09-08 00:17:50.000000000
+0200
@@ -5,7 +5,7 @@
[testenv]
usedevelop = True
-install_command = {toxinidir}/tools/tox_install.sh
{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
{opts} {packages}
+install_command = {toxinidir}/tools/tox_install.sh
{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike}
{opts} {packages}
setenv =
VIRTUAL_ENV={envdir}
NOSE_WITH_OPENSTACK=1