Hello community,
here is the log from the commit of package python-testinfra for
openSUSE:Factory checked in at 2019-08-14 11:37:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-testinfra (Old)
and /work/SRC/openSUSE:Factory/.python-testinfra.new.9556 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-testinfra"
Wed Aug 14 11:37:41 2019 rev:8 rq:723136 version:3.0.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-testinfra/python-testinfra.changes
2019-06-03 18:57:49.760374130 +0200
+++
/work/SRC/openSUSE:Factory/.python-testinfra.new.9556/python-testinfra.changes
2019-08-14 11:37:43.472693074 +0200
@@ -1,0 +2,12 @@
+Tue Aug 13 16:55:33 UTC 2019 - Sean Marlow <[email protected]>
+
+- Update to 3.0.6:
+ + Issue full command logging using DEBUG log level to avoid
+ logging sensible data when log level is INFO.
+ + Fix possible crash when parsing ansible inventories.
+ + Support using alternative kubeconfig file in kubectl
+ connections.
+ + Support parsing ProxyCommand from ssh_config for paramiko
+ connections.
+
+-------------------------------------------------------------------
Old:
----
testinfra-3.0.5.tar.gz
New:
----
testinfra-3.0.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-testinfra.spec ++++++
--- /var/tmp/diff_new_pack.baYEK8/_old 2019-08-14 11:37:44.188692946 +0200
+++ /var/tmp/diff_new_pack.baYEK8/_new 2019-08-14 11:37:44.192692945 +0200
@@ -18,13 +18,14 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-testinfra
-Version: 3.0.5
+Version: 3.0.6
Release: 0
Summary: Test infrastructures
License: Apache-2.0
Group: Development/Languages/Python
-Url: http://github.com/philpep/testinfra
+URL: http://github.com/philpep/testinfra
Source:
https://files.pythonhosted.org/packages/source/t/testinfra/testinfra-%{version}.tar.gz
+BuildRequires: ansible > 2.8
BuildRequires: %{python_module paramiko}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module pywinrm}
@@ -32,7 +33,6 @@
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six >= 1.4}
-BuildRequires: ansible > 2.4
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-pytest
++++++ testinfra-3.0.5.tar.gz -> testinfra-3.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/CHANGELOG.rst
new/testinfra-3.0.6/CHANGELOG.rst
--- old/testinfra-3.0.5/CHANGELOG.rst 2019-05-29 23:43:03.000000000 +0200
+++ new/testinfra-3.0.6/CHANGELOG.rst 2019-08-04 14:05:14.000000000 +0200
@@ -2,6 +2,14 @@
Changelog
=========
+3.0.6
+=====
+
+* Issue full command logging using DEBUG log level to avoid logging sensible
data when log level is INFO.
+* Fix possible crash when parsing ansible inventories #470
+* Support using alternative kubeconfig file in kubectl connections #460
+* Support parsing ProxyCommand from ssh_config for paramiko connections
+
3.0.5
=====
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/PKG-INFO new/testinfra-3.0.6/PKG-INFO
--- old/testinfra-3.0.5/PKG-INFO 2019-05-29 23:44:05.000000000 +0200
+++ new/testinfra-3.0.6/PKG-INFO 2019-08-04 14:06:21.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: testinfra
-Version: 3.0.5
+Version: 3.0.6
Summary: Test infrastructures
Home-page: https://github.com/philpep/testinfra
Author: Philippe Pepiot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/doc/source/backends.rst
new/testinfra-3.0.6/doc/source/backends.rst
--- old/testinfra-3.0.5/doc/source/backends.rst 2019-05-29 22:03:56.000000000
+0200
+++ new/testinfra-3.0.6/doc/source/backends.rst 2019-08-04 13:12:17.000000000
+0200
@@ -93,7 +93,9 @@
$ py.test --hosts='kubectl://mypod-a1b2c3'
# specify container name and namespace
$ py.test --hosts='kubectl://somepod-2536ab?container=nginx&namespace=web'
-
+ # you can specify kubeconfig either from KUBECONFIG environment variable
+ # or when working with multiple configuration with the "kubeconfig" option
+ $ py.test
--hosts='kubectl://somepod-123?kubeconfig=/path/kubeconfig,kubectl://otherpod-123?kubeconfig=/other/kubeconfig'
winrm
~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/test/test_backends.py
new/testinfra-3.0.6/test/test_backends.py
--- old/testinfra-3.0.5/test/test_backends.py 2019-05-29 22:00:55.000000000
+0200
+++ new/testinfra-3.0.6/test/test_backends.py 2019-08-04 13:12:17.000000000
+0200
@@ -285,16 +285,18 @@
assert BaseBackend.parse_hostspec(hostspec) == expected
[email protected]('hostspec,pod,container,namespace', [
- ('kubectl://pod', 'pod', None, None),
- ('kubectl://pod?namespace=n', 'pod', None, 'n'),
- ('kubectl://pod?container=c&namespace=n', 'pod', 'c', 'n'),
[email protected]('hostspec,pod,container,namespace,kubeconfig', [
+ ('kubectl://pod', 'pod', None, None, None),
+ ('kubectl://pod?namespace=n', 'pod', None, 'n', None),
+ ('kubectl://pod?container=c&namespace=n', 'pod', 'c', 'n', None),
+ ('kubectl://pod?namespace=n&kubeconfig=k', 'pod', None, 'n', 'k')
])
-def test_kubectl_hostspec(hostspec, pod, container, namespace):
+def test_kubectl_hostspec(hostspec, pod, container, namespace, kubeconfig):
backend = testinfra.get_host(hostspec).backend
assert backend.name == pod
assert backend.container == container
assert backend.namespace == namespace
+ assert backend.kubeconfig == kubeconfig
@pytest.mark.parametrize('arg_string,expected', [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra/backend/__init__.py
new/testinfra-3.0.6/testinfra/backend/__init__.py
--- old/testinfra-3.0.5/testinfra/backend/__init__.py 2019-05-29
23:41:33.000000000 +0200
+++ new/testinfra-3.0.6/testinfra/backend/__init__.py 2019-08-04
13:12:17.000000000 +0200
@@ -52,7 +52,7 @@
if query.get(key, ['false'])[0].lower() == 'true':
kw[key] = True
for key in ("sudo_user", 'namespace', 'container', 'read_timeout_sec',
- 'operation_timeout_sec', 'timeout'):
+ 'operation_timeout_sec', 'timeout', 'kubeconfig'):
if key in query:
kw[key] = query.get(key)[0]
for key in (
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra/backend/base.py
new/testinfra-3.0.6/testinfra/backend/base.py
--- old/testinfra-3.0.5/testinfra/backend/base.py 2019-05-09
22:56:12.000000000 +0200
+++ new/testinfra-3.0.6/testinfra/backend/base.py 2019-08-04
14:02:08.000000000 +0200
@@ -278,5 +278,5 @@
def result(self, *args, **kwargs):
result = CommandResult(self, *args, **kwargs)
- logger.info("RUN %s", result)
+ logger.debug("RUN %s", result)
return result
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra/backend/kubectl.py
new/testinfra-3.0.6/testinfra/backend/kubectl.py
--- old/testinfra-3.0.5/testinfra/backend/kubectl.py 2018-06-07
23:17:07.000000000 +0200
+++ new/testinfra-3.0.6/testinfra/backend/kubectl.py 2019-07-07
01:41:09.000000000 +0200
@@ -24,6 +24,7 @@
self.name = name
self.container = kwargs.get('container')
self.namespace = kwargs.get('namespace')
+ self.kubeconfig = kwargs.get('kubeconfig')
super(KubectlBackend, self).__init__(self.name, *args, **kwargs)
def run(self, command, *args, **kwargs):
@@ -32,6 +33,9 @@
# See https://github.com/kubernetes/kubernetes/issues/30656
kcmd = 'kubectl '
kcmd_args = []
+ if self.kubeconfig is not None:
+ kcmd += '--kubeconfig="%s" '
+ kcmd_args.append(self.kubeconfig)
if self.namespace is not None:
kcmd += '-n %s '
kcmd_args.append(self.namespace)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra/backend/paramiko.py
new/testinfra-3.0.6/testinfra/backend/paramiko.py
--- old/testinfra-3.0.5/testinfra/backend/paramiko.py 2019-05-29
23:41:33.000000000 +0200
+++ new/testinfra-3.0.6/testinfra/backend/paramiko.py 2019-07-07
01:41:09.000000000 +0200
@@ -66,6 +66,8 @@
cfg['gss_auth'] = (value == 'yes')
elif key == "gssapiauthentication":
cfg['gss_kex'] = (value == 'yes')
+ elif key == "proxycommand":
+ cfg['sock'] = paramiko.ProxyCommand(value)
@cached_property
def client(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra/utils/ansible_runner.py
new/testinfra-3.0.6/testinfra/utils/ansible_runner.py
--- old/testinfra-3.0.5/testinfra/utils/ansible_runner.py 2019-05-29
21:47:14.000000000 +0200
+++ new/testinfra-3.0.6/testinfra/utils/ansible_runner.py 2019-08-04
13:25:24.000000000 +0200
@@ -50,7 +50,9 @@
def get_ansible_inventory(config, inventory_file):
- cmd = 'ansible-inventory --list'
+ # Disable ansible verbosity to avoid
+ # https://github.com/ansible/ansible/issues/59973
+ cmd = 'ANSIBLE_VERBOSITY=0 ansible-inventory --list'
args = []
if inventory_file:
cmd += ' -i %s'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/testinfra-3.0.5/testinfra.egg-info/PKG-INFO
new/testinfra-3.0.6/testinfra.egg-info/PKG-INFO
--- old/testinfra-3.0.5/testinfra.egg-info/PKG-INFO 2019-05-29
23:44:05.000000000 +0200
+++ new/testinfra-3.0.6/testinfra.egg-info/PKG-INFO 2019-08-04
14:06:21.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: testinfra
-Version: 3.0.5
+Version: 3.0.6
Summary: Test infrastructures
Home-page: https://github.com/philpep/testinfra
Author: Philippe Pepiot