Accepting request 753172 from systemsmanagement:saltstack
- Prevent test_mod_del_repo_multiline_values to fail - Read repo info without using interpolation (bsc#1135656) - Requires vs BuildRequires - Limiting M2Crypto to >= SLE15 - Replacing pycrypto with M2Crypto - Fix for log checking in x509 test - Update to 2019.2.2 release - Added: * fix-for-log-checking-in-x509-test.patch * prevent-test_mod_del_repo_multiline_values-to-fail.patch * read-repo-info-without-using-interpolation-bsc-11356.patch - Modified: * async-batch-implementation.patch * add-hold-unhold-functions.patch * adds-the-possibility-to-also-use-downloadonly-in-kwa.patch * decide-if-the-source-should-be-actually-skipped.patch * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-unit-test-for-grains-core.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * fix-async-batch-multiple-done-events.patch * activate-all-beacons-sources-config-pillar-grains.patch * fix-for-older-mock-module.patch * do-not-break-repo-files-with-multiple-line-values-on.patch * fall-back-to-pymysql.patch * add-missing-fun-for-returns-from-wfunc-executions.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * add-virt.volume_infos-and-virt.volume_delete.patch OBS-URL: https://build.opensuse.org/request/show/753172 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/salt?expand=0&rev=96
This commit is contained in:
commit
78c7bb39ac
@ -1,4 +1,4 @@
|
||||
From 3119bc27584472b0f0d440a37ec4cff2504165f2 Mon Sep 17 00:00:00 2001
|
||||
From c9e39c7af97180414205a8ad752f86f579e75a58 Mon Sep 17 00:00:00 2001
|
||||
From: Cedric Bosdonnat <cbosdonnat@suse.com>
|
||||
Date: Tue, 3 Sep 2019 15:16:30 +0200
|
||||
Subject: [PATCH] 2019.2.0 PR 54196 backport (#173)
|
||||
@ -219,6 +219,6 @@ index 8022989937..2904fa224d 100644
|
||||
'virt.pool_start': mocks['start']
|
||||
}):
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1 +1 @@
|
||||
84e27c403e61c28793ecffea4e280b3cdbb365a0
|
||||
8ec046fadeba7bd58a5bf2a3f561c4bffd6c4510
|
7
_service
7
_service
@ -3,7 +3,7 @@
|
||||
<param name="url">https://github.com/openSUSE/salt-packaging.git</param>
|
||||
<param name="subdir">salt</param>
|
||||
<param name="filename">package</param>
|
||||
<param name="revision">2019.2.0</param>
|
||||
<param name="revision">2019.2.2</param>
|
||||
<param name="scm">git</param>
|
||||
</service>
|
||||
<service name="extract_file" mode="disabled">
|
||||
@ -12,8 +12,9 @@
|
||||
</service>
|
||||
<service name="download_url" mode="disabled">
|
||||
<param name="host">codeload.github.com</param>
|
||||
<param name="path">openSUSE/salt/tar.gz/v2019.2.0-suse</param>
|
||||
<param name="filename">v2019.2.0.tar.gz</param>
|
||||
<param name="path">openSUSE/salt/tar.gz/v2019.2.2-suse</param>
|
||||
<param name="filename">v2019.2.2.tar.gz</param>
|
||||
</service>
|
||||
<service name="update_changelog" mode="disabled"></service>
|
||||
</services>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 46a60d81604eaf6f9fc3712e02d1066e959c96e3 Mon Sep 17 00:00:00 2001
|
||||
From bfaac404ffa334157f4408b312b12a59b059df69 Mon Sep 17 00:00:00 2001
|
||||
From: Alberto Planas <aplanas@gmail.com>
|
||||
Date: Tue, 22 Oct 2019 11:02:33 +0200
|
||||
Subject: [PATCH] Accumulated changes from Yomi (#167)
|
||||
@ -17,17 +17,17 @@ This patch ignore this kind of issue during the grains creation.
|
||||
|
||||
(cherry picked from commit b865491b74679140f7a71c5ba50d482db47b600f)
|
||||
---
|
||||
salt/grains/core.py | 4 +++
|
||||
salt/modules/zypperpkg.py | 30 +++++++++++++------
|
||||
tests/unit/grains/test_core.py | 45 ++++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_zypperpkg.py | 26 ++++++++++++++++
|
||||
salt/grains/core.py | 4 ++++
|
||||
salt/modules/zypperpkg.py | 30 ++++++++++++++++--------
|
||||
tests/unit/grains/test_core.py | 45 ++++++++++++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_zypperpkg.py | 26 +++++++++++++++++++++
|
||||
4 files changed, 96 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index fa188a6ff7..fdabe484a8 100644
|
||||
index e1d08b76cf..6b1f2d2223 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -986,6 +986,10 @@ def _virtual(osdata):
|
||||
@@ -987,6 +987,10 @@ def _virtual(osdata):
|
||||
grains['virtual'] = 'gce'
|
||||
elif 'BHYVE' in output:
|
||||
grains['virtual'] = 'bhyve'
|
||||
@ -88,10 +88,10 @@ index da1953b2a5..a87041aa70 100644
|
||||
'install_date_time_t': None,
|
||||
}]
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index 889fb90074..aa04a7a7ac 100644
|
||||
index 09e197a2e4..7153a078f4 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -1117,6 +1117,51 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -1317,6 +1317,51 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'uuid': ''
|
||||
})
|
||||
|
||||
@ -181,6 +181,6 @@ index 695d982ca6..7617113401 100644
|
||||
'''
|
||||
Test package removal
|
||||
--
|
||||
2.23.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8cd87eba73df54a9ede47eda9425e6ffceff7ac0 Mon Sep 17 00:00:00 2001
|
||||
From 78f5d1bd931f5329792d0e430c75025b45c14041 Mon Sep 17 00:00:00 2001
|
||||
From: Alberto Planas <aplanas@gmail.com>
|
||||
Date: Tue, 30 Jul 2019 11:23:12 +0200
|
||||
Subject: [PATCH] Accumulated changes required for Yomi (#165)
|
||||
@ -58,14 +58,14 @@ so the cached data will be separated too.
|
||||
|
||||
(cherry picked from commit 9c54bb3e8c93ba21fc583bdefbcadbe53cbcd7b5)
|
||||
---
|
||||
salt/modules/chroot.py | 36 +++++++++-------
|
||||
salt/modules/cmdmod.py | 12 ++++--
|
||||
salt/modules/freezer.py | 20 ++++++---
|
||||
salt/modules/zypperpkg.py | 13 ++++--
|
||||
tests/unit/modules/test_chroot.py | 36 +++++++++++++++-
|
||||
tests/unit/modules/test_cmdmod.py | 50 ++++++++++++++++++++++
|
||||
tests/unit/modules/test_freezer.py | 62 +++++++++++++++++++++++++---
|
||||
tests/unit/modules/test_zypperpkg.py | 21 ++++++++++
|
||||
salt/modules/chroot.py | 36 +++++++++++----------
|
||||
salt/modules/cmdmod.py | 12 +++++--
|
||||
salt/modules/freezer.py | 20 ++++++++----
|
||||
salt/modules/zypperpkg.py | 13 ++++++--
|
||||
tests/unit/modules/test_chroot.py | 36 +++++++++++++++++++--
|
||||
tests/unit/modules/test_cmdmod.py | 50 +++++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_freezer.py | 62 ++++++++++++++++++++++++++++++++----
|
||||
tests/unit/modules/test_zypperpkg.py | 21 ++++++++++++
|
||||
8 files changed, 214 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/chroot.py b/salt/modules/chroot.py
|
||||
@ -181,10 +181,10 @@ index 6e4705b67e..17b5890d8c 100644
|
||||
raise CommandExecutionError(ret['stderr'])
|
||||
|
||||
diff --git a/salt/modules/cmdmod.py b/salt/modules/cmdmod.py
|
||||
index d0819f2f79..b279d00a11 100644
|
||||
index 1801147f57..a7e1553ec3 100644
|
||||
--- a/salt/modules/cmdmod.py
|
||||
+++ b/salt/modules/cmdmod.py
|
||||
@@ -3064,13 +3064,19 @@ def run_chroot(root,
|
||||
@@ -3079,13 +3079,19 @@ def run_chroot(root,
|
||||
|
||||
if isinstance(cmd, (list, tuple)):
|
||||
cmd = ' '.join([six.text_type(i) for i in cmd])
|
||||
@ -575,6 +575,6 @@ index 0a3053680f..695d982ca6 100644
|
||||
+ zypper._clean_cache()
|
||||
+ self.assertEqual(zypper.__context__, {'pkg.other_data': None})
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5b48dee2f1b9a8203490e97620581b3a04d42632 Mon Sep 17 00:00:00 2001
|
||||
From 45b3ee6c8255c2daa6ed291a430a6325155ef29c Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 17 Oct 2017 16:52:33 +0200
|
||||
Subject: [PATCH] Activate all beacons sources: config/pillar/grains
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] Activate all beacons sources: config/pillar/grains
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/minion.py b/salt/minion.py
|
||||
index 9468695880..0a6771dccd 100644
|
||||
index 6912d9587f..c5f637eaa6 100644
|
||||
--- a/salt/minion.py
|
||||
+++ b/salt/minion.py
|
||||
@@ -439,7 +439,7 @@ class MinionBase(object):
|
||||
@@ -484,7 +484,7 @@ class MinionBase(object):
|
||||
the pillar or grains changed
|
||||
'''
|
||||
if 'config.merge' in functions:
|
||||
@ -21,6 +21,6 @@ index 9468695880..0a6771dccd 100644
|
||||
return self.beacons.process(b_conf, self.opts['grains']) # pylint: disable=no-member
|
||||
return []
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c059d617a77184c3bec8159d5197355f3cab8c4e Mon Sep 17 00:00:00 2001
|
||||
From 56c38610b083997cebf00070efe781d114fc33b6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 14 May 2018 11:33:13 +0100
|
||||
@ -62,6 +62,6 @@ index 0aca1e0af8..2034262b23 100644
|
||||
cver = new_pkgs.get(pkgname)
|
||||
if not cver and pkgname in new_caps:
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 902a3527415807448be0aa28a651374a189d102c Mon Sep 17 00:00:00 2001
|
||||
From 669a03b26870a7109c3f4b327dd2b5a4ec4fa1ba Mon Sep 17 00:00:00 2001
|
||||
From: Marcelo Chiaradia <mchiaradia@suse.com>
|
||||
Date: Thu, 4 Apr 2019 13:57:38 +0200
|
||||
Subject: [PATCH] Add 'batch_presence_ping_timeout' and
|
||||
@ -9,7 +9,7 @@ Subject: [PATCH] Add 'batch_presence_ping_timeout' and
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/cli/batch.py b/salt/cli/batch.py
|
||||
index 4bd07f584a..ce239215cb 100644
|
||||
index 36e66da1af..67f03c8a45 100644
|
||||
--- a/salt/cli/batch.py
|
||||
+++ b/salt/cli/batch.py
|
||||
@@ -83,6 +83,9 @@ def batch_get_opts(
|
||||
@ -41,6 +41,6 @@ index 4bd07f584a..ce239215cb 100644
|
||||
|
||||
# Broadcast to targets
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c2c002a2b8f106388fda3c1abaf518f2d47ce1cf Mon Sep 17 00:00:00 2001
|
||||
From 2c4676963dfb4646ae0d2ad8aedba0aa83d266e9 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 9 Oct 2018 14:08:50 +0200
|
||||
Subject: [PATCH] Add CPE_NAME for osversion* grain parsing (U#49946)
|
||||
@ -29,10 +29,10 @@ Fix proper part name in the string-bound CPE
|
||||
1 file changed, 28 insertions(+)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index 29e8371c2b..d688b6c757 100644
|
||||
index cd7ee39d2f..f59eeb5780 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -1571,6 +1571,34 @@ def _parse_cpe_name(cpe):
|
||||
@@ -1623,6 +1623,34 @@ def _parse_cpe_name(cpe):
|
||||
return ret
|
||||
|
||||
|
||||
@ -68,6 +68,6 @@ index 29e8371c2b..d688b6c757 100644
|
||||
'''
|
||||
Return grains pertaining to the operating system
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b02aee33a3aa1676cbfdf3a0ed936eef8a40adfe Mon Sep 17 00:00:00 2001
|
||||
From a96d99e4bf7a43c99037aee6b6e030cdc46ab542 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Thu, 21 Jun 2018 11:57:57 +0100
|
||||
@ -24,6 +24,6 @@ index fff70e9f5b..4fb58674bf 100644
|
||||
+ '__suse_reserved_pkg_patches_support': True
|
||||
+ }
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d9d459f62d53acddd67313d9d66e1fe8caf4fd45 Mon Sep 17 00:00:00 2001
|
||||
From 960c7f29239a23c3d46c31692d2e881735f4d2a7 Mon Sep 17 00:00:00 2001
|
||||
From: Marcelo Chiaradia <mchiaradia@suse.com>
|
||||
Date: Thu, 7 Jun 2018 10:29:41 +0200
|
||||
Subject: [PATCH] Add environment variable to know if yum is invoked from
|
||||
@ -73,6 +73,6 @@ index c250b94f0e..a56a2e8366 100644
|
||||
for line in salt.utils.itertools.split(ret, os.linesep):
|
||||
inst, advisory_id, sev, pkg = re.match(r'([i|\s]) ([^\s]+) +([^\s]+) +([^\s]+)',
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 4219d3d69799bc20f88eed0a02ef15c932e6782e Mon Sep 17 00:00:00 2001
|
||||
From 1a98027d94dc7491182a16eef2e6134c2d8423b6 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Thu, 6 Dec 2018 16:26:23 +0100
|
||||
Subject: [PATCH] Add hold/unhold functions
|
||||
@ -7,7 +7,7 @@ Add unhold function
|
||||
|
||||
Add warnings
|
||||
---
|
||||
salt/modules/zypperpkg.py | 88 ++++++++++++++++++++++++++++++++++++++-
|
||||
salt/modules/zypperpkg.py | 88 ++++++++++++++++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 87 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/modules/zypperpkg.py b/salt/modules/zypperpkg.py
|
||||
@ -139,6 +139,6 @@ index 001b852fc4..0c26e2214c 100644
|
||||
added = []
|
||||
try:
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From fa957bcb842a29a340a980a03cd8e54b06e7e21b Mon Sep 17 00:00:00 2001
|
||||
From 3ae0b949dacc7ac597dc94a5141d2f4c23d6efc5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 9 Oct 2019 13:03:33 +0100
|
||||
@ -31,6 +31,6 @@ index 1453430e73..0df918d634 100644
|
||||
self.event.fire_event(
|
||||
data,
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 671bb9d48e120c806ca1f6f176b0ada43b1e7594 Mon Sep 17 00:00:00 2001
|
||||
From ddc5439536e8d7a0b2fca1fcb9db0b18ed961d54 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 12 Oct 2018 16:20:40 +0200
|
||||
Subject: [PATCH] Add multi-file support and globbing to the filetree
|
||||
@ -12,8 +12,8 @@ Collect system logs and boot logs
|
||||
|
||||
Support globbing in filetree
|
||||
---
|
||||
salt/cli/support/intfunc.py | 49 ++++++++++++++++-----------
|
||||
salt/cli/support/profiles/default.yml | 7 ++++
|
||||
salt/cli/support/intfunc.py | 49 +++++++++++++++++++++--------------
|
||||
salt/cli/support/profiles/default.yml | 7 +++++
|
||||
2 files changed, 37 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/salt/cli/support/intfunc.py b/salt/cli/support/intfunc.py
|
||||
@ -111,6 +111,6 @@ index 01d9a26193..3defb5eef3 100644
|
||||
+ - /var/log/messages
|
||||
|
||||
--
|
||||
2.19.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From aa9df9a08aa2a761cd91d91376a6a7dfa820c48f Mon Sep 17 00:00:00 2001
|
||||
From 27e882ff23e24ec26339503e727e5dec0507b55f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Fri, 24 May 2019 16:27:07 +0100
|
||||
@ -22,6 +22,6 @@ index 828b0cecda..cb85eb99fe 100644
|
||||
ARCHES_SPARC = (
|
||||
'sparc', 'sparcv8', 'sparcv9', 'sparcv9v', 'sparc64', 'sparc64v'
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 18c46c301b98841d941e2d07901e7468de30b83a Mon Sep 17 00:00:00 2001
|
||||
From ee67c569786f5381fa0fb34c64f6796ecef5b21f Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Mon, 12 Mar 2018 12:01:39 +0100
|
||||
Subject: [PATCH] Add SaltSSH multi-version support across Python
|
||||
@ -254,7 +254,7 @@ Lintfix
|
||||
|
||||
Set master_top_first to False by default
|
||||
---
|
||||
doc/topics/releases/fluorine.rst | 178 +++++++++++++++++++++++++++++++
|
||||
doc/topics/releases/fluorine.rst | 178 +++++++++++++++++++++++++++++++++++++++
|
||||
salt/client/ssh/ssh_py_shim.py | 4 +
|
||||
salt/utils/thin.py | 1 +
|
||||
3 files changed, 183 insertions(+)
|
||||
@ -445,10 +445,10 @@ index 0000000000..40c69e25cc
|
||||
+Salt version is also available on the Master machine, although does not need to be directly
|
||||
+installed together with the older Python interpreter.
|
||||
diff --git a/salt/client/ssh/ssh_py_shim.py b/salt/client/ssh/ssh_py_shim.py
|
||||
index be17a1a38c..595d1c40c7 100644
|
||||
index cd7549a178..95b3931a32 100644
|
||||
--- a/salt/client/ssh/ssh_py_shim.py
|
||||
+++ b/salt/client/ssh/ssh_py_shim.py
|
||||
@@ -164,6 +164,9 @@ def unpack_thin(thin_path):
|
||||
@@ -165,6 +165,9 @@ def unpack_thin(thin_path):
|
||||
old_umask = os.umask(0o077) # pylint: disable=blacklisted-function
|
||||
tfile.extractall(path=OPTIONS.saltdir)
|
||||
tfile.close()
|
||||
@ -458,7 +458,7 @@ index be17a1a38c..595d1c40c7 100644
|
||||
os.umask(old_umask) # pylint: disable=blacklisted-function
|
||||
try:
|
||||
os.unlink(thin_path)
|
||||
@@ -357,5 +360,6 @@ def main(argv): # pylint: disable=W0613
|
||||
@@ -358,5 +361,6 @@ def main(argv): # pylint: disable=W0613
|
||||
return retcode
|
||||
|
||||
|
||||
@ -466,7 +466,7 @@ index be17a1a38c..595d1c40c7 100644
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main(sys.argv))
|
||||
diff --git a/salt/utils/thin.py b/salt/utils/thin.py
|
||||
index b60815225e..172b0938f5 100644
|
||||
index 3c8ffec8af..b6fa90abae 100644
|
||||
--- a/salt/utils/thin.py
|
||||
+++ b/salt/utils/thin.py
|
||||
@@ -9,6 +9,7 @@ from __future__ import absolute_import, print_function, unicode_literals
|
||||
@ -478,6 +478,6 @@ index b60815225e..172b0938f5 100644
|
||||
import subprocess
|
||||
import sys
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 74160010c0fdddb04980ad664e155550382ef82b Mon Sep 17 00:00:00 2001
|
||||
From d150fed197f47d17227f1801b29357ab509ebbd4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 22 May 2019 13:00:46 +0100
|
||||
@ -21,6 +21,6 @@ index 0000000000..94d05fb2ee
|
||||
+ - /usr/share/salt-formulas/states
|
||||
+ - /srv/salt
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2bb024d871acaf5726eeb6e89fb83785605b4c83 Mon Sep 17 00:00:00 2001
|
||||
From 4bf9567fd28470085ee501e5e17c75a932b5dde5 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 19 Oct 2018 15:44:47 +0200
|
||||
Subject: [PATCH] Add supportconfig module for remote calls and SaltSSH
|
||||
@ -198,13 +198,13 @@ Check last function by full name
|
||||
salt/cli/support/__init__.py | 2 +-
|
||||
salt/cli/support/collector.py | 12 +-
|
||||
salt/loader.py | 6 +-
|
||||
salt/modules/saltsupport.py | 381 ++++++++++++++++++++++++
|
||||
salt/modules/saltsupport.py | 381 +++++++++++++++++++++++++++++++
|
||||
salt/state.py | 34 ++-
|
||||
salt/states/saltsupport.py | 206 +++++++++++++
|
||||
salt/utils/args.py | 4 +-
|
||||
salt/states/saltsupport.py | 206 +++++++++++++++++
|
||||
salt/utils/args.py | 6 +-
|
||||
salt/utils/decorators/__init__.py | 24 ++
|
||||
tests/unit/modules/test_saltsupport.py | 394 +++++++++++++++++++++++++
|
||||
9 files changed, 1044 insertions(+), 19 deletions(-)
|
||||
tests/unit/modules/test_saltsupport.py | 394 +++++++++++++++++++++++++++++++++
|
||||
9 files changed, 1044 insertions(+), 21 deletions(-)
|
||||
create mode 100644 salt/modules/saltsupport.py
|
||||
create mode 100644 salt/states/saltsupport.py
|
||||
create mode 100644 tests/unit/modules/test_saltsupport.py
|
||||
@ -267,10 +267,10 @@ index a4343297b6..cbae189aea 100644
|
||||
|
||||
archive_path = self.collector.archive_path
|
||||
diff --git a/salt/loader.py b/salt/loader.py
|
||||
index ae024ccac9..094a816d11 100644
|
||||
index 0cff0c72bb..d494c452ed 100644
|
||||
--- a/salt/loader.py
|
||||
+++ b/salt/loader.py
|
||||
@@ -1570,8 +1570,10 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1687,8 +1687,10 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
))
|
||||
|
||||
for attr in getattr(mod, '__load__', dir(mod)):
|
||||
@ -671,10 +671,10 @@ index 0000000000..750b2655d6
|
||||
+
|
||||
+ return __virtualname__
|
||||
diff --git a/salt/state.py b/salt/state.py
|
||||
index e7288bce2e..b4b2a00601 100644
|
||||
index dfa9c6de58..c3119b6a33 100644
|
||||
--- a/salt/state.py
|
||||
+++ b/salt/state.py
|
||||
@@ -1315,8 +1315,9 @@ class State(object):
|
||||
@@ -1358,8 +1358,9 @@ class State(object):
|
||||
names = []
|
||||
if state.startswith('__'):
|
||||
continue
|
||||
@ -686,7 +686,7 @@ index e7288bce2e..b4b2a00601 100644
|
||||
if orchestration_jid is not None:
|
||||
chunk['__orchestration_jid__'] = orchestration_jid
|
||||
if '__sls__' in body:
|
||||
@@ -1901,8 +1902,12 @@ class State(object):
|
||||
@@ -1929,8 +1930,12 @@ class State(object):
|
||||
ret = self.call_parallel(cdata, low)
|
||||
else:
|
||||
self.format_slots(cdata)
|
||||
@ -701,7 +701,7 @@ index e7288bce2e..b4b2a00601 100644
|
||||
self.states.inject_globals = {}
|
||||
if 'check_cmd' in low and '{0[state]}.mod_run_check_cmd'.format(low) not in self.states:
|
||||
ret.update(self._run_check_cmd(low))
|
||||
@@ -2729,10 +2734,31 @@ class State(object):
|
||||
@@ -2762,10 +2767,31 @@ class State(object):
|
||||
running.update(errors)
|
||||
return running
|
||||
|
||||
@ -946,19 +946,21 @@ index 0000000000..f245f7f137
|
||||
+ '''
|
||||
+ return __virtualname__
|
||||
diff --git a/salt/utils/args.py b/salt/utils/args.py
|
||||
index a3d8099c7f..19de7d5d39 100644
|
||||
index 57dbf5861a..1f4d5d2e0f 100644
|
||||
--- a/salt/utils/args.py
|
||||
+++ b/salt/utils/args.py
|
||||
@@ -19,7 +19,7 @@ import salt.utils.data
|
||||
@@ -20,9 +20,7 @@ import salt.utils.data
|
||||
import salt.utils.jid
|
||||
import salt.utils.versions
|
||||
import salt.utils.yaml
|
||||
-
|
||||
-log = logging.getLogger(__name__)
|
||||
-
|
||||
+from salt.utils.odict import OrderedDict
|
||||
|
||||
if six.PY3:
|
||||
KWARG_REGEX = re.compile(r'^([^\d\W][\w.-]*)=(?!=)(.*)$', re.UNICODE)
|
||||
@@ -409,7 +409,7 @@ def format_call(fun,
|
||||
@@ -423,7 +421,7 @@ def format_call(fun,
|
||||
ret = initial_ret is not None and initial_ret or {}
|
||||
|
||||
ret['args'] = []
|
||||
@ -968,10 +970,10 @@ index a3d8099c7f..19de7d5d39 100644
|
||||
aspec = get_function_argspec(fun, is_class_method=is_class_method)
|
||||
|
||||
diff --git a/salt/utils/decorators/__init__.py b/salt/utils/decorators/__init__.py
|
||||
index 81d1812833..c5da5b6d4b 100644
|
||||
index a6da91447a..7529013a8e 100644
|
||||
--- a/salt/utils/decorators/__init__.py
|
||||
+++ b/salt/utils/decorators/__init__.py
|
||||
@@ -596,3 +596,27 @@ def ensure_unicode_args(function):
|
||||
@@ -671,3 +671,27 @@ def ensure_unicode_args(function):
|
||||
else:
|
||||
return function(*args, **kwargs)
|
||||
return wrapped
|
||||
@ -1400,6 +1402,6 @@ index 0000000000..7bd652a90e
|
||||
+ assert out.messages[saltsupport.LogCollector.INFO] == ['00:00:00.000 - The real TTYs became '
|
||||
+ 'pseudo TTYs and vice versa']
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 0fd1e40e7149dd1a33f9a4497fa4e31c78ddfba7 Mon Sep 17 00:00:00 2001
|
||||
From fdc0a1f4adc40d9e5b5f7164f750e4580b9cd3f4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= <cbosdonnat@suse.com>
|
||||
Date: Thu, 18 Oct 2018 13:32:59 +0200
|
||||
Subject: [PATCH] Add virt.all_capabilities
|
||||
@ -10,15 +10,15 @@ before calling virt.domain_capabilities for each of them.
|
||||
This commit embeds all this logic to get them all in a single
|
||||
virt.all_capabilities call.
|
||||
---
|
||||
salt/modules/virt.py | 107 +++++++++++++++++++++++---------
|
||||
tests/unit/modules/test_virt.py | 56 +++++++++++++++++
|
||||
salt/modules/virt.py | 107 +++++++++++++++++++++++++++++-----------
|
||||
tests/unit/modules/test_virt.py | 56 +++++++++++++++++++++
|
||||
2 files changed, 134 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
index b45c5f522d..0921122a8a 100644
|
||||
index 8d63b6ff4c..195da49296 100644
|
||||
--- a/salt/modules/virt.py
|
||||
+++ b/salt/modules/virt.py
|
||||
@@ -4094,37 +4094,10 @@ def _parse_caps_loader(node):
|
||||
@@ -4097,37 +4097,10 @@ def _parse_caps_loader(node):
|
||||
return result
|
||||
|
||||
|
||||
@ -58,7 +58,7 @@ index b45c5f522d..0921122a8a 100644
|
||||
result = {
|
||||
'emulator': caps.find('path').text if caps.find('path') is not None else None,
|
||||
'domain': caps.find('domain').text if caps.find('domain') is not None else None,
|
||||
@@ -4164,6 +4137,82 @@ def domain_capabilities(emulator=None, arch=None, machine=None, domain=None, **k
|
||||
@@ -4167,6 +4140,82 @@ def domain_capabilities(emulator=None, arch=None, machine=None, domain=None, **k
|
||||
return result
|
||||
|
||||
|
||||
@ -142,7 +142,7 @@ index b45c5f522d..0921122a8a 100644
|
||||
'''
|
||||
Return the optimal 'custom' CPU baseline config for VM's on this minion
|
||||
diff --git a/tests/unit/modules/test_virt.py b/tests/unit/modules/test_virt.py
|
||||
index 3a69adece1..bd34962a6a 100644
|
||||
index 6546a0467c..36fcf0d4c0 100644
|
||||
--- a/tests/unit/modules/test_virt.py
|
||||
+++ b/tests/unit/modules/test_virt.py
|
||||
@@ -2204,6 +2204,62 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@ -209,6 +209,6 @@ index 3a69adece1..bd34962a6a 100644
|
||||
'''
|
||||
Test virt._get_net_xml() with VLAN tag
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5e202207d02d2bf4860cc5487ed19f9d835993d1 Mon Sep 17 00:00:00 2001
|
||||
From 3bb798795f89e1af5132c6a97ddb0cf414912265 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= <cbosdonnat@suse.com>
|
||||
Date: Fri, 15 Feb 2019 17:28:00 +0100
|
||||
Subject: [PATCH] Add virt.volume_infos() and virt.volume_delete()
|
||||
@ -11,15 +11,15 @@ names of the virtual machines using the volumes of file type.
|
||||
|
||||
virt.volume_delete() allows removing a given volume.
|
||||
---
|
||||
salt/modules/virt.py | 126 +++++++++++++++++++++
|
||||
tests/unit/modules/test_virt.py | 195 ++++++++++++++++++++++++++++++++
|
||||
salt/modules/virt.py | 126 ++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_virt.py | 195 ++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 321 insertions(+)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
index 0921122a8a..17039444c4 100644
|
||||
index 195da49296..9bb3636bd1 100644
|
||||
--- a/salt/modules/virt.py
|
||||
+++ b/salt/modules/virt.py
|
||||
@@ -4988,3 +4988,129 @@ def pool_list_volumes(name, **kwargs):
|
||||
@@ -4991,3 +4991,129 @@ def pool_list_volumes(name, **kwargs):
|
||||
return pool.listVolumes()
|
||||
finally:
|
||||
conn.close()
|
||||
@ -150,7 +150,7 @@ index 0921122a8a..17039444c4 100644
|
||||
+ finally:
|
||||
+ conn.close()
|
||||
diff --git a/tests/unit/modules/test_virt.py b/tests/unit/modules/test_virt.py
|
||||
index bd34962a6a..14e51e1e2a 100644
|
||||
index 36fcf0d4c0..6f9eea241a 100644
|
||||
--- a/tests/unit/modules/test_virt.py
|
||||
+++ b/tests/unit/modules/test_virt.py
|
||||
@@ -2698,3 +2698,198 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@ -353,6 +353,6 @@ index bd34962a6a..14e51e1e2a 100644
|
||||
+ virt.volume_delete('missing', 'test_volume')
|
||||
+ self.assertEqual(mock_delete.call_count, 2)
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From f9e7ace2f7c56a7fb4df60a048131dbd6887340b Mon Sep 17 00:00:00 2001
|
||||
From 812709918226b98cccdcb388863ce68b6cf076b6 Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Fri, 27 Sep 2019 11:33:47 +0200
|
||||
Subject: [PATCH] Adds the possibility to also use downloadonly in kwargs
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 9e2139213bc2eeb8afbf10fdff663ebe7ed23887 Mon Sep 17 00:00:00 2001
|
||||
From eadcab9b1b03041360d27421e5e8204f2a463e61 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 3 Jul 2019 09:34:50 +0100
|
||||
@ -63,6 +63,6 @@ index d2ae06a98e..0a3053680f 100644
|
||||
@patch('os.path.getsize', MagicMock(return_value=123456))
|
||||
@patch('os.path.getctime', MagicMock(return_value=1234567890.123456))
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From dfd16dd5968aae96e36e0dee412864fc765b62fb Mon Sep 17 00:00:00 2001
|
||||
From 6dea5186842285588ee02b66701cc91a4a2c4fa9 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Fri, 16 Nov 2018 17:05:29 +0100
|
||||
Subject: [PATCH] Async batch implementation
|
||||
@ -31,18 +31,18 @@ Add separate batch presence_ping timeout
|
||||
salt/client/__init__.py | 44 +---
|
||||
salt/master.py | 25 ++
|
||||
salt/netapi/__init__.py | 3 +-
|
||||
salt/transport/ipc.py | 11 +-
|
||||
salt/utils/event.py | 11 +-
|
||||
salt/transport/ipc.py | 9 +-
|
||||
salt/utils/event.py | 8 +-
|
||||
tests/unit/cli/test_batch_async.py | 351 +++++++++++++++++++++++++++++
|
||||
9 files changed, 707 insertions(+), 60 deletions(-)
|
||||
9 files changed, 703 insertions(+), 59 deletions(-)
|
||||
create mode 100644 salt/cli/batch_async.py
|
||||
create mode 100644 tests/unit/cli/test_batch_async.py
|
||||
|
||||
diff --git a/salt/auth/__init__.py b/salt/auth/__init__.py
|
||||
index 61fbb018fd..a8aefa7091 100644
|
||||
index d43c57338c..e44c94fb37 100644
|
||||
--- a/salt/auth/__init__.py
|
||||
+++ b/salt/auth/__init__.py
|
||||
@@ -51,7 +51,9 @@ AUTH_INTERNAL_KEYWORDS = frozenset([
|
||||
@@ -52,7 +52,9 @@ AUTH_INTERNAL_KEYWORDS = frozenset([
|
||||
'metadata',
|
||||
'print_event',
|
||||
'raw',
|
||||
@ -54,7 +54,7 @@ index 61fbb018fd..a8aefa7091 100644
|
||||
|
||||
|
||||
diff --git a/salt/cli/batch.py b/salt/cli/batch.py
|
||||
index e3a7bf9bcf..4bd07f584a 100644
|
||||
index 723944b60a..36e66da1af 100644
|
||||
--- a/salt/cli/batch.py
|
||||
+++ b/salt/cli/batch.py
|
||||
@@ -26,6 +26,79 @@ import logging
|
||||
@ -67,7 +67,7 @@ index e3a7bf9bcf..4bd07f584a 100644
|
||||
+ '''
|
||||
+ partition = lambda x: float(x) / 100.0 * len(minions)
|
||||
+ try:
|
||||
+ if '%' in opts['batch']:
|
||||
+ if isinstance(opts['batch'], six.string_types) and '%' in opts['batch']:
|
||||
+ res = partition(float(opts['batch'].strip('%')))
|
||||
+ if res < 1:
|
||||
+ return int(math.ceil(res))
|
||||
@ -104,7 +104,7 @@ index e3a7bf9bcf..4bd07f584a 100644
|
||||
+ 'tgt_type': tgt_type,
|
||||
+ 'ret': ret,
|
||||
+ 'batch': batch,
|
||||
+ 'failhard': kwargs.get('failhard', False),
|
||||
+ 'failhard': kwargs.get('failhard', parent_opts.get('failhard', False)),
|
||||
+ 'raw': kwargs.get('raw', False)}
|
||||
+
|
||||
+ if 'timeout' in kwargs:
|
||||
@ -146,7 +146,7 @@ index e3a7bf9bcf..4bd07f584a 100644
|
||||
- '''
|
||||
- partition = lambda x: float(x) / 100.0 * len(self.minions)
|
||||
- try:
|
||||
- if '%' in self.opts['batch']:
|
||||
- if isinstance(self.opts['batch'], six.string_types) and '%' in self.opts['batch']:
|
||||
- res = partition(float(self.opts['batch'].strip('%')))
|
||||
- if res < 1:
|
||||
- return int(math.ceil(res))
|
||||
@ -396,7 +396,7 @@ index 0000000000..3160d46d8b
|
||||
+ self.event.io_loop.call_later(self.opts['timeout'], self.find_job, set(next_batch))
|
||||
+ self.active = self.active.union(next_batch)
|
||||
diff --git a/salt/client/__init__.py b/salt/client/__init__.py
|
||||
index 9f0903c7f0..8b37422cbf 100644
|
||||
index 6a62e53fdc..8b37422cbf 100644
|
||||
--- a/salt/client/__init__.py
|
||||
+++ b/salt/client/__init__.py
|
||||
@@ -531,45 +531,14 @@ class LocalClient(object):
|
||||
@ -424,7 +424,7 @@ index 9f0903c7f0..8b37422cbf 100644
|
||||
- 'tgt_type': tgt_type,
|
||||
- 'ret': ret,
|
||||
- 'batch': batch,
|
||||
- 'failhard': kwargs.get('failhard', False),
|
||||
- 'failhard': kwargs.get('failhard', self.opts.get('failhard', False)),
|
||||
- 'raw': kwargs.get('raw', False)}
|
||||
-
|
||||
- if 'timeout' in kwargs:
|
||||
@ -461,7 +461,7 @@ index 9f0903c7f0..8b37422cbf 100644
|
||||
'Salt request timed out. The master is not responding. You '
|
||||
'may need to run your command with `--async` in order to '
|
||||
diff --git a/salt/master.py b/salt/master.py
|
||||
index 6881aae137..f08c126280 100644
|
||||
index 606be7319c..ee968410f7 100644
|
||||
--- a/salt/master.py
|
||||
+++ b/salt/master.py
|
||||
@@ -32,6 +32,7 @@ import tornado.gen # pylint: disable=F0401
|
||||
@ -472,7 +472,7 @@ index 6881aae137..f08c126280 100644
|
||||
import salt.client
|
||||
import salt.client.ssh.client
|
||||
import salt.exceptions
|
||||
@@ -2039,6 +2040,27 @@ class ClearFuncs(object):
|
||||
@@ -2040,6 +2041,27 @@ class ClearFuncs(object):
|
||||
return False
|
||||
return self.loadauth.get_tok(clear_load['token'])
|
||||
|
||||
@ -500,7 +500,7 @@ index 6881aae137..f08c126280 100644
|
||||
def publish(self, clear_load):
|
||||
'''
|
||||
This method sends out publications to the minions, it can only be used
|
||||
@@ -2130,6 +2152,9 @@ class ClearFuncs(object):
|
||||
@@ -2131,6 +2153,9 @@ class ClearFuncs(object):
|
||||
'error': 'Master could not resolve minions for target {0}'.format(clear_load['tgt'])
|
||||
}
|
||||
}
|
||||
@ -525,29 +525,20 @@ index 95f6384889..43b6e943a7 100644
|
||||
def local(self, *args, **kwargs):
|
||||
'''
|
||||
diff --git a/salt/transport/ipc.py b/salt/transport/ipc.py
|
||||
index 40a172991d..8235f104ef 100644
|
||||
index dbcba18e5c..d0e1639b6e 100644
|
||||
--- a/salt/transport/ipc.py
|
||||
+++ b/salt/transport/ipc.py
|
||||
@@ -669,6 +669,8 @@ class IPCMessageSubscriber(IPCClient):
|
||||
self._sync_ioloop_running = False
|
||||
self.saved_data = []
|
||||
self._sync_read_in_progress = Semaphore()
|
||||
@@ -615,6 +615,7 @@ class IPCMessageSubscriber(IPCClient):
|
||||
self._read_stream_future = None
|
||||
self._saved_data = []
|
||||
self._read_in_progress = Lock()
|
||||
+ self.callbacks = set()
|
||||
+ self.reading = False
|
||||
|
||||
@tornado.gen.coroutine
|
||||
def _read_sync(self, timeout):
|
||||
@@ -756,6 +758,7 @@ class IPCMessageSubscriber(IPCClient):
|
||||
while not self.stream.closed():
|
||||
try:
|
||||
self._read_stream_future = self.stream.read_bytes(4096, partial=True)
|
||||
+ self.reading = True
|
||||
wire_bytes = yield self._read_stream_future
|
||||
self._read_stream_future = None
|
||||
self.unpacker.feed(wire_bytes)
|
||||
@@ -768,8 +771,12 @@ class IPCMessageSubscriber(IPCClient):
|
||||
except Exception as exc:
|
||||
log.error('Exception occurred while Subscriber handling stream: %s', exc)
|
||||
def _read(self, timeout, callback=None):
|
||||
@@ -689,8 +690,12 @@ class IPCMessageSubscriber(IPCClient):
|
||||
return self._saved_data.pop(0)
|
||||
return self.io_loop.run_sync(lambda: self._read(timeout))
|
||||
|
||||
+ def __run_callbacks(self, raw):
|
||||
+ for callback in self.callbacks:
|
||||
@ -559,20 +550,20 @@ index 40a172991d..8235f104ef 100644
|
||||
'''
|
||||
Asynchronously read messages and invoke a callback when they are ready.
|
||||
|
||||
@@ -784,7 +791,7 @@ class IPCMessageSubscriber(IPCClient):
|
||||
@@ -705,7 +710,7 @@ class IPCMessageSubscriber(IPCClient):
|
||||
except Exception as exc:
|
||||
log.error('Exception occurred while Subscriber connecting: %s', exc)
|
||||
yield tornado.gen.sleep(1)
|
||||
- yield self._read_async(callback)
|
||||
+ yield self._read_async(self.__run_callbacks)
|
||||
- yield self._read(None, callback)
|
||||
+ yield self._read(None, self.__run_callbacks)
|
||||
|
||||
def close(self):
|
||||
'''
|
||||
diff --git a/salt/utils/event.py b/salt/utils/event.py
|
||||
index 296a296084..d2700bd2a0 100644
|
||||
index 0b877980aa..ad9c85b576 100644
|
||||
--- a/salt/utils/event.py
|
||||
+++ b/salt/utils/event.py
|
||||
@@ -863,6 +863,10 @@ class SaltEvent(object):
|
||||
@@ -858,6 +858,10 @@ class SaltEvent(object):
|
||||
# Minion fired a bad retcode, fire an event
|
||||
self._fire_ret_load_specific_fun(load)
|
||||
|
||||
@ -583,17 +574,15 @@ index 296a296084..d2700bd2a0 100644
|
||||
def set_event_handler(self, event_handler):
|
||||
'''
|
||||
Invoke the event_handler callback each time an event arrives.
|
||||
@@ -871,8 +875,11 @@ class SaltEvent(object):
|
||||
@@ -866,8 +870,10 @@ class SaltEvent(object):
|
||||
|
||||
if not self.cpub:
|
||||
self.connect_pub()
|
||||
- # This will handle reconnects
|
||||
- return self.subscriber.read_async(event_handler)
|
||||
+
|
||||
+ self.subscriber.callbacks.add(event_handler)
|
||||
+ if not self.subscriber.reading:
|
||||
+ # This will handle reconnects
|
||||
+ self.subscriber.read_async()
|
||||
# This will handle reconnects
|
||||
- return self.subscriber.read_async(event_handler)
|
||||
+ return self.subscriber.read_async()
|
||||
|
||||
def __del__(self):
|
||||
# skip exceptions in destroy-- since destroy() doesn't cover interpreter
|
||||
@ -955,6 +944,6 @@ index 0000000000..f65b6a06c3
|
||||
+ (self.batch.find_job, {'foo'})
|
||||
+ )
|
||||
--
|
||||
2.20.1
|
||||
2.23.0
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 310f8eb22db6010ba48ab371a7223c1345cfbcf0 Mon Sep 17 00:00:00 2001
|
||||
From 47adf8fbd8ff1baeef83b2ba8f525dfd5eaef123 Mon Sep 17 00:00:00 2001
|
||||
From: Hubert Mantel <mantel@suse.de>
|
||||
Date: Mon, 27 Nov 2017 13:55:13 +0100
|
||||
Subject: [PATCH] avoid excessive syslogging by watchdog cronjob (#58)
|
||||
@ -21,6 +21,6 @@ index 2e418094ed..73a91ebd62 100755
|
||||
/usr/bin/salt-daemon-watcher --with-init & disown
|
||||
fi
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 36433f3f81fb45ff40ed2d294494342c9f622c2e Mon Sep 17 00:00:00 2001
|
||||
From 58504344b62fd577c0ef9c8d55378ea668a57912 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 29 Jul 2019 11:17:53 +0100
|
||||
@ -11,7 +11,7 @@ Improve error logging when http.query cannot be performed
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/utils/http.py b/salt/utils/http.py
|
||||
index 78043b1d6c..1b7dff6202 100644
|
||||
index c75ca73a85..ced01e110f 100644
|
||||
--- a/salt/utils/http.py
|
||||
+++ b/salt/utils/http.py
|
||||
@@ -567,11 +567,13 @@ def query(url,
|
||||
@ -30,6 +30,6 @@ index 78043b1d6c..1b7dff6202 100644
|
||||
|
||||
if stream is True or handle is True:
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,31 +0,0 @@
|
||||
From d914a1e952e393f3e72aee2cb8d9056533f490cc Mon Sep 17 00:00:00 2001
|
||||
From: Robert Munteanu <rombert@apache.org>
|
||||
Date: Mon, 19 Nov 2018 17:52:34 +0100
|
||||
Subject: [PATCH] azurefs: gracefully handle AttributeError
|
||||
|
||||
It is possible that the azure.storage object has no __version__ defined.
|
||||
In that case, prevent console spam with unhandled AttributeError
|
||||
messages and instead consider that Azure support is not present.
|
||||
|
||||
Problem was encountered on openSUSE Tumbleweed.
|
||||
---
|
||||
salt/fileserver/azurefs.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/fileserver/azurefs.py b/salt/fileserver/azurefs.py
|
||||
index 547a681016..032739d160 100644
|
||||
--- a/salt/fileserver/azurefs.py
|
||||
+++ b/salt/fileserver/azurefs.py
|
||||
@@ -68,7 +68,7 @@ try:
|
||||
if LooseVersion(azure.storage.__version__) < LooseVersion('0.20.0'):
|
||||
raise ImportError('azure.storage.__version__ must be >= 0.20.0')
|
||||
HAS_AZURE = True
|
||||
-except ImportError:
|
||||
+except (ImportError, AttributeError):
|
||||
HAS_AZURE = False
|
||||
|
||||
# Import third party libs
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
From 50377852ca989ffa141fcf32d5ca57d120b455b8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jos=C3=A9=20Guilherme=20Vanz?= <jvanz@jvanz.com>
|
||||
Date: Tue, 21 May 2019 16:13:18 -0300
|
||||
From b7e1ff5b0d023fef1f86fa970323dc01bfaabd41 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 5 Jun 2019 15:15:04 +0100
|
||||
Subject: [PATCH] batch.py: avoid exception when minion does not respond
|
||||
(bsc#1135507)
|
||||
MIME-Version: 1.0
|
||||
@ -21,11 +22,11 @@ Signed-off-by: José Guilherme Vanz <jguilhermevanz@suse.com>
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/salt/cli/batch.py b/salt/cli/batch.py
|
||||
index ce239215cb..1623fc5be8 100644
|
||||
index 67f03c8a45..10fc81a5f4 100644
|
||||
--- a/salt/cli/batch.py
|
||||
+++ b/salt/cli/batch.py
|
||||
@@ -315,6 +315,11 @@ class Batch(object):
|
||||
if self.opts.get('failhard') and data['ret']['retcode'] > 0:
|
||||
@@ -318,6 +318,11 @@ class Batch(object):
|
||||
if self.opts.get('failhard') and data['retcode'] > 0:
|
||||
failhard = True
|
||||
|
||||
+ # avoid an exception if the minion does not respond.
|
||||
@ -37,6 +38,6 @@ index ce239215cb..1623fc5be8 100644
|
||||
ret[minion] = data
|
||||
yield data
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,27 +1,29 @@
|
||||
From 8fc3419db49497ca33f99d7bbc3a251d7b07ff09 Mon Sep 17 00:00:00 2001
|
||||
From 160103e536cfb5c956d64ed13b9c633153fb7a2e Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 5 Oct 2018 12:02:08 +0200
|
||||
Subject: [PATCH] Bugfix: any unicode string of length 16 will raise
|
||||
TypeError instead of ValueError
|
||||
|
||||
---
|
||||
salt/_compat.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
salt/_compat.py | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/_compat.py b/salt/_compat.py
|
||||
index 8628833dcf..98931c6cce 100644
|
||||
index 61842b4bf3..42153f2395 100644
|
||||
--- a/salt/_compat.py
|
||||
+++ b/salt/_compat.py
|
||||
@@ -191,7 +191,7 @@ class IPv6AddressScoped(ipaddress.IPv6Address):
|
||||
@@ -190,8 +190,8 @@ class IPv6AddressScoped(ipaddress.IPv6Address):
|
||||
packed = False
|
||||
if isinstance(data, bytes) and len(data) == 16 and b':' not in data:
|
||||
try:
|
||||
packed = bool(int(str(bytearray(data)).encode('hex'), 16))
|
||||
- packed = bool(int(binascii.hexlify(data), 16))
|
||||
- except ValueError:
|
||||
+ packed = bool(int(str(bytearray(data)).encode('hex'), 16))
|
||||
+ except (ValueError, TypeError):
|
||||
pass
|
||||
|
||||
return packed
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
From 722b9395a6489da7626e6a388c78bf8e8812190e Mon Sep 17 00:00:00 2001
|
||||
From e27ccce1429fa604137df35d8dabbc8016c2b5c9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Fri, 12 Apr 2019 16:47:03 +0100
|
||||
Subject: [PATCH] Calculate FQDNs in parallel to avoid blockings (bsc#1129079)
|
||||
Subject: [PATCH] Calculate FQDNs in parallel to avoid blockings
|
||||
(bsc#1129079)
|
||||
|
||||
Fix pylint issue
|
||||
---
|
||||
@ -10,10 +11,10 @@ Fix pylint issue
|
||||
1 file changed, 26 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index 05a9d5035d..796458939d 100644
|
||||
index 7d75d48bb5..ac66a437fd 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -20,11 +20,14 @@ import platform
|
||||
@@ -20,12 +20,15 @@ import platform
|
||||
import logging
|
||||
import locale
|
||||
import uuid
|
||||
@ -22,13 +23,14 @@ index 05a9d5035d..796458939d 100644
|
||||
from errno import EACCES, EPERM
|
||||
import datetime
|
||||
import warnings
|
||||
import time
|
||||
|
||||
+from multiprocessing.dummy import Pool as ThreadPool
|
||||
+
|
||||
# pylint: disable=import-error
|
||||
try:
|
||||
import dateutil.tz
|
||||
@@ -2200,13 +2203,10 @@ def fqdns():
|
||||
@@ -2255,13 +2258,10 @@ def fqdns():
|
||||
grains = {}
|
||||
fqdns = set()
|
||||
|
||||
@ -44,9 +46,9 @@ index 05a9d5035d..796458939d 100644
|
||||
except socket.herror as err:
|
||||
if err.errno == 0:
|
||||
# No FQDN for this IP address, so we don't need to know this all the time.
|
||||
@@ -2216,6 +2216,27 @@ def fqdns():
|
||||
@@ -2271,6 +2271,27 @@ def fqdns():
|
||||
except (socket.error, socket.gaierror, socket.timeout) as err:
|
||||
log.error(err_message, err)
|
||||
log.error(err_message, ip, err)
|
||||
|
||||
+ start = time.time()
|
||||
+
|
||||
@ -73,5 +75,6 @@ index 05a9d5035d..796458939d 100644
|
||||
|
||||
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8ced9cdeb53e7dc20a1665ba2e373fbdc5d30c5d Mon Sep 17 00:00:00 2001
|
||||
From d1e016a5deb8f79adc8473b02171b5661cb93ea8 Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Tue, 9 Apr 2019 16:32:46 +0200
|
||||
Subject: [PATCH] Checking for jid before returning data
|
||||
@ -30,6 +30,6 @@ index 8b37422cbf..aff354a021 100644
|
||||
# Ignore other erroneous messages
|
||||
continue
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From afdfd35222223d81c304854b5ae7af60f3820ed3 Mon Sep 17 00:00:00 2001
|
||||
From f7ae2b3ebe7d78ca60ada7fd2bb30f3cdbd75427 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 20 Nov 2018 16:06:31 +0100
|
||||
Subject: [PATCH] Debian info_installed compatibility (#50453)
|
||||
@ -49,10 +49,10 @@ Adjust architecture getter according to the lowpkg info
|
||||
|
||||
Fix wrong Git merge: missing function signature
|
||||
---
|
||||
salt/modules/aptpkg.py | 20 +++-
|
||||
salt/modules/dpkg_lowpkg.py | 93 +++++++++++++--
|
||||
tests/unit/modules/test_aptpkg.py | 151 ++++++++++++++++---------
|
||||
tests/unit/modules/test_dpkg_lowpkg.py | 69 +++++++++++
|
||||
salt/modules/aptpkg.py | 20 ++++-
|
||||
salt/modules/dpkg_lowpkg.py | 93 +++++++++++++++++---
|
||||
tests/unit/modules/test_aptpkg.py | 151 +++++++++++++++++++++------------
|
||||
tests/unit/modules/test_dpkg_lowpkg.py | 69 +++++++++++++++
|
||||
4 files changed, 267 insertions(+), 66 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/aptpkg.py b/salt/modules/aptpkg.py
|
||||
@ -588,6 +588,6 @@ index bdcb7eec89..d16ce3cc1a 100644
|
||||
+ assert ret['emacs']['license'] == 'BSD v3'
|
||||
+ assert ret['emacs']['version'] == '46.1'
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5eacdf8fef35cdd05cae1b65485b3f820c86bc68 Mon Sep 17 00:00:00 2001
|
||||
From 263c8c98a5601179a53c00523a1579883e705f1f Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 4 Dec 2018 16:39:08 +0100
|
||||
Subject: [PATCH] Decide if the source should be actually skipped
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] Decide if the source should be actually skipped
|
||||
1 file changed, 22 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/modules/aptpkg.py b/salt/modules/aptpkg.py
|
||||
index dc27903230..42d606926f 100644
|
||||
index 64620647c2..4a331444c9 100644
|
||||
--- a/salt/modules/aptpkg.py
|
||||
+++ b/salt/modules/aptpkg.py
|
||||
@@ -1698,6 +1698,27 @@ def list_repo_pkgs(*args, **kwargs): # pylint: disable=unused-import
|
||||
@@ -1574,6 +1574,27 @@ def list_repo_pkgs(*args, **kwargs): # pylint: disable=unused-import
|
||||
return ret
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ index dc27903230..42d606926f 100644
|
||||
def list_repos():
|
||||
'''
|
||||
Lists all repos in the sources.list (and sources.lists.d) files
|
||||
@@ -1713,7 +1734,7 @@ def list_repos():
|
||||
@@ -1589,7 +1610,7 @@ def list_repos():
|
||||
repos = {}
|
||||
sources = sourceslist.SourcesList()
|
||||
for source in sources.list:
|
||||
@ -49,6 +49,6 @@ index dc27903230..42d606926f 100644
|
||||
repo = {}
|
||||
repo['file'] = source.file
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b99e55aab52d086315d54cf44af68f40dcf79dc9 Mon Sep 17 00:00:00 2001
|
||||
From a8f289c4eb03c051d8ffc60eed28985f3b49d921 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 29 May 2019 11:03:16 +0100
|
||||
@ -6,8 +6,8 @@ Subject: [PATCH] Do not break repo files with multiple line values on
|
||||
yumpkg (bsc#1135360)
|
||||
|
||||
---
|
||||
salt/modules/yumpkg.py | 16 ++++++---
|
||||
tests/integration/modules/test_pkg.py | 48 +++++++++++++++++++++++++++
|
||||
salt/modules/yumpkg.py | 16 +++++++++---
|
||||
tests/integration/modules/test_pkg.py | 48 +++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 60 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/yumpkg.py b/salt/modules/yumpkg.py
|
||||
@ -47,10 +47,10 @@ index 5ec3835574..3a4fe47a45 100644
|
||||
content += comments + '\n'
|
||||
|
||||
diff --git a/tests/integration/modules/test_pkg.py b/tests/integration/modules/test_pkg.py
|
||||
index 0271cea81f..a82c9662c7 100644
|
||||
index 66ac3cfb61..7204428eca 100644
|
||||
--- a/tests/integration/modules/test_pkg.py
|
||||
+++ b/tests/integration/modules/test_pkg.py
|
||||
@@ -123,6 +123,54 @@ class PkgModuleTest(ModuleCase, SaltReturnAssertsMixin):
|
||||
@@ -136,6 +136,54 @@ class PkgModuleTest(ModuleCase, SaltReturnAssertsMixin):
|
||||
if repo is not None:
|
||||
self.run_function('pkg.del_repo', [repo])
|
||||
|
||||
@ -106,6 +106,6 @@ index 0271cea81f..a82c9662c7 100644
|
||||
def test_owner(self):
|
||||
'''
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From f185eabfb4b529157cf7464b32beebeb8b944310 Mon Sep 17 00:00:00 2001
|
||||
From c6c8ce93bb0be6fe22fb5d65517a002595a9eb7b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Tue, 7 May 2019 15:33:51 +0100
|
||||
@ -7,12 +7,12 @@ Subject: [PATCH] Do not crash when there are IPv6 established
|
||||
|
||||
Add unit test for '_netlink_tool_remote_on'
|
||||
---
|
||||
salt/utils/network.py | 9 +++++----
|
||||
salt/utils/network.py | 5 +++--
|
||||
tests/unit/utils/test_network.py | 16 ++++++++++++++++
|
||||
2 files changed, 21 insertions(+), 4 deletions(-)
|
||||
2 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/utils/network.py b/salt/utils/network.py
|
||||
index c72d2aec41..3f0522b9a5 100644
|
||||
index a183c9776a..a3fd6e848e 100644
|
||||
--- a/salt/utils/network.py
|
||||
+++ b/salt/utils/network.py
|
||||
@@ -1457,7 +1457,7 @@ def _parse_tcp_line(line):
|
||||
@ -32,16 +32,7 @@ index c72d2aec41..3f0522b9a5 100644
|
||||
'''
|
||||
remotes = set()
|
||||
valid = False
|
||||
@@ -1486,14 +1487,14 @@ def _netlink_tool_remote_on(port, which_end):
|
||||
elif 'ESTAB' not in line:
|
||||
continue
|
||||
chunks = line.split()
|
||||
- local_host, local_port = chunks[3].split(':', 1)
|
||||
- remote_host, remote_port = chunks[4].split(':', 1)
|
||||
+ local_host, local_port = chunks[3].rsplit(':', 1)
|
||||
+ remote_host, remote_port = chunks[4].rsplit(':', 1)
|
||||
|
||||
if which_end == 'remote_port' and int(remote_port) != port:
|
||||
@@ -1493,7 +1494,7 @@ def _netlink_tool_remote_on(port, which_end):
|
||||
continue
|
||||
if which_end == 'local_port' and int(local_port) != port:
|
||||
continue
|
||||
@ -51,11 +42,11 @@ index c72d2aec41..3f0522b9a5 100644
|
||||
if valid is False:
|
||||
remotes = None
|
||||
diff --git a/tests/unit/utils/test_network.py b/tests/unit/utils/test_network.py
|
||||
index ca627777a7..ecf7d7c45b 100644
|
||||
index f4c849d124..06e3aea6ea 100644
|
||||
--- a/tests/unit/utils/test_network.py
|
||||
+++ b/tests/unit/utils/test_network.py
|
||||
@@ -120,6 +120,14 @@ USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
|
||||
salt-master python2.781106 35 tcp4 127.0.0.1:61115 127.0.0.1:4506
|
||||
@@ -128,6 +128,14 @@ ESTAB 0 0 127.0.0.1:56726 127.0.
|
||||
ESTAB 0 0 ::ffff:1.2.3.4:5678 ::ffff:1.2.3.4:4505
|
||||
'''
|
||||
|
||||
+LINUX_NETLINK_SS_OUTPUT = '''\
|
||||
@ -69,7 +60,7 @@ index ca627777a7..ecf7d7c45b 100644
|
||||
IPV4_SUBNETS = {True: ('10.10.0.0/24',),
|
||||
False: ('10.10.0.0', '10.10.0.0/33', 'FOO', 9, '0.9.800.1000/24')}
|
||||
IPV6_SUBNETS = {True: ('::1/128',),
|
||||
@@ -453,6 +461,14 @@ class NetworkTestCase(TestCase):
|
||||
@@ -491,6 +499,14 @@ class NetworkTestCase(TestCase):
|
||||
remotes = network._freebsd_remotes_on('4506', 'remote')
|
||||
self.assertEqual(remotes, set(['127.0.0.1']))
|
||||
|
||||
@ -85,6 +76,6 @@ index ca627777a7..ecf7d7c45b 100644
|
||||
'''
|
||||
Test if minion IDs are distinct in the pool.
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ab7d69b3438c719f7ad6b4b346e56556e8a7bd10 Mon Sep 17 00:00:00 2001
|
||||
From 016e0c30718dac2a144090f82a2c35d5ce13bb8c Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 21 Sep 2018 17:31:39 +0200
|
||||
Subject: [PATCH] Do not load pip state if there is no 3rd party
|
||||
@ -40,6 +40,6 @@ index eac40c719c..988ae695a7 100644
|
||||
|
||||
def _clear_context(bin_env=None):
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 189a19b6e8d28cc49e5ad5f2a683e1dfdce66a86 Mon Sep 17 00:00:00 2001
|
||||
From ee69f252a71b950377987d7fad3515082e09abff Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Fri, 28 Jun 2019 15:17:56 +0100
|
||||
@ -10,10 +10,10 @@ Move MockTimedProc implementation to tests.support.mock
|
||||
|
||||
Add unit test for ansible caller
|
||||
---
|
||||
salt/modules/ansiblegate.py | 14 +++++++--
|
||||
tests/support/mock.py | 31 +++++++++++++++++++
|
||||
tests/unit/modules/test_ansiblegate.py | 41 ++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_cmdmod.py | 34 +--------------------
|
||||
salt/modules/ansiblegate.py | 14 +++++++++---
|
||||
tests/support/mock.py | 31 +++++++++++++++++++++++++
|
||||
tests/unit/modules/test_ansiblegate.py | 41 ++++++++++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_cmdmod.py | 34 +---------------------------
|
||||
4 files changed, 84 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/ansiblegate.py b/salt/modules/ansiblegate.py
|
||||
@ -214,6 +214,6 @@ index 8da672dd22..a20afaca0f 100644
|
||||
class CMDMODTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'''
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 769c9e85499bc9912b050fff7d3105690f1d7c7b Mon Sep 17 00:00:00 2001
|
||||
From 3c39b7ae5e4a0cd11a77241abde9407a8e1b3f07 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 13 Mar 2019 16:14:07 +0000
|
||||
@ -40,6 +40,6 @@ index 4f26a41670..5ec3835574 100644
|
||||
|
||||
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5e0fe08c6afd75a7d65d6ccd6cf6b4b197fb1064 Mon Sep 17 00:00:00 2001
|
||||
From a2e40158ad3b92a20ec9c12f7cd75edb4a01c2fc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= <cbosdonnat@suse.com>
|
||||
Date: Tue, 29 Jan 2019 09:44:03 +0100
|
||||
Subject: [PATCH] Don't call zypper with more than one --no-refresh
|
||||
@ -37,6 +37,6 @@ index f586c23fd0..5c5091a570 100644
|
||||
self.assertEqual(sniffer.calls[0]['args'][0], ['zypper', '--non-interactive', '--no-refresh', 'foo'])
|
||||
self.assertEqual(sniffer.calls[1]['args'][0], ['zypper', '--non-interactive', '--no-refresh', 'bar'])
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7c72c080c6b47cccecdf058cfe1be8f465d568a6 Mon Sep 17 00:00:00 2001
|
||||
From 0e4ac6001d552e649f8ab9d6c04b18bd531e4240 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 10 Jul 2018 12:06:33 +0200
|
||||
Subject: [PATCH] early feature: support-config
|
||||
@ -291,24 +291,24 @@ Remove development stub. Ughh...
|
||||
|
||||
Removed blacklist of pkg_resources
|
||||
---
|
||||
salt/cli/support/__init__.py | 65 +++
|
||||
salt/cli/support/collector.py | 495 ++++++++++++++++++++++
|
||||
salt/cli/support/console.py | 165 ++++++++
|
||||
salt/cli/support/intfunc.py | 42 ++
|
||||
salt/cli/support/__init__.py | 65 ++++
|
||||
salt/cli/support/collector.py | 495 ++++++++++++++++++++++++++++++
|
||||
salt/cli/support/console.py | 165 ++++++++++
|
||||
salt/cli/support/intfunc.py | 42 +++
|
||||
salt/cli/support/localrunner.py | 34 ++
|
||||
salt/cli/support/profiles/default.yml | 71 ++++
|
||||
salt/cli/support/profiles/default.yml | 71 +++++
|
||||
salt/cli/support/profiles/jobs-active.yml | 3 +
|
||||
salt/cli/support/profiles/jobs-last.yml | 3 +
|
||||
salt/cli/support/profiles/jobs-trace.yml | 7 +
|
||||
salt/cli/support/profiles/network.yml | 27 ++
|
||||
salt/cli/support/profiles/postgres.yml | 11 +
|
||||
salt/cli/support/profiles/salt.yml | 9 +
|
||||
salt/cli/support/profiles/users.yml | 22 +
|
||||
salt/cli/support/profiles/users.yml | 22 ++
|
||||
salt/scripts.py | 14 +
|
||||
salt/utils/parsers.py | 65 +++
|
||||
salt/utils/parsers.py | 65 ++++
|
||||
scripts/salt-support | 11 +
|
||||
setup.py | 2 +
|
||||
tests/unit/cli/test_support.py | 477 +++++++++++++++++++++
|
||||
tests/unit/cli/test_support.py | 477 ++++++++++++++++++++++++++++
|
||||
18 files changed, 1523 insertions(+)
|
||||
create mode 100644 salt/cli/support/__init__.py
|
||||
create mode 100644 salt/cli/support/collector.py
|
||||
@ -1359,10 +1359,10 @@ index 0000000000..391acdb606
|
||||
+ info: List of all available groups
|
||||
+ output: table
|
||||
diff --git a/salt/scripts.py b/salt/scripts.py
|
||||
index e677368a0f..7a1b4bb133 100644
|
||||
index 71120366e0..c789df4e39 100644
|
||||
--- a/salt/scripts.py
|
||||
+++ b/salt/scripts.py
|
||||
@@ -508,3 +508,17 @@ def salt_extend(extension, name, description, salt_dir, merge):
|
||||
@@ -539,3 +539,17 @@ def salt_extend(extension, name, description, salt_dir, merge):
|
||||
description=description,
|
||||
salt_dir=salt_dir,
|
||||
merge=merge)
|
||||
@ -1381,7 +1381,7 @@ index e677368a0f..7a1b4bb133 100644
|
||||
+ _install_signal_handlers(client)
|
||||
+ client.run()
|
||||
diff --git a/salt/utils/parsers.py b/salt/utils/parsers.py
|
||||
index 9a7f27ac11..56a8961c3a 100644
|
||||
index 1e652a845e..aa13310d5a 100644
|
||||
--- a/salt/utils/parsers.py
|
||||
+++ b/salt/utils/parsers.py
|
||||
@@ -20,6 +20,7 @@ import getpass
|
||||
@ -1400,7 +1400,7 @@ index 9a7f27ac11..56a8961c3a 100644
|
||||
import salt.utils.platform
|
||||
import salt.utils.process
|
||||
import salt.utils.stringutils
|
||||
@@ -1863,6 +1865,69 @@ class SyndicOptionParser(six.with_metaclass(OptionParserMeta,
|
||||
@@ -1902,6 +1904,69 @@ class SyndicOptionParser(six.with_metaclass(OptionParserMeta,
|
||||
self.get_config_file_path('minion'))
|
||||
|
||||
|
||||
@ -1488,18 +1488,18 @@ index 0000000000..48ce141c67
|
||||
+if __name__ == '__main__':
|
||||
+ salt_support()
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 0841c93553..8d0dcaa4b8 100755
|
||||
index 3e930df8db..25e06a42f6 100755
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -1015,6 +1015,7 @@ class SaltDistribution(distutils.dist.Distribution):
|
||||
'scripts/salt-key',
|
||||
@@ -1051,6 +1051,7 @@ class SaltDistribution(distutils.dist.Distribution):
|
||||
'scripts/salt-master',
|
||||
'scripts/salt-minion',
|
||||
'scripts/salt-proxy',
|
||||
+ 'scripts/salt-support',
|
||||
'scripts/salt-ssh',
|
||||
'scripts/salt-syndic',
|
||||
'scripts/salt-unity',
|
||||
@@ -1052,6 +1053,7 @@ class SaltDistribution(distutils.dist.Distribution):
|
||||
@@ -1086,6 +1087,7 @@ class SaltDistribution(distutils.dist.Distribution):
|
||||
'salt-key = salt.scripts:salt_key',
|
||||
'salt-master = salt.scripts:salt_master',
|
||||
'salt-minion = salt.scripts:salt_minion',
|
||||
@ -1991,6 +1991,6 @@ index 0000000000..85ea957d79
|
||||
+ assert jobs_trace['jobs-details'][0]['run:jobs.list_job']['info'] == 'Details on JID 0000'
|
||||
+ assert jobs_trace['jobs-details'][0]['run:jobs.list_job']['args'] == [0]
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d937d1edb837bc084c1eaa320e8433382135e2d9 Mon Sep 17 00:00:00 2001
|
||||
From 7482f815a80c2c789bc09e2c72c522e6eb091fa3 Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Meister <mmeister@suse.de>
|
||||
Date: Thu, 3 May 2018 15:52:23 +0200
|
||||
Subject: [PATCH] enable passing a unix_socket for mysql returners
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Maximilian Meister <mmeister@suse.de>
|
||||
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/salt/returners/mysql.py b/salt/returners/mysql.py
|
||||
index 85892cb06c..a286731d5c 100644
|
||||
index fbaaacfe0d..06b249e664 100644
|
||||
--- a/salt/returners/mysql.py
|
||||
+++ b/salt/returners/mysql.py
|
||||
@@ -18,6 +18,7 @@ config. These are the defaults:
|
||||
@ -69,6 +69,6 @@ index 85892cb06c..a286731d5c 100644
|
||||
try:
|
||||
__context__['mysql_returner_conn'] = conn
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d3b2f157643845d2659a226ba72ce24ce1d2a73d Mon Sep 17 00:00:00 2001
|
||||
From 37a3628e3a3cd2d1f18e7834a151efab21b10433 Mon Sep 17 00:00:00 2001
|
||||
From: Maximilian Meister <mmeister@suse.de>
|
||||
Date: Thu, 5 Apr 2018 13:23:23 +0200
|
||||
Subject: [PATCH] fall back to PyMySQL
|
||||
@ -11,7 +11,7 @@ Signed-off-by: Maximilian Meister <mmeister@suse.de>
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/mysql.py b/salt/modules/mysql.py
|
||||
index de8916f4f2..64c773f40a 100644
|
||||
index 94f4b4acce..7e8e6026b3 100644
|
||||
--- a/salt/modules/mysql.py
|
||||
+++ b/salt/modules/mysql.py
|
||||
@@ -58,7 +58,7 @@ try:
|
||||
@ -33,6 +33,6 @@ index de8916f4f2..64c773f40a 100644
|
||||
MySQLdb = None
|
||||
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 329f90fcde205237545cd623f55f0f6c228bf893 Mon Sep 17 00:00:00 2001
|
||||
From 3812df3a2776e745160ef406dae85aa8acdf2333 Mon Sep 17 00:00:00 2001
|
||||
From: Alberto Planas <aplanas@gmail.com>
|
||||
Date: Fri, 25 Oct 2019 15:43:16 +0200
|
||||
Subject: [PATCH] Fix a wrong rebase in test_core.py (#180)
|
||||
@ -17,15 +17,15 @@ This patch ignore this kind of issue during the grains creation.
|
||||
|
||||
(cherry picked from commit bd0213bae00b737b24795bec3c030ebfe476e0d8)
|
||||
---
|
||||
salt/grains/core.py | 4 +--
|
||||
tests/unit/grains/test_core.py | 45 ----------------------------------
|
||||
salt/grains/core.py | 4 ++--
|
||||
tests/unit/grains/test_core.py | 45 ------------------------------------------
|
||||
2 files changed, 2 insertions(+), 47 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index fdabe484a8..bf54c54553 100644
|
||||
index 6b1f2d2223..31ed8a77aa 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -989,7 +989,7 @@ def _virtual(osdata):
|
||||
@@ -990,7 +990,7 @@ def _virtual(osdata):
|
||||
except UnicodeDecodeError:
|
||||
# Some firmwares provide non-valid 'product_name'
|
||||
# files, ignore them
|
||||
@ -34,7 +34,7 @@ index fdabe484a8..bf54c54553 100644
|
||||
except IOError:
|
||||
pass
|
||||
elif osdata['kernel'] == 'FreeBSD':
|
||||
@@ -2490,7 +2490,7 @@ def _hw_data(osdata):
|
||||
@@ -2545,7 +2545,7 @@ def _hw_data(osdata):
|
||||
except UnicodeDecodeError:
|
||||
# Some firmwares provide non-valid 'product_name'
|
||||
# files, ignore them
|
||||
@ -44,10 +44,10 @@ index fdabe484a8..bf54c54553 100644
|
||||
# PermissionError is new to Python 3, but corresponds to the EACESS and
|
||||
# EPERM error numbers. Use those instead here for PY2 compatibility.
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index aa04a7a7ac..889fb90074 100644
|
||||
index 7153a078f4..09e197a2e4 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -1117,51 +1117,6 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -1317,51 +1317,6 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'uuid': ''
|
||||
})
|
||||
|
||||
@ -100,6 +100,6 @@ index aa04a7a7ac..889fb90074 100644
|
||||
@skipIf(six.PY2, 'UnicodeDecodeError is throw in Python 3')
|
||||
@patch('os.path.exists')
|
||||
--
|
||||
2.23.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From f667d6f0534498e2aaa6e46242727bafc13241fd Mon Sep 17 00:00:00 2001
|
||||
From db65ebf356238c151af7798ed34684847ed4a5c0 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Wed, 31 Jul 2019 15:29:03 +0200
|
||||
Subject: [PATCH] Fix aptpkg systemd call (bsc#1143301)
|
||||
@ -35,6 +35,6 @@ index 580b840197..06f3a9f6aa 100644
|
||||
|
||||
def test_call_apt_with_kwargs(self):
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2dcee9c2773f588cc5ca040b1d22c1e8036dcbf7 Mon Sep 17 00:00:00 2001
|
||||
From 2fe38d075efce89dd94c1088ab8c97656e589c8f Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Tue, 7 May 2019 12:24:35 +0200
|
||||
Subject: [PATCH] Fix async-batch multiple done events
|
||||
@ -133,6 +133,6 @@ index d519157d92..441f9c58b9 100644
|
||||
+ self.batch.schedule_next()
|
||||
+ self.assertEqual(len(self.batch.event.io_loop.call_later.mock_calls), 0)
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
From 33c5e10c2912f584243d29c764c2c6cca86edf4a Mon Sep 17 00:00:00 2001
|
||||
From 2c1311f544950fe417fb8609aa3a30da32656637 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Thu, 11 Apr 2019 15:57:59 +0200
|
||||
Subject: [PATCH] Fix async batch race conditions
|
||||
|
||||
Close batching when there is no next batch
|
||||
---
|
||||
salt/cli/batch_async.py | 80 +++++++++++++++---------------
|
||||
tests/unit/cli/test_batch_async.py | 35 ++++++-------
|
||||
salt/cli/batch_async.py | 80 +++++++++++++++++++-------------------
|
||||
tests/unit/cli/test_batch_async.py | 35 +++++++----------
|
||||
2 files changed, 54 insertions(+), 61 deletions(-)
|
||||
|
||||
diff --git a/salt/cli/batch_async.py b/salt/cli/batch_async.py
|
||||
@ -248,6 +248,6 @@ index f65b6a06c3..d519157d92 100644
|
||||
|
||||
@tornado.testing.gen_test
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 30a4053231cf67f486ca1f430dce563f7247d963 Mon Sep 17 00:00:00 2001
|
||||
From bff330bce4b6e8a848400417c5858ece1dc7b5cf Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Thu, 14 Dec 2017 16:21:40 +0100
|
||||
Subject: [PATCH] Fix bsc#1065792
|
||||
@ -8,7 +8,7 @@ Subject: [PATCH] Fix bsc#1065792
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/salt/states/service.py b/salt/states/service.py
|
||||
index c5bf3f2d54..a5ec426ec4 100644
|
||||
index a0e553ead9..1fdcf126ff 100644
|
||||
--- a/salt/states/service.py
|
||||
+++ b/salt/states/service.py
|
||||
@@ -80,6 +80,7 @@ def __virtual__():
|
||||
@ -20,6 +20,6 @@ index c5bf3f2d54..a5ec426ec4 100644
|
||||
return __virtualname__
|
||||
else:
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8378bb24a5a53973e8dba7658b8b3465d967329f Mon Sep 17 00:00:00 2001
|
||||
From 927cef6dfa547bf2410740a8c8b41a97492510f0 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Fri, 4 Oct 2019 15:00:50 +0100
|
||||
@ -6,7 +6,7 @@ Subject: [PATCH] Fix failing unit tests for batch async
|
||||
|
||||
---
|
||||
salt/cli/batch_async.py | 2 +-
|
||||
tests/unit/cli/test_batch_async.py | 57 +++++++++++++++++-------------
|
||||
tests/unit/cli/test_batch_async.py | 57 ++++++++++++++++++++++----------------
|
||||
2 files changed, 34 insertions(+), 25 deletions(-)
|
||||
|
||||
diff --git a/salt/cli/batch_async.py b/salt/cli/batch_async.py
|
||||
@ -180,6 +180,6 @@ index 441f9c58b9..12dfe543bc 100644
|
||||
- self.assertEqual(len(self.batch.event.io_loop.call_later.mock_calls), 0)
|
||||
+ self.assertEqual(len(self.batch.event.io_loop.spawn_callback.mock_calls), 0)
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
31
fix-for-log-checking-in-x509-test.patch
Normal file
31
fix-for-log-checking-in-x509-test.patch
Normal file
@ -0,0 +1,31 @@
|
||||
From f114484307a2b8a3cf72bef28febe44e73b498ed Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Thu, 28 Nov 2019 15:23:36 +0100
|
||||
Subject: [PATCH] Fix for log checking in x509 test
|
||||
|
||||
We are logging in debug and not in trace mode here.
|
||||
---
|
||||
tests/unit/modules/test_x509.py | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/tests/unit/modules/test_x509.py b/tests/unit/modules/test_x509.py
|
||||
index 7030f96484..143abe82bf 100644
|
||||
--- a/tests/unit/modules/test_x509.py
|
||||
+++ b/tests/unit/modules/test_x509.py
|
||||
@@ -71,9 +71,9 @@ class X509TestCase(TestCase, LoaderModuleMockMixin):
|
||||
|
||||
subj = FakeSubject()
|
||||
x509._parse_subject(subj)
|
||||
- assert x509.log.trace.call_args[0][0] == "Missing attribute '%s'. Error: %s"
|
||||
- assert x509.log.trace.call_args[0][1] == list(subj.nid.keys())[0]
|
||||
- assert isinstance(x509.log.trace.call_args[0][2], TypeError)
|
||||
+ assert x509.log.debug.call_args[0][0] == "Missing attribute '%s'. Error: %s"
|
||||
+ assert x509.log.debug.call_args[0][1] == list(subj.nid.keys())[0]
|
||||
+ assert isinstance(x509.log.debug.call_args[0][2], TypeError)
|
||||
|
||||
@skipIf(not HAS_M2CRYPTO, 'Skipping, M2Crypto is unavailble')
|
||||
def test_get_pem_entry(self):
|
||||
--
|
||||
2.16.4
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7e4c53ab89927b6b700603a74131da318c93b957 Mon Sep 17 00:00:00 2001
|
||||
From 56dde3e54715bd488e4110955ca066d9661512bf Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Fri, 25 Oct 2019 16:18:58 +0200
|
||||
Subject: [PATCH] Fix for older mock module
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 616750ad4b2b2b8d55d19b81500dbd4f0aba1f74 Mon Sep 17 00:00:00 2001
|
||||
From 0c16dd5a3c7bef0fe980ac8517f099a8e034c6c9 Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Thu, 6 Sep 2018 17:15:18 +0200
|
||||
Subject: [PATCH] Fix for SUSE Expanded Support detection
|
||||
@ -14,10 +14,10 @@ This change also adds a check for redhat-release and then marks the
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index f0f1bd17c4..b2c1d475b0 100644
|
||||
index 04c1ae91b5..82cd3fb657 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -1821,6 +1821,15 @@ def os_data():
|
||||
@@ -1873,6 +1873,15 @@ def os_data():
|
||||
log.trace('Parsing distrib info from /etc/centos-release')
|
||||
# CentOS Linux
|
||||
grains['lsb_distrib_id'] = 'CentOS'
|
||||
@ -34,6 +34,6 @@ index f0f1bd17c4..b2c1d475b0 100644
|
||||
for line in ifile:
|
||||
# Need to pull out the version and codename
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 6747243babde058762428f9bdb0e3ef16402eadd Mon Sep 17 00:00:00 2001
|
||||
From 31b9186f48ac37e2b814b8db61ec1d5a5868659f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Tue, 6 Nov 2018 16:38:54 +0000
|
||||
@ -11,14 +11,14 @@ Test git ext_pillar across multiple repos using __env__
|
||||
|
||||
Remove unicode references
|
||||
---
|
||||
tests/integration/pillar/test_git_pillar.py | 45 +++++++++++++++++++++
|
||||
tests/integration/pillar/test_git_pillar.py | 45 +++++++++++++++++++++++++++++
|
||||
1 file changed, 45 insertions(+)
|
||||
|
||||
diff --git a/tests/integration/pillar/test_git_pillar.py b/tests/integration/pillar/test_git_pillar.py
|
||||
index 5d9a374f6e..4a9553d1a1 100644
|
||||
index 9ade88840b..ab3b1a89cf 100644
|
||||
--- a/tests/integration/pillar/test_git_pillar.py
|
||||
+++ b/tests/integration/pillar/test_git_pillar.py
|
||||
@@ -1361,6 +1361,51 @@ class TestPygit2SSH(GitPillarSSHTestBase):
|
||||
@@ -1388,6 +1388,51 @@ class TestPygit2SSH(GitPillarSSHTestBase):
|
||||
'nested_dict': {'master': True}}}
|
||||
)
|
||||
|
||||
@ -71,6 +71,6 @@ index 5d9a374f6e..4a9553d1a1 100644
|
||||
def test_root_parameter(self, grains):
|
||||
'''
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b6d47a2ca7f1bed902dfc6574e6fe91d3034aa29 Mon Sep 17 00:00:00 2001
|
||||
From 682964fe1cb3fc859eb72da524beaeb2a85ff610 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 28 Sep 2018 15:22:33 +0200
|
||||
Subject: [PATCH] Fix IPv6 scope (bsc#1108557)
|
||||
@ -69,11 +69,11 @@ Lintfix: W0611
|
||||
|
||||
Reverse skipping tests: if no ipaddress
|
||||
---
|
||||
salt/_compat.py | 74 +++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
salt/_compat.py | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 74 insertions(+)
|
||||
|
||||
diff --git a/salt/_compat.py b/salt/_compat.py
|
||||
index c10b82c0c2..8628833dcf 100644
|
||||
index ed6f4a38ea..61842b4bf3 100644
|
||||
--- a/salt/_compat.py
|
||||
+++ b/salt/_compat.py
|
||||
@@ -229,7 +229,81 @@ class IPv6InterfaceScoped(ipaddress.IPv6Interface, IPv6AddressScoped):
|
||||
@ -159,6 +159,6 @@ index c10b82c0c2..8628833dcf 100644
|
||||
+ ipaddress.ip_address = ip_address
|
||||
+ ipaddress.ip_interface = ip_interface
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3be2bb0043f15af468f1db33b1aa1cc6f2e5797d Mon Sep 17 00:00:00 2001
|
||||
From f81e6022b51b10406e52401fc75d7ef1ae93c55d Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Wed, 9 Jan 2019 16:08:19 +0100
|
||||
Subject: [PATCH] Fix issue #2068 test
|
||||
@ -13,7 +13,7 @@ Minor update: more correct is-dict check.
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/salt/state.py b/salt/state.py
|
||||
index 91985c8edc..01ec1faf8b 100644
|
||||
index c3119b6a33..6af1b89037 100644
|
||||
--- a/salt/state.py
|
||||
+++ b/salt/state.py
|
||||
@@ -25,6 +25,7 @@ import traceback
|
||||
@ -47,6 +47,6 @@ index 91985c8edc..01ec1faf8b 100644
|
||||
def call_high(self, high, orchestration_jid=None):
|
||||
'''
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8941de5a64b6330c6a814059e6e337f7ad3aa6cd Mon Sep 17 00:00:00 2001
|
||||
From d6432f9ebaba32f75a476a6d4a2989d54d149731 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Mon, 16 Sep 2019 11:27:30 +0200
|
||||
Subject: [PATCH] Fix memory leak produced by batch async find_jobs
|
||||
@ -16,7 +16,7 @@ Multiple fixes:
|
||||
|
||||
Co-authored-by: Pablo Suárez Hernández <psuarezhernandez@suse.com>
|
||||
---
|
||||
salt/cli/batch_async.py | 60 +++++++++++++++++++++++++++--------------
|
||||
salt/cli/batch_async.py | 60 ++++++++++++++++++++++++++++++++-----------------
|
||||
salt/client/__init__.py | 1 +
|
||||
salt/master.py | 1 -
|
||||
3 files changed, 41 insertions(+), 21 deletions(-)
|
||||
@ -165,10 +165,10 @@ index aff354a021..0bb6d2b111 100644
|
||||
|
||||
# if kwargs are passed, pack them.
|
||||
diff --git a/salt/master.py b/salt/master.py
|
||||
index f08c126280..0e4bba0505 100644
|
||||
index ee968410f7..224725a1ba 100644
|
||||
--- a/salt/master.py
|
||||
+++ b/salt/master.py
|
||||
@@ -2043,7 +2043,6 @@ class ClearFuncs(object):
|
||||
@@ -2044,7 +2044,6 @@ class ClearFuncs(object):
|
||||
def publish_batch(self, clear_load, minions, missing):
|
||||
batch_load = {}
|
||||
batch_load.update(clear_load)
|
||||
@ -177,6 +177,6 @@ index f08c126280..0e4bba0505 100644
|
||||
self.local.opts,
|
||||
functools.partial(self._prep_jid, clear_load, {}),
|
||||
--
|
||||
2.23.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,26 +0,0 @@
|
||||
From 0b15fe1ecc3ed468714a5a8d84787ab23ac6144e Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Thu, 2 May 2019 10:50:17 +0200
|
||||
Subject: [PATCH] Fix syndic start issue
|
||||
|
||||
---
|
||||
salt/utils/event.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/utils/event.py b/salt/utils/event.py
|
||||
index d2700bd2a0..160cba9bde 100644
|
||||
--- a/salt/utils/event.py
|
||||
+++ b/salt/utils/event.py
|
||||
@@ -879,7 +879,7 @@ class SaltEvent(object):
|
||||
self.subscriber.callbacks.add(event_handler)
|
||||
if not self.subscriber.reading:
|
||||
# This will handle reconnects
|
||||
- self.subscriber.read_async()
|
||||
+ return self.subscriber.read_async()
|
||||
|
||||
def __del__(self):
|
||||
# skip exceptions in destroy-- since destroy() doesn't cover interpreter
|
||||
--
|
||||
2.20.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7ffa39cd80393f2a3ed5cd75793b134b9d939cf9 Mon Sep 17 00:00:00 2001
|
||||
From 91a864f7613927e47b9271bf0f947cf96a3bbfbf Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Thu, 11 Oct 2018 16:20:40 +0200
|
||||
Subject: [PATCH] Fix unit test for grains core
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] Fix unit test for grains core
|
||||
1 file changed, 5 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index 2ab32ef41b..4923ee00b0 100644
|
||||
index 8c45ee194a..c85225e959 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -62,11 +62,10 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -68,11 +68,10 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
def test_parse_etc_os_release(self, path_isfile_mock):
|
||||
path_isfile_mock.side_effect = lambda x: x == "/usr/lib/os-release"
|
||||
with salt.utils.files.fopen(os.path.join(OS_RELEASE_DIR, "ubuntu-17.10")) as os_release_file:
|
||||
@ -27,7 +27,7 @@ index 2ab32ef41b..4923ee00b0 100644
|
||||
self.assertEqual(os_release, {
|
||||
"NAME": "Ubuntu",
|
||||
"VERSION": "17.10 (Artful Aardvark)",
|
||||
@@ -128,7 +127,7 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -134,7 +133,7 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
|
||||
def test_missing_os_release(self):
|
||||
with patch('salt.utils.files.fopen', mock_open(read_data={})):
|
||||
@ -35,8 +35,8 @@ index 2ab32ef41b..4923ee00b0 100644
|
||||
+ os_release = core._parse_os_release(['/etc/os-release', '/usr/lib/os-release'])
|
||||
self.assertEqual(os_release, {})
|
||||
|
||||
@skipIf(not salt.utils.platform.is_linux(), 'System is not Linux')
|
||||
@skipIf(not salt.utils.platform.is_windows(), 'System is not Windows')
|
||||
--
|
||||
2.19.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 4ce0bc544174fdb00482db4653fb4b0ef411e78b Mon Sep 17 00:00:00 2001
|
||||
From ab55daa8b642f7b7fde589f971bb078eea098059 Mon Sep 17 00:00:00 2001
|
||||
From: Cedric Bosdonnat <cbosdonnat@suse.com>
|
||||
Date: Tue, 3 Sep 2019 15:18:04 +0200
|
||||
Subject: [PATCH] Fix virt.full_info (#176)
|
||||
@ -45,7 +45,7 @@ already used like by a running VM. Using the qemu-img -U flag gets it
|
||||
running in all cases.
|
||||
---
|
||||
salt/modules/virt.py | 10 +-
|
||||
tests/unit/modules/test_virt.py | 242 +++++++++++++++++---------------
|
||||
tests/unit/modules/test_virt.py | 242 +++++++++++++++++++++-------------------
|
||||
2 files changed, 132 insertions(+), 120 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
@ -369,6 +369,6 @@ index e644e62452..4d20e998d8 100644
|
||||
+ self.assertEqual('5900', graphics['port'])
|
||||
+ self.assertEqual('0.0.0.0', graphics['listen'])
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8c4066c668147b1180c56f39722d2ade78ffd41c Mon Sep 17 00:00:00 2001
|
||||
From 10c3c47a4c6ae173e2831d4256b8d8af6b33cf5a Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Thu, 13 Jun 2019 17:48:55 +0200
|
||||
Subject: [PATCH] Fix zypper pkg.list_pkgs expectation and dpkg mocking
|
||||
@ -52,6 +52,6 @@ index 5c5091a570..a7063e47c6 100644
|
||||
'release': '1.1',
|
||||
'arch': 'i586',
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3b5803d31a93d2f619246d48691f52f6c65d52ee Mon Sep 17 00:00:00 2001
|
||||
From 3b85fa4cadc10881f2408e95700f7a6dae35ce21 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 25 Jun 2018 13:06:40 +0100
|
||||
@ -53,6 +53,6 @@ index 2034262b23..0aca1e0af8 100644
|
||||
cver = new_pkgs.get(pkgname)
|
||||
if not cver and pkgname in new_caps:
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b10ca8ee857e14915ac83a8614521495b42b5d2b Mon Sep 17 00:00:00 2001
|
||||
From b9185139c688999c10ed90ca96120c6dad597666 Mon Sep 17 00:00:00 2001
|
||||
From: Erik Johnson <palehose@gmail.com>
|
||||
Date: Fri, 24 Aug 2018 10:35:55 -0500
|
||||
Subject: [PATCH] Fixes: CVE-2018-15750, CVE-2018-15751
|
||||
@ -16,7 +16,7 @@ Update tornado test to correct authentication message
|
||||
2 files changed, 2 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/salt/netapi/rest_cherrypy/app.py b/salt/netapi/rest_cherrypy/app.py
|
||||
index 40ee976b25..f9ca908115 100644
|
||||
index 82615afb29..d230d822cd 100644
|
||||
--- a/salt/netapi/rest_cherrypy/app.py
|
||||
+++ b/salt/netapi/rest_cherrypy/app.py
|
||||
@@ -1174,13 +1174,6 @@ class LowDataAdapter(object):
|
||||
@ -34,10 +34,10 @@ index 40ee976b25..f9ca908115 100644
|
||||
chunk['client'] = client
|
||||
|
||||
diff --git a/tests/integration/netapi/rest_tornado/test_app.py b/tests/integration/netapi/rest_tornado/test_app.py
|
||||
index a6829bdd4f..da96012b41 100644
|
||||
index 2c348a679d..40cf1ce580 100644
|
||||
--- a/tests/integration/netapi/rest_tornado/test_app.py
|
||||
+++ b/tests/integration/netapi/rest_tornado/test_app.py
|
||||
@@ -240,8 +240,8 @@ class TestSaltAPIHandler(_SaltnadoIntegrationTestCase):
|
||||
@@ -276,8 +276,8 @@ class TestSaltAPIHandler(_SaltnadoIntegrationTestCase):
|
||||
self.assertIn('jid', ret[0]) # the first 2 are regular returns
|
||||
self.assertIn('jid', ret[1])
|
||||
self.assertIn('Failed to authenticate', ret[2]) # bad auth
|
||||
@ -49,6 +49,6 @@ index a6829bdd4f..da96012b41 100644
|
||||
def test_simple_local_async_post_no_tgt(self):
|
||||
low = [{'client': 'local_async',
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 11c9eacc439697e9fa7b30918963e4736333ed36 Mon Sep 17 00:00:00 2001
|
||||
From 9fc2217cd12d313f87d4db0e408e5b68b23c2330 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Wed, 14 Nov 2018 17:36:23 +0100
|
||||
Subject: [PATCH] Get os_arch also without RPM package installed
|
||||
@ -17,8 +17,8 @@ Add UT for OS arch detection when no CPU arch or machine can be determined
|
||||
|
||||
Remove unsupported testcase
|
||||
---
|
||||
salt/utils/pkg/rpm.py | 18 ++++--
|
||||
tests/unit/utils/test_pkg.py | 105 ++++++++++++++++++++++-------------
|
||||
salt/utils/pkg/rpm.py | 18 +++++---
|
||||
tests/unit/utils/test_pkg.py | 105 ++++++++++++++++++++++++++-----------------
|
||||
2 files changed, 77 insertions(+), 46 deletions(-)
|
||||
|
||||
diff --git a/salt/utils/pkg/rpm.py b/salt/utils/pkg/rpm.py
|
||||
@ -176,6 +176,6 @@ index c293852058..361e0bf92f 100644
|
||||
+ '''
|
||||
+ assert rpm.get_osarch() == 'unknown'
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 76d0ec5ec0764f6c5e71ddc2dc03bd12c25045a0 Mon Sep 17 00:00:00 2001
|
||||
From a94e1316565a30e166a5a846404fd2c2bd85e2ca Mon Sep 17 00:00:00 2001
|
||||
From: EricS <54029547+ESiebigteroth@users.noreply.github.com>
|
||||
Date: Tue, 3 Sep 2019 11:22:53 +0200
|
||||
Subject: [PATCH] Implement network.fqdns module function (bsc#1134860)
|
||||
@ -12,20 +12,20 @@ Subject: [PATCH] Implement network.fqdns module function (bsc#1134860)
|
||||
|
||||
Co-authored-by: Eric Siebigteroth <eric.siebigteroth@suse.de>
|
||||
---
|
||||
salt/grains/core.py | 66 +++++-----------------------------
|
||||
salt/modules/network.py | 60 +++++++++++++++++++++++++++++++
|
||||
salt/utils/network.py | 12 +++++++
|
||||
tests/unit/grains/test_core.py | 64 ++++++++++++++++++++++++++-------
|
||||
salt/grains/core.py | 66 +++++-------------------------------------
|
||||
salt/modules/network.py | 60 ++++++++++++++++++++++++++++++++++++++
|
||||
salt/utils/network.py | 12 ++++++++
|
||||
tests/unit/grains/test_core.py | 64 +++++++++++++++++++++++++++++++---------
|
||||
4 files changed, 131 insertions(+), 71 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index e54212edfb..fa188a6ff7 100644
|
||||
index 30eba0ce99..e1d08b76cf 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -25,8 +25,9 @@ import zlib
|
||||
from errno import EACCES, EPERM
|
||||
@@ -26,8 +26,9 @@ from errno import EACCES, EPERM
|
||||
import datetime
|
||||
import warnings
|
||||
import time
|
||||
+import salt.modules.network
|
||||
|
||||
-from multiprocessing.pool import ThreadPool
|
||||
@ -33,7 +33,7 @@ index e54212edfb..fa188a6ff7 100644
|
||||
|
||||
# pylint: disable=import-error
|
||||
try:
|
||||
@@ -83,6 +84,7 @@ __salt__ = {
|
||||
@@ -84,6 +85,7 @@ __salt__ = {
|
||||
'cmd.run_all': salt.modules.cmdmod._run_all_quiet,
|
||||
'smbios.records': salt.modules.smbios.records,
|
||||
'smbios.get': salt.modules.smbios.get,
|
||||
@ -41,7 +41,7 @@ index e54212edfb..fa188a6ff7 100644
|
||||
}
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
@@ -106,7 +108,6 @@ HAS_UNAME = True
|
||||
@@ -107,7 +109,6 @@ HAS_UNAME = True
|
||||
if not hasattr(os, 'uname'):
|
||||
HAS_UNAME = False
|
||||
|
||||
@ -49,7 +49,7 @@ index e54212edfb..fa188a6ff7 100644
|
||||
|
||||
# Possible value for h_errno defined in netdb.h
|
||||
HOST_NOT_FOUND = 1
|
||||
@@ -1506,17 +1507,6 @@ def _linux_bin_exists(binary):
|
||||
@@ -1538,17 +1539,6 @@ def _linux_bin_exists(binary):
|
||||
return False
|
||||
|
||||
|
||||
@ -67,7 +67,7 @@ index e54212edfb..fa188a6ff7 100644
|
||||
def _parse_lsb_release():
|
||||
ret = {}
|
||||
try:
|
||||
@@ -2200,52 +2190,12 @@ def fqdns():
|
||||
@@ -2255,52 +2245,12 @@ def fqdns():
|
||||
'''
|
||||
Return all known FQDNs for the system by enumerating all interfaces and
|
||||
then trying to reverse resolve them (excluding 'lo' interface).
|
||||
@ -88,9 +88,9 @@ index e54212edfb..fa188a6ff7 100644
|
||||
- # No FQDN for this IP address, so we don't need to know this all the time.
|
||||
- log.debug("Unable to resolve address %s: %s", ip, err)
|
||||
- else:
|
||||
- log.error(err_message, err)
|
||||
- log.error(err_message, ip, err)
|
||||
- except (socket.error, socket.gaierror, socket.timeout) as err:
|
||||
- log.error(err_message, err)
|
||||
- log.error(err_message, ip, err)
|
||||
-
|
||||
- start = time.time()
|
||||
-
|
||||
@ -126,7 +126,7 @@ index e54212edfb..fa188a6ff7 100644
|
||||
|
||||
def ip_fqdn():
|
||||
diff --git a/salt/modules/network.py b/salt/modules/network.py
|
||||
index 28bcff1622..5b6ac930ea 100644
|
||||
index 8b4dfcead4..2f1b1c09e0 100644
|
||||
--- a/salt/modules/network.py
|
||||
+++ b/salt/modules/network.py
|
||||
@@ -11,6 +11,10 @@ import logging
|
||||
@ -140,7 +140,7 @@ index 28bcff1622..5b6ac930ea 100644
|
||||
|
||||
# Import salt libs
|
||||
import salt.utils.decorators.path
|
||||
@@ -1881,3 +1885,59 @@ def iphexval(ip):
|
||||
@@ -1887,3 +1891,59 @@ def iphexval(ip):
|
||||
a = ip.split('.')
|
||||
hexval = ['%02X' % int(x) for x in a] # pylint: disable=E1321
|
||||
return ''.join(hexval)
|
||||
@ -202,7 +202,7 @@ index 28bcff1622..5b6ac930ea 100644
|
||||
+ return {"fqdns": sorted(list(fqdns))}
|
||||
\ No newline at end of file
|
||||
diff --git a/salt/utils/network.py b/salt/utils/network.py
|
||||
index 3f0522b9a5..942adf1ca4 100644
|
||||
index a3fd6e848e..3c8178eeb4 100644
|
||||
--- a/salt/utils/network.py
|
||||
+++ b/salt/utils/network.py
|
||||
@@ -55,6 +55,18 @@ except (ImportError, OSError, AttributeError, TypeError):
|
||||
@ -225,10 +225,10 @@ index 3f0522b9a5..942adf1ca4 100644
|
||||
'''
|
||||
Sanitize host string.
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index 5fa0ea06f1..889fb90074 100644
|
||||
index af9d27dd0e..09e197a2e4 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -33,6 +33,7 @@ import salt.utils.network
|
||||
@@ -34,6 +34,7 @@ import salt.utils.network
|
||||
import salt.utils.platform
|
||||
import salt.utils.path
|
||||
import salt.grains.core as core
|
||||
@ -236,7 +236,7 @@ index 5fa0ea06f1..889fb90074 100644
|
||||
|
||||
# Import 3rd-party libs
|
||||
from salt.ext import six
|
||||
@@ -845,6 +846,40 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -976,6 +977,40 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
with patch.object(salt.utils.dns, 'parse_resolv', MagicMock(return_value=resolv_mock)):
|
||||
assert core.dns() == ret
|
||||
|
||||
@ -277,7 +277,7 @@ index 5fa0ea06f1..889fb90074 100644
|
||||
@skipIf(not salt.utils.platform.is_linux(), 'System is not Linux')
|
||||
@patch.object(salt.utils, 'is_windows', MagicMock(return_value=False))
|
||||
@patch('salt.utils.network.ip_addrs', MagicMock(return_value=['1.2.3.4', '5.6.7.8']))
|
||||
@@ -861,11 +896,12 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -992,11 +1027,12 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
('foo.bar.baz', [], ['fe80::a8b2:93ff:fe00:0']),
|
||||
('bluesniff.foo.bar', [], ['fe80::a8b2:93ff:dead:beef'])]
|
||||
ret = {'fqdns': ['bluesniff.foo.bar', 'foo.bar.baz', 'rinzler.evil-corp.com']}
|
||||
@ -295,7 +295,7 @@ index 5fa0ea06f1..889fb90074 100644
|
||||
|
||||
@skipIf(not salt.utils.platform.is_linux(), 'System is not Linux')
|
||||
@patch.object(salt.utils.platform, 'is_windows', MagicMock(return_value=False))
|
||||
@@ -881,14 +917,16 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -1012,14 +1048,16 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
('rinzler.evil-corp.com', ["false-hostname", "badaliass"], ['5.6.7.8']),
|
||||
('foo.bar.baz', [], ['fe80::a8b2:93ff:fe00:0']),
|
||||
('bluesniff.foo.bar', ["alias.bluesniff.foo.bar"], ['fe80::a8b2:93ff:dead:beef'])]
|
||||
@ -321,6 +321,6 @@ index 5fa0ea06f1..889fb90074 100644
|
||||
'''
|
||||
test virtual grain with cmd virt-what
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 002543df392f65d95dbc127dc058ac897f2035ed Mon Sep 17 00:00:00 2001
|
||||
From c54cdb24f09abf990fc23aa35a763c1ec3bd122a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Thu, 26 Sep 2019 10:41:06 +0100
|
||||
@ -6,7 +6,7 @@ Subject: [PATCH] Improve batch_async to release consumed memory
|
||||
(bsc#1140912)
|
||||
|
||||
---
|
||||
salt/cli/batch_async.py | 73 +++++++++++++++++++++++++----------------
|
||||
salt/cli/batch_async.py | 73 ++++++++++++++++++++++++++++++-------------------
|
||||
1 file changed, 45 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/salt/cli/batch_async.py b/salt/cli/batch_async.py
|
||||
@ -185,6 +185,6 @@ index 8a67331102..2bb50459c8 100644
|
||||
+ self.ioloop = None
|
||||
+ gc.collect()
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5dc6f2a59a8a774d13dcfd36b25ea735df18f10f Mon Sep 17 00:00:00 2001
|
||||
From 83fa749ca09eb8eb5eb29aaa30f8565106ee3c65 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Tue, 29 Jan 2019 11:11:38 +0100
|
||||
Subject: [PATCH] Include aliases in the fqdns grains
|
||||
@ -15,17 +15,17 @@ Add UT for fqdns aliases
|
||||
|
||||
Leverage cached interfaces, if any.
|
||||
---
|
||||
salt/grains/core.py | 12 +++++-------
|
||||
salt/grains/core.py | 14 ++++++--------
|
||||
salt/utils/network.py | 12 ++++++++++++
|
||||
tests/unit/grains/test_core.py | 28 +++++++++++++++++++++++++---
|
||||
tests/unit/utils/test_network.py | 19 +++++++++++++++++++
|
||||
4 files changed, 61 insertions(+), 10 deletions(-)
|
||||
4 files changed, 62 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index b0c1acceeb..05a9d5035d 100644
|
||||
index f59eeb5780..7d75d48bb5 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -2200,14 +2200,13 @@ def fqdns():
|
||||
@@ -2255,14 +2255,13 @@ def fqdns():
|
||||
grains = {}
|
||||
fqdns = set()
|
||||
|
||||
@ -33,9 +33,10 @@ index b0c1acceeb..05a9d5035d 100644
|
||||
- interface_data=_INTERFACES)
|
||||
- addresses.extend(salt.utils.network.ip_addrs6(include_loopback=False,
|
||||
- interface_data=_INTERFACES))
|
||||
- err_message = 'An exception occurred resolving address \'%s\': %s'
|
||||
+ addresses = salt.utils.network.ip_addrs(include_loopback=False, interface_data=_get_interfaces())
|
||||
+ addresses.extend(salt.utils.network.ip_addrs6(include_loopback=False, interface_data=_get_interfaces()))
|
||||
err_message = 'Exception during resolving address: %s'
|
||||
+ err_message = 'Exception during resolving address: %s'
|
||||
for ip in addresses:
|
||||
try:
|
||||
- fqdns.add(socket.getfqdn(socket.gethostbyaddr(ip)[0]))
|
||||
@ -44,9 +45,9 @@ index b0c1acceeb..05a9d5035d 100644
|
||||
except socket.herror as err:
|
||||
if err.errno == 0:
|
||||
# No FQDN for this IP address, so we don't need to know this all the time.
|
||||
@@ -2217,8 +2216,7 @@ def fqdns():
|
||||
@@ -2272,8 +2271,7 @@ def fqdns():
|
||||
except (socket.error, socket.gaierror, socket.timeout) as err:
|
||||
log.error(err_message, err)
|
||||
log.error(err_message, ip, err)
|
||||
|
||||
- grains['fqdns'] = sorted(list(fqdns))
|
||||
- return grains
|
||||
@ -55,10 +56,10 @@ index b0c1acceeb..05a9d5035d 100644
|
||||
|
||||
def ip_fqdn():
|
||||
diff --git a/salt/utils/network.py b/salt/utils/network.py
|
||||
index 83269cdcf6..c72d2aec41 100644
|
||||
index d6fc6a98c6..a183c9776a 100644
|
||||
--- a/salt/utils/network.py
|
||||
+++ b/salt/utils/network.py
|
||||
@@ -2016,3 +2016,15 @@ def parse_host_port(host_port):
|
||||
@@ -2007,3 +2007,15 @@ def parse_host_port(host_port):
|
||||
raise ValueError('bad hostname: "{}"'.format(host))
|
||||
|
||||
return host, port
|
||||
@ -75,10 +76,10 @@ index 83269cdcf6..c72d2aec41 100644
|
||||
+ compliant = re.compile(r"(?!-)[A-Z\d\-\_]{1,63}(?<!-)$", re.IGNORECASE)
|
||||
+ return "." in hostname and len(hostname) < 0xff and all(compliant.match(x) for x in hostname.rstrip(".").split("."))
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index d5a1b1a36b..117e02c39f 100644
|
||||
index c85225e959..e43be4939c 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -863,10 +863,32 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -994,10 +994,32 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
ret = {'fqdns': ['bluesniff.foo.bar', 'foo.bar.baz', 'rinzler.evil-corp.com']}
|
||||
with patch.object(socket, 'gethostbyaddr', side_effect=reverse_resolv_mock):
|
||||
fqdns = core.fqdns()
|
||||
@ -115,13 +116,13 @@ index d5a1b1a36b..117e02c39f 100644
|
||||
'''
|
||||
test virtual grain with cmd virt-what
|
||||
diff --git a/tests/unit/utils/test_network.py b/tests/unit/utils/test_network.py
|
||||
index 3d20c880bd..ca627777a7 100644
|
||||
index af5cbbab2b..f4c849d124 100644
|
||||
--- a/tests/unit/utils/test_network.py
|
||||
+++ b/tests/unit/utils/test_network.py
|
||||
@@ -637,3 +637,22 @@ class NetworkTestCase(TestCase):
|
||||
# An exception is raised if unicode is passed to socket.getfqdn
|
||||
minion_id = network.generate_minion_id()
|
||||
assert minion_id != '', minion_id
|
||||
@@ -680,3 +680,22 @@ class NetworkTestCase(TestCase):
|
||||
with patch('subprocess.check_output', return_value=NETLINK_SS):
|
||||
remotes = network._netlink_tool_remote_on('4505', 'remote')
|
||||
self.assertEqual(remotes, set(['127.0.0.1', '::ffff:1.2.3.4']))
|
||||
+
|
||||
+ def test_is_fqdn(self):
|
||||
+ """
|
||||
@ -142,6 +143,6 @@ index 3d20c880bd..ca627777a7 100644
|
||||
+ for fqdn in ["hostname", "/some/path", "$variable.here", "verylonghostname.{}".format("domain" * 45)]:
|
||||
+ assert not network.is_fqdn(fqdn)
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 216342f03940080176111f5e0e31b43cd909e164 Mon Sep 17 00:00:00 2001
|
||||
From 13855ebda730a0a369c9b98d397d62b9d9a67145 Mon Sep 17 00:00:00 2001
|
||||
From: ed lane <ed.lane.0@gmail.com>
|
||||
Date: Thu, 30 Aug 2018 06:07:08 -0600
|
||||
Subject: [PATCH] Integration of MSI authentication with azurearm cloud
|
||||
@ -9,7 +9,7 @@ Subject: [PATCH] Integration of MSI authentication with azurearm cloud
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/cloud/clouds/azurearm.py b/salt/cloud/clouds/azurearm.py
|
||||
index e8050dca16..229412adcd 100644
|
||||
index a422feca4f..9948dedc6c 100644
|
||||
--- a/salt/cloud/clouds/azurearm.py
|
||||
+++ b/salt/cloud/clouds/azurearm.py
|
||||
@@ -58,6 +58,9 @@ The Azure ARM cloud module is used to control access to Microsoft Azure Resource
|
||||
@ -41,6 +41,6 @@ index e8050dca16..229412adcd 100644
|
||||
'client_id',
|
||||
get_configured_provider(), __opts__, search_global=False
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8fe82178247ff3704915b578398ea55b0c6e4fa0 Mon Sep 17 00:00:00 2001
|
||||
From 0cd0d8d50c500f3d8948470c2ecd5344f9c494a5 Mon Sep 17 00:00:00 2001
|
||||
From: Joachim Gleissner <jgleissner@suse.com>
|
||||
Date: Tue, 18 Sep 2018 15:07:13 +0200
|
||||
Subject: [PATCH] loosen azure sdk dependencies in azurearm cloud driver
|
||||
@ -12,7 +12,7 @@ remove unused import from azurearm driver
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/salt/cloud/clouds/azurearm.py b/salt/cloud/clouds/azurearm.py
|
||||
index 229412adcd..ac59467fb3 100644
|
||||
index 9948dedc6c..5f0d4b7e6f 100644
|
||||
--- a/salt/cloud/clouds/azurearm.py
|
||||
+++ b/salt/cloud/clouds/azurearm.py
|
||||
@@ -104,6 +104,7 @@ import time
|
||||
@ -36,6 +36,6 @@ index 229412adcd..ac59467fb3 100644
|
||||
except ImportError:
|
||||
pass
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 350b0aa4ead80ac50047c08121bc09bddc05341d Mon Sep 17 00:00:00 2001
|
||||
From 9e543a835c870eaea424735fb8e52a82480dce90 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Fri, 16 Nov 2018 10:54:12 +0100
|
||||
Subject: [PATCH] Make aptpkg.list_repos compatible on enabled/disabled
|
||||
@ -9,10 +9,10 @@ Subject: [PATCH] Make aptpkg.list_repos compatible on enabled/disabled
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/salt/modules/aptpkg.py b/salt/modules/aptpkg.py
|
||||
index 175ef2ed06..90b99c44b9 100644
|
||||
index ead7c6391e..6b3a921a82 100644
|
||||
--- a/salt/modules/aptpkg.py
|
||||
+++ b/salt/modules/aptpkg.py
|
||||
@@ -1719,6 +1719,7 @@ def list_repos():
|
||||
@@ -1595,6 +1595,7 @@ def list_repos():
|
||||
repo['file'] = source.file
|
||||
repo['comps'] = getattr(source, 'comps', [])
|
||||
repo['disabled'] = source.disabled
|
||||
@ -21,6 +21,6 @@ index 175ef2ed06..90b99c44b9 100644
|
||||
repo['type'] = source.type
|
||||
repo['uri'] = source.uri.rstrip('/')
|
||||
--
|
||||
2.19.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 155aa52dca9272db492990ad737256dada1c4364 Mon Sep 17 00:00:00 2001
|
||||
From 117d2af99095cce3c0ab7222d7333334b73aa971 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Mon, 8 Oct 2018 17:52:07 +0200
|
||||
Subject: [PATCH] Make profiles a package.
|
||||
@ -22,6 +22,6 @@ index 0000000000..b86aef30b8
|
||||
+Profiles for salt-support.
|
||||
+'''
|
||||
--
|
||||
2.19.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,30 +0,0 @@
|
||||
From 215d8d9c8f872b510a1c3fbb19ab4e91bc96bb64 Mon Sep 17 00:00:00 2001
|
||||
From: Alberto Planas <aplanas@gmail.com>
|
||||
Date: Thu, 28 Feb 2019 15:45:28 +0100
|
||||
Subject: [PATCH] mount: fix extra -t parameter
|
||||
|
||||
If 'fstype' parameter is not set in Linux environments, salt will
|
||||
build a mount command with an empty -t value, making the command
|
||||
fail.
|
||||
---
|
||||
salt/modules/mount.py | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/modules/mount.py b/salt/modules/mount.py
|
||||
index 4ba370e5b3..e807b1729e 100644
|
||||
--- a/salt/modules/mount.py
|
||||
+++ b/salt/modules/mount.py
|
||||
@@ -1218,7 +1218,8 @@ def mount(name, device, mkmnt=False, fstype='', opts='defaults', user=None, util
|
||||
if fstype:
|
||||
args += ' -v {0}'.format(fstype)
|
||||
else:
|
||||
- args += ' -t {0}'.format(fstype)
|
||||
+ if fstype:
|
||||
+ args += ' -t {0}'.format(fstype)
|
||||
cmd = 'mount {0} {1} {2} '.format(args, device, name)
|
||||
out = __salt__['cmd.run_all'](cmd, runas=user, python_shell=False)
|
||||
if out['retcode']:
|
||||
--
|
||||
2.20.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From dab9967f8e4a67e5b7ddd4e6718414d2e9b25e42 Mon Sep 17 00:00:00 2001
|
||||
From 10df6dcff22785962dc372064c899b942f3c1ff9 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Fri, 14 Jun 2019 15:13:12 +0200
|
||||
Subject: [PATCH] Move server_id deprecation warning to reduce log
|
||||
@ -10,10 +10,10 @@ Subject: [PATCH] Move server_id deprecation warning to reduce log
|
||||
2 files changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index ce64620a24..e54212edfb 100644
|
||||
index ab37a4dd44..30eba0ce99 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -2812,10 +2812,6 @@ def get_server_id():
|
||||
@@ -2867,10 +2867,6 @@ def get_server_id():
|
||||
if bool(use_crc):
|
||||
id_hash = getattr(zlib, use_crc, zlib.adler32)(__opts__.get('id', '').encode()) & 0xffffffff
|
||||
else:
|
||||
@ -25,10 +25,10 @@ index ce64620a24..e54212edfb 100644
|
||||
server_id = {'server_id': id_hash}
|
||||
|
||||
diff --git a/salt/minion.py b/salt/minion.py
|
||||
index 058b7ef6b8..97f74bf47e 100644
|
||||
index c5f637eaa6..2c0a18604e 100644
|
||||
--- a/salt/minion.py
|
||||
+++ b/salt/minion.py
|
||||
@@ -103,6 +103,7 @@ from salt.utils.odict import OrderedDict
|
||||
@@ -102,6 +102,7 @@ from salt.utils.odict import OrderedDict
|
||||
from salt.utils.process import (default_signals,
|
||||
SignalHandlingMultiprocessingProcess,
|
||||
ProcessManager)
|
||||
@ -36,7 +36,7 @@ index 058b7ef6b8..97f74bf47e 100644
|
||||
from salt.exceptions import (
|
||||
CommandExecutionError,
|
||||
CommandNotFoundError,
|
||||
@@ -992,6 +993,14 @@ class MinionManager(MinionBase):
|
||||
@@ -993,6 +994,14 @@ class MinionManager(MinionBase):
|
||||
if (self.opts['master_type'] in ('failover', 'distributed')) or not isinstance(self.opts['master'], list):
|
||||
masters = [masters]
|
||||
|
||||
@ -48,10 +48,10 @@ index 058b7ef6b8..97f74bf47e 100644
|
||||
+ 'prefer (default "Adler32"). The server_id will be computed with'
|
||||
+ 'Adler32 by default.')
|
||||
+
|
||||
beacons_leader = True
|
||||
for master in masters:
|
||||
s_opts = copy.deepcopy(self.opts)
|
||||
s_opts['master'] = master
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5a1e0b7b8eab900e03fa800cc7a0a2b59bf2ff55 Mon Sep 17 00:00:00 2001
|
||||
From a83a3a01e3bb16ec7bf4463dea1b4770c4b2955c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 3 Jun 2019 11:38:36 +0100
|
||||
@ -10,10 +10,10 @@ Subject: [PATCH] Preserve already defined DESTRUCTIVE_TESTS and
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tests/support/parser/__init__.py b/tests/support/parser/__init__.py
|
||||
index ed262d46c0..f269457670 100644
|
||||
index a188f8945f..2802b20c62 100644
|
||||
--- a/tests/support/parser/__init__.py
|
||||
+++ b/tests/support/parser/__init__.py
|
||||
@@ -574,12 +574,12 @@ class SaltTestingParser(optparse.OptionParser):
|
||||
@@ -598,12 +598,12 @@ class SaltTestingParser(optparse.OptionParser):
|
||||
|
||||
self.validate_options()
|
||||
|
||||
@ -29,6 +29,6 @@ index ed262d46c0..f269457670 100644
|
||||
# expensive tests should be executed or not.
|
||||
os.environ['EXPENSIVE_TESTS'] = str(self.options.run_expensive)
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 318b4e0cd2efb02f26392bfe2d354a3ff5d21cbc Mon Sep 17 00:00:00 2001
|
||||
From ae46bb899f3c7d70af62081b2ae0473f07a2a7b9 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Mon, 15 Oct 2018 17:26:16 +0200
|
||||
Subject: [PATCH] Preserving signature in "module.run" state (U#50049)
|
||||
@ -18,10 +18,10 @@ Replace standalone function with lambda-proxy for signatures only
|
||||
2 files changed, 32 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/states/module.py b/salt/states/module.py
|
||||
index 2190ffa3d2..90b1d0a5f5 100644
|
||||
index 9968529ffd..a6096ba35b 100644
|
||||
--- a/salt/states/module.py
|
||||
+++ b/salt/states/module.py
|
||||
@@ -323,7 +323,7 @@ def _call_function(name, returner=None, **kwargs):
|
||||
@@ -324,7 +324,7 @@ def _call_function(name, returner=None, **kwargs):
|
||||
|
||||
# func_args is initialized to a list of positional arguments that the function to be run accepts
|
||||
func_args = argspec.args[:len(argspec.args or []) - len(argspec.defaults or [])]
|
||||
@ -30,7 +30,7 @@ index 2190ffa3d2..90b1d0a5f5 100644
|
||||
for funcset in reversed(kwargs.get('func_args') or []):
|
||||
if not isinstance(funcset, dict):
|
||||
# We are just receiving a list of args to the function to be run, so just append
|
||||
@@ -334,13 +334,16 @@ def _call_function(name, returner=None, **kwargs):
|
||||
@@ -335,13 +335,16 @@ def _call_function(name, returner=None, **kwargs):
|
||||
# We are going to pass in a keyword argument. The trick here is to make certain
|
||||
# that if we find that in the *args* list that we pass it there and not as a kwarg
|
||||
if kwarg_key in func_args:
|
||||
@ -49,7 +49,7 @@ index 2190ffa3d2..90b1d0a5f5 100644
|
||||
_passed_prm = len(arg_type)
|
||||
missing = []
|
||||
diff --git a/tests/unit/states/test_module.py b/tests/unit/states/test_module.py
|
||||
index bf4ddcc5b4..25082d4bb4 100644
|
||||
index b505e85b90..2aff53eeaf 100644
|
||||
--- a/tests/unit/states/test_module.py
|
||||
+++ b/tests/unit/states/test_module.py
|
||||
@@ -324,3 +324,30 @@ class ModuleStateTest(TestCase, LoaderModuleMockMixin):
|
||||
@ -84,6 +84,6 @@ index bf4ddcc5b4..25082d4bb4 100644
|
||||
+ assert module._call_function('testfunc', func_args=[1, 2, 3]) == (1, 2, 3, (), {})
|
||||
+ assert module._call_function('testfunc', func_args=[3, 1, 2]) == (3, 1, 2, (), {})
|
||||
--
|
||||
2.19.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,27 +0,0 @@
|
||||
From 6c84612b52b5f14e74a1c44f03d78a85c6f0c5dc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Tue, 29 Oct 2019 09:08:52 +0000
|
||||
Subject: [PATCH] Prevent 'Already reading' continuous exception message
|
||||
(bsc#1137642)
|
||||
|
||||
---
|
||||
salt/transport/ipc.py | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/salt/transport/ipc.py b/salt/transport/ipc.py
|
||||
index 8235f104ef..0ed0baeec2 100644
|
||||
--- a/salt/transport/ipc.py
|
||||
+++ b/salt/transport/ipc.py
|
||||
@@ -770,6 +770,7 @@ class IPCMessageSubscriber(IPCClient):
|
||||
break
|
||||
except Exception as exc:
|
||||
log.error('Exception occurred while Subscriber handling stream: %s', exc)
|
||||
+ yield tornado.gen.sleep(1)
|
||||
|
||||
def __run_callbacks(self, raw):
|
||||
for callback in self.callbacks:
|
||||
--
|
||||
2.23.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 84e9371399b50618765038bcec2e313a006eadf9 Mon Sep 17 00:00:00 2001
|
||||
From 32691d82e32dbc70adec03bee214b971c82a73cd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 8 Jul 2019 14:46:10 +0100
|
||||
@ -27,6 +27,6 @@ index 70b47f8bc2..2a24d6f147 100644
|
||||
+ proc.assert_any_call(['echo', '{"ANSIBLE_MODULE_ARGS": {"_raw_params": "arg_1", "kwarg1": "foobar"}}'], stdout=-1, timeout=1200)
|
||||
assert ret == {"completed": True, "timeout": 1200}
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 44a91c2ce6df78d93ce0ef659dedb0e41b1c2e04 Mon Sep 17 00:00:00 2001
|
||||
From 03bf4718a82fe73e54c907bfcf9a315eee07feee Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 30 Sep 2019 12:06:08 +0100
|
||||
@ -37,6 +37,6 @@ index 06f3a9f6aa..85360da181 100644
|
||||
|
||||
def test_call_apt_with_kwargs(self):
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
57
prevent-test_mod_del_repo_multiline_values-to-fail.patch
Normal file
57
prevent-test_mod_del_repo_multiline_values-to-fail.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From 13eaa8b2bb57eb1774b43e2437c5e1fd0de9cb93 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Wed, 27 Nov 2019 15:41:57 +0000
|
||||
Subject: [PATCH] Prevent test_mod_del_repo_multiline_values to fail
|
||||
|
||||
---
|
||||
tests/integration/modules/test_pkg.py | 20 ++++++++++++++------
|
||||
1 file changed, 14 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/tests/integration/modules/test_pkg.py b/tests/integration/modules/test_pkg.py
|
||||
index 7204428eca..9a2cbc7bfc 100644
|
||||
--- a/tests/integration/modules/test_pkg.py
|
||||
+++ b/tests/integration/modules/test_pkg.py
|
||||
@@ -145,6 +145,7 @@ class PkgModuleTest(ModuleCase, SaltReturnAssertsMixin):
|
||||
try:
|
||||
if os_grain in ['CentOS', 'RedHat', 'SUSE']:
|
||||
my_baseurl = 'http://my.fake.repo/foo/bar/\n http://my.fake.repo.alt/foo/bar/'
|
||||
+ expected_get_repo_baseurl_zypp = 'http://my.fake.repo/foo/bar/%0A%20http://my.fake.repo.alt/foo/bar/'
|
||||
expected_get_repo_baseurl = 'http://my.fake.repo/foo/bar/\nhttp://my.fake.repo.alt/foo/bar/'
|
||||
major_release = int(
|
||||
self.run_function(
|
||||
@@ -169,17 +170,24 @@ class PkgModuleTest(ModuleCase, SaltReturnAssertsMixin):
|
||||
enabled=enabled,
|
||||
failovermethod=failovermethod,
|
||||
)
|
||||
- # return data from pkg.mod_repo contains the file modified at
|
||||
- # the top level, so use next(iter(ret)) to get that key
|
||||
self.assertNotEqual(ret, {})
|
||||
- repo_info = ret[next(iter(ret))]
|
||||
+ repo_info = {repo: ret}
|
||||
self.assertIn(repo, repo_info)
|
||||
- self.assertEqual(repo_info[repo]['baseurl'], my_baseurl)
|
||||
+ if os_grain == 'SUSE':
|
||||
+ self.assertEqual(repo_info[repo]['baseurl'], expected_get_repo_baseurl_zypp)
|
||||
+ else:
|
||||
+ self.assertEqual(repo_info[repo]['baseurl'], my_baseurl)
|
||||
ret = self.run_function('pkg.get_repo', [repo])
|
||||
- self.assertEqual(ret['baseurl'], expected_get_repo_baseurl)
|
||||
+ if os_grain == 'SUSE':
|
||||
+ self.assertEqual(repo_info[repo]['baseurl'], expected_get_repo_baseurl_zypp)
|
||||
+ else:
|
||||
+ self.assertEqual(ret['baseurl'], expected_get_repo_baseurl)
|
||||
self.run_function('pkg.mod_repo', [repo])
|
||||
ret = self.run_function('pkg.get_repo', [repo])
|
||||
- self.assertEqual(ret['baseurl'], expected_get_repo_baseurl)
|
||||
+ if os_grain == 'SUSE':
|
||||
+ self.assertEqual(repo_info[repo]['baseurl'], expected_get_repo_baseurl_zypp)
|
||||
+ else:
|
||||
+ self.assertEqual(ret['baseurl'], expected_get_repo_baseurl)
|
||||
finally:
|
||||
if repo is not None:
|
||||
self.run_function('pkg.del_repo', [repo])
|
||||
--
|
||||
2.23.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 121e37f185057f1135ccf89738e3a59c581d9efb Mon Sep 17 00:00:00 2001
|
||||
From d16606a95d316848e15006ef45c11dadfaa0e410 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Thu, 20 Jun 2019 12:52:45 +0100
|
||||
@ -13,67 +13,65 @@ Subject: [PATCH] Provide the missing features required for Yomi (Yet one
|
||||
salt/modules/aixpkg.py | 2 +-
|
||||
salt/modules/apkpkg.py | 12 +-
|
||||
salt/modules/aptpkg.py | 14 +-
|
||||
salt/modules/btrfs.py | 496 ++++++-
|
||||
salt/modules/chroot.py | 165 +++
|
||||
salt/modules/btrfs.py | 496 +++++++++-
|
||||
salt/modules/chroot.py | 165 ++++
|
||||
salt/modules/cmdmod.py | 44 +-
|
||||
salt/modules/disk.py | 26 +-
|
||||
salt/modules/dpkg_lowpkg.py | 6 +-
|
||||
salt/modules/ebuildpkg.py | 8 +-
|
||||
salt/modules/freebsdpkg.py | 6 +-
|
||||
salt/modules/freezer.py | 294 ++++
|
||||
salt/modules/groupadd.py | 177 ++-
|
||||
salt/modules/kubeadm.py | 1265 ++++++++++++++++++
|
||||
salt/modules/freezer.py | 294 ++++++
|
||||
salt/modules/groupadd.py | 177 +++-
|
||||
salt/modules/kubeadm.py | 1265 ++++++++++++++++++++++++++
|
||||
salt/modules/linux_lvm.py | 36 +-
|
||||
salt/modules/mac_brew_pkg.py | 8 +-
|
||||
salt/modules/mac_portspkg.py | 6 +-
|
||||
salt/modules/mdadm_raid.py | 14 +-
|
||||
salt/modules/mount.py | 56 +-
|
||||
salt/modules/mount.py | 43 +-
|
||||
salt/modules/openbsdpkg.py | 2 +-
|
||||
salt/modules/pacmanpkg.py | 10 +-
|
||||
salt/modules/parted_partition.py | 91 +-
|
||||
salt/modules/pkgin.py | 8 +-
|
||||
salt/modules/pkgng.py | 4 +-
|
||||
salt/modules/rpm_lowpkg.py | 101 +-
|
||||
salt/modules/shadow.py | 300 ++++-
|
||||
salt/modules/shadow.py | 300 ++++--
|
||||
salt/modules/solarisipspkg.py | 4 +-
|
||||
salt/modules/solarispkg.py | 2 +-
|
||||
salt/modules/systemd_service.py | 264 +++-
|
||||
salt/modules/useradd.py | 390 ++++--
|
||||
salt/modules/systemd_service.py | 264 ++++--
|
||||
salt/modules/useradd.py | 390 ++++++--
|
||||
salt/modules/xbpspkg.py | 12 +-
|
||||
salt/modules/yumpkg.py | 34 +-
|
||||
salt/modules/zypperpkg.py | 503 +++++--
|
||||
salt/modules/zypperpkg.py | 503 +++++++---
|
||||
salt/states/blockdev.py | 3 +-
|
||||
salt/states/btrfs.py | 385 ++++++
|
||||
salt/states/btrfs.py | 385 ++++++++
|
||||
salt/states/cmd.py | 18 +-
|
||||
salt/states/file.py | 6 +-
|
||||
salt/states/loop.py | 4 +
|
||||
salt/states/lvm.py | 16 +-
|
||||
salt/states/mdadm_raid.py | 2 +-
|
||||
salt/states/mount.py | 305 +++++
|
||||
salt/states/mount.py | 305 +++++++
|
||||
salt/states/pkg.py | 28 +-
|
||||
salt/states/pkgrepo.py | 14 +-
|
||||
salt/utils/oset.py | 7 +-
|
||||
salt/utils/path.py | 7 +-
|
||||
salt/utils/systemd.py | 5 +-
|
||||
tests/conftest.py | 10 +-
|
||||
tests/unit/grains/test_core.py | 39 +
|
||||
tests/unit/modules/test_btrfs.py | 370 ++++-
|
||||
tests/unit/modules/test_chroot.py | 184 +++
|
||||
tests/unit/modules/test_freezer.py | 274 ++++
|
||||
tests/unit/modules/test_btrfs.py | 370 +++++++-
|
||||
tests/unit/modules/test_chroot.py | 184 ++++
|
||||
tests/unit/modules/test_freezer.py | 274 ++++++
|
||||
tests/unit/modules/test_groupadd.py | 16 +-
|
||||
tests/unit/modules/test_kubeadm.py | 1144 ++++++++++++++++
|
||||
tests/unit/modules/test_mount.py | 154 ++-
|
||||
tests/unit/modules/test_kubeadm.py | 1144 +++++++++++++++++++++++
|
||||
tests/unit/modules/test_mount.py | 118 ++-
|
||||
tests/unit/modules/test_parted_partition.py | 17 +
|
||||
tests/unit/modules/test_rpm_lowpkg.py | 92 +-
|
||||
tests/unit/modules/test_systemd_service.py | 57 +-
|
||||
tests/unit/modules/test_useradd.py | 5 +-
|
||||
tests/unit/modules/test_zypperpkg.py | 100 +-
|
||||
tests/unit/states/test_btrfs.py | 782 +++++++++++
|
||||
tests/unit/states/test_mount.py | 605 +++++++++
|
||||
tests/unit/states/test_btrfs.py | 782 ++++++++++++++++
|
||||
tests/unit/states/test_mount.py | 605 ++++++++++++
|
||||
tests/unit/states/test_pkg.py | 7 +-
|
||||
tests/unit/test_loader.py | 96 +-
|
||||
tests/unit/utils/test_systemd.py | 21 +
|
||||
67 files changed, 8570 insertions(+), 648 deletions(-)
|
||||
65 files changed, 8503 insertions(+), 640 deletions(-)
|
||||
create mode 100644 doc/ref/modules/all/salt.modules.kubeadm.rst
|
||||
create mode 100644 salt/modules/chroot.py
|
||||
create mode 100644 salt/modules/freezer.py
|
||||
@ -85,15 +83,15 @@ Subject: [PATCH] Provide the missing features required for Yomi (Yet one
|
||||
create mode 100644 tests/unit/states/test_btrfs.py
|
||||
|
||||
diff --git a/doc/ref/modules/all/index.rst b/doc/ref/modules/all/index.rst
|
||||
index 9762347faf..eaf7e25450 100644
|
||||
index f1a85d2c71..8d165a033b 100644
|
||||
--- a/doc/ref/modules/all/index.rst
|
||||
+++ b/doc/ref/modules/all/index.rst
|
||||
@@ -208,6 +208,7 @@ execution modules
|
||||
@@ -212,6 +212,7 @@ execution modules
|
||||
keystone
|
||||
keystoneng
|
||||
kmod
|
||||
+ kubeadm
|
||||
kubernetes
|
||||
kubernetesmod
|
||||
launchctl_service
|
||||
layman
|
||||
diff --git a/doc/ref/modules/all/salt.modules.kubeadm.rst b/doc/ref/modules/all/salt.modules.kubeadm.rst
|
||||
@ -108,10 +106,10 @@ index 0000000000..137c779da2
|
||||
+.. automodule:: salt.modules.kubeadm
|
||||
+ :members:
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index fec7b204bc..ce64620a24 100644
|
||||
index 38b82b7f7c..ab37a4dd44 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -108,6 +108,10 @@ if not hasattr(os, 'uname'):
|
||||
@@ -109,6 +109,10 @@ if not hasattr(os, 'uname'):
|
||||
|
||||
_INTERFACES = {}
|
||||
|
||||
@ -122,7 +120,7 @@ index fec7b204bc..ce64620a24 100644
|
||||
|
||||
def _windows_cpudata():
|
||||
'''
|
||||
@@ -2208,7 +2212,7 @@ def fqdns():
|
||||
@@ -2263,7 +2267,7 @@ def fqdns():
|
||||
name, aliaslist, addresslist = socket.gethostbyaddr(ip)
|
||||
return [socket.getfqdn(name)] + [als for als in aliaslist if salt.utils.network.is_fqdn(als)]
|
||||
except socket.herror as err:
|
||||
@ -131,7 +129,7 @@ index fec7b204bc..ce64620a24 100644
|
||||
# No FQDN for this IP address, so we don't need to know this all the time.
|
||||
log.debug("Unable to resolve address %s: %s", ip, err)
|
||||
else:
|
||||
@@ -2529,6 +2533,10 @@ def _hw_data(osdata):
|
||||
@@ -2584,6 +2588,10 @@ def _hw_data(osdata):
|
||||
grains[key] = salt.utils.stringutils.to_unicode(ifile.read().strip(), errors='replace')
|
||||
if key == 'uuid':
|
||||
grains['uuid'] = grains['uuid'].lower()
|
||||
@ -142,7 +140,7 @@ index fec7b204bc..ce64620a24 100644
|
||||
except (IOError, OSError) as err:
|
||||
# PermissionError is new to Python 3, but corresponds to the EACESS and
|
||||
# EPERM error numbers. Use those instead here for PY2 compatibility.
|
||||
@@ -2760,26 +2768,6 @@ def _hw_data(osdata):
|
||||
@@ -2815,26 +2823,6 @@ def _hw_data(osdata):
|
||||
else:
|
||||
log.error('The \'prtconf\' binary was not found in $PATH.')
|
||||
|
||||
@ -170,7 +168,7 @@ index fec7b204bc..ce64620a24 100644
|
||||
|
||||
|
||||
diff --git a/salt/loader.py b/salt/loader.py
|
||||
index 6760d9e720..1d8a4b90fd 100644
|
||||
index d494c452ed..52cb4cfcb5 100644
|
||||
--- a/salt/loader.py
|
||||
+++ b/salt/loader.py
|
||||
@@ -253,6 +253,7 @@ def minion_mods(
|
||||
@ -181,7 +179,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
|
||||
ret.pack['__salt__'] = ret
|
||||
@@ -334,6 +335,7 @@ def engines(opts, functions, runners, utils, proxy=None):
|
||||
@@ -346,6 +347,7 @@ def engines(opts, functions, runners, utils, proxy=None):
|
||||
opts,
|
||||
tag='engines',
|
||||
pack=pack,
|
||||
@ -189,7 +187,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
|
||||
|
||||
@@ -346,6 +348,7 @@ def proxy(opts, functions=None, returners=None, whitelist=None, utils=None):
|
||||
@@ -358,6 +360,7 @@ def proxy(opts, functions=None, returners=None, whitelist=None, utils=None):
|
||||
opts,
|
||||
tag='proxy',
|
||||
pack={'__salt__': functions, '__ret__': returners, '__utils__': utils},
|
||||
@ -197,7 +195,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
|
||||
ret.pack['__proxy__'] = ret
|
||||
@@ -383,12 +386,14 @@ def pillars(opts, functions, context=None):
|
||||
@@ -395,12 +398,14 @@ def pillars(opts, functions, context=None):
|
||||
'''
|
||||
Returns the pillars modules
|
||||
'''
|
||||
@ -213,7 +211,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
ret.pack['__ext_pillar__'] = ret
|
||||
return FilterDictWrapper(ret, '.ext_pillar')
|
||||
|
||||
@@ -488,11 +493,13 @@ def fileserver(opts, backends):
|
||||
@@ -500,11 +505,13 @@ def fileserver(opts, backends):
|
||||
'''
|
||||
Returns the file server modules
|
||||
'''
|
||||
@ -228,7 +226,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
|
||||
|
||||
def roster(opts, runner=None, utils=None, whitelist=None):
|
||||
@@ -508,6 +515,7 @@ def roster(opts, runner=None, utils=None, whitelist=None):
|
||||
@@ -520,6 +527,7 @@ def roster(opts, runner=None, utils=None, whitelist=None):
|
||||
'__runner__': runner,
|
||||
'__utils__': utils,
|
||||
},
|
||||
@ -236,7 +234,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
|
||||
|
||||
@@ -546,6 +554,7 @@ def states(opts, functions, utils, serializers, whitelist=None, proxy=None):
|
||||
@@ -558,6 +566,7 @@ def states(opts, functions, utils, serializers, whitelist=None, proxy=None):
|
||||
tag='states',
|
||||
pack={'__salt__': functions, '__proxy__': proxy or {}},
|
||||
whitelist=whitelist,
|
||||
@ -244,7 +242,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
ret.pack['__states__'] = ret
|
||||
ret.pack['__utils__'] = utils
|
||||
@@ -652,7 +661,8 @@ def grain_funcs(opts, proxy=None):
|
||||
@@ -664,7 +673,8 @@ def grain_funcs(opts, proxy=None):
|
||||
__opts__ = salt.config.minion_config('/etc/salt/minion')
|
||||
grainfuncs = salt.loader.grain_funcs(__opts__)
|
||||
'''
|
||||
@ -254,7 +252,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
_module_dirs(
|
||||
opts,
|
||||
'grains',
|
||||
@@ -661,7 +671,10 @@ def grain_funcs(opts, proxy=None):
|
||||
@@ -673,7 +683,10 @@ def grain_funcs(opts, proxy=None):
|
||||
),
|
||||
opts,
|
||||
tag='grains',
|
||||
@ -265,7 +263,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
|
||||
|
||||
def _load_cached_grains(opts, cfn):
|
||||
@@ -895,6 +908,7 @@ def runner(opts, utils=None, context=None, whitelist=None):
|
||||
@@ -907,6 +920,7 @@ def runner(opts, utils=None, context=None, whitelist=None):
|
||||
tag='runners',
|
||||
pack={'__utils__': utils, '__context__': context},
|
||||
whitelist=whitelist,
|
||||
@ -273,7 +271,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
# TODO: change from __salt__ to something else, we overload __salt__ too much
|
||||
ret.pack['__salt__'] = ret
|
||||
@@ -930,6 +944,7 @@ def sdb(opts, functions=None, whitelist=None, utils=None):
|
||||
@@ -942,6 +956,7 @@ def sdb(opts, functions=None, whitelist=None, utils=None):
|
||||
'__salt__': minion_mods(opts, utils),
|
||||
},
|
||||
whitelist=whitelist,
|
||||
@ -281,7 +279,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
|
||||
|
||||
@@ -971,6 +986,7 @@ def clouds(opts):
|
||||
@@ -983,6 +998,7 @@ def clouds(opts):
|
||||
'''
|
||||
Return the cloud functions
|
||||
'''
|
||||
@ -289,7 +287,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
# Let's bring __active_provider_name__, defaulting to None, to all cloud
|
||||
# drivers. This will get temporarily updated/overridden with a context
|
||||
# manager when needed.
|
||||
@@ -982,8 +998,9 @@ def clouds(opts):
|
||||
@@ -994,8 +1010,9 @@ def clouds(opts):
|
||||
int_type='clouds'),
|
||||
opts,
|
||||
tag='clouds',
|
||||
@ -300,7 +298,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
)
|
||||
for funcname in LIBCLOUD_FUNCS_NOT_SUPPORTED:
|
||||
log.trace(
|
||||
@@ -1097,6 +1114,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1109,6 +1126,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
:param bool virtual_enable: Whether or not to respect the __virtual__ function when loading modules.
|
||||
:param str virtual_funcs: The name of additional functions in the module to call to verify its functionality.
|
||||
If not true, the module will not load.
|
||||
@ -308,7 +306,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
:returns: A LazyLoader object which functions as a dictionary. Keys are 'module.function' and values
|
||||
are function references themselves which are loaded on-demand.
|
||||
# TODO:
|
||||
@@ -1118,6 +1136,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1130,6 +1148,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
static_modules=None,
|
||||
proxy=None,
|
||||
virtual_funcs=None,
|
||||
@ -316,7 +314,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
): # pylint: disable=W0231
|
||||
'''
|
||||
In pack, if any of the values are None they will be replaced with an
|
||||
@@ -1159,6 +1178,9 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1171,6 +1190,9 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
virtual_funcs = []
|
||||
self.virtual_funcs = virtual_funcs
|
||||
|
||||
@ -326,7 +324,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
self.disabled = set(
|
||||
self.opts.get(
|
||||
'disable_{0}{1}'.format(
|
||||
@@ -1465,12 +1487,30 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1477,12 +1499,30 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
reload_module(submodule)
|
||||
self._reload_submodules(submodule)
|
||||
|
||||
@ -357,7 +355,7 @@ index 6760d9e720..1d8a4b90fd 100644
|
||||
sys.path.append(fpath_dirname)
|
||||
if suffix == '.pyx':
|
||||
mod = pyximport.load_module(name, fpath, tempfile.gettempdir())
|
||||
@@ -1593,6 +1633,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
@@ -1605,6 +1645,7 @@ class LazyLoader(salt.utils.lazy.LazyDict):
|
||||
return False
|
||||
finally:
|
||||
sys.path.remove(fpath_dirname)
|
||||
@ -1190,10 +1188,10 @@ index 0000000000..6e4705b67e
|
||||
+ finally:
|
||||
+ __utils__['files.rm_rf'](thin_dest_path)
|
||||
diff --git a/salt/modules/cmdmod.py b/salt/modules/cmdmod.py
|
||||
index 81c4d3f811..d0819f2f79 100644
|
||||
index 723eddc67b..1801147f57 100644
|
||||
--- a/salt/modules/cmdmod.py
|
||||
+++ b/salt/modules/cmdmod.py
|
||||
@@ -2889,6 +2889,7 @@ def run_chroot(root,
|
||||
@@ -2904,6 +2904,7 @@ def run_chroot(root,
|
||||
group=None,
|
||||
shell=DEFAULT_SHELL,
|
||||
python_shell=True,
|
||||
@ -1201,7 +1199,7 @@ index 81c4d3f811..d0819f2f79 100644
|
||||
env=None,
|
||||
clean_env=False,
|
||||
template=None,
|
||||
@@ -2914,19 +2915,17 @@ def run_chroot(root,
|
||||
@@ -2929,19 +2930,17 @@ def run_chroot(root,
|
||||
|
||||
:param str root: Path to the root of the jail to use.
|
||||
|
||||
@ -1229,7 +1227,7 @@ index 81c4d3f811..d0819f2f79 100644
|
||||
|
||||
:param str cmd: The command to run. ex: ``ls -lart /home``
|
||||
|
||||
@@ -2950,6 +2949,9 @@ def run_chroot(root,
|
||||
@@ -2965,6 +2964,9 @@ def run_chroot(root,
|
||||
arguments. Set to True to use shell features, such as pipes or
|
||||
redirection.
|
||||
|
||||
@ -1239,7 +1237,7 @@ index 81c4d3f811..d0819f2f79 100644
|
||||
:param dict env: Environment variables to be set prior to execution.
|
||||
|
||||
.. note::
|
||||
@@ -2968,11 +2970,11 @@ def run_chroot(root,
|
||||
@@ -2983,11 +2985,11 @@ def run_chroot(root,
|
||||
engine will be used to render the downloaded file. Currently jinja,
|
||||
mako, and wempy are supported.
|
||||
|
||||
@ -1255,7 +1253,7 @@ index 81c4d3f811..d0819f2f79 100644
|
||||
|
||||
:param str output_encoding: Control the encoding used to decode the
|
||||
command's output.
|
||||
@@ -3046,6 +3048,15 @@ def run_chroot(root,
|
||||
@@ -3061,6 +3063,15 @@ def run_chroot(root,
|
||||
'sysfs',
|
||||
fstype='sysfs')
|
||||
|
||||
@ -1271,7 +1269,7 @@ index 81c4d3f811..d0819f2f79 100644
|
||||
# Execute chroot routine
|
||||
sh_ = '/bin/sh'
|
||||
if os.path.isfile(os.path.join(root, 'bin/bash')):
|
||||
@@ -3096,6 +3107,11 @@ def run_chroot(root,
|
||||
@@ -3111,6 +3122,11 @@ def run_chroot(root,
|
||||
log.error('Processes running in chroot could not be killed, '
|
||||
'filesystem will remain mounted')
|
||||
|
||||
@ -3567,7 +3565,7 @@ index 829f4cdd24..1581a558b6 100644
|
||||
|
||||
for line in res.splitlines():
|
||||
diff --git a/salt/modules/mount.py b/salt/modules/mount.py
|
||||
index e807b1729e..f2737b9a5c 100644
|
||||
index 97263252c7..f2737b9a5c 100644
|
||||
--- a/salt/modules/mount.py
|
||||
+++ b/salt/modules/mount.py
|
||||
@@ -711,11 +711,15 @@ def set_fstab(
|
||||
@ -3642,31 +3640,16 @@ index e807b1729e..f2737b9a5c 100644
|
||||
if comps[0] != name:
|
||||
change = True
|
||||
comps[0] = name
|
||||
@@ -1212,14 +1223,17 @@ def mount(name, device, mkmnt=False, fstype='', opts='defaults', user=None, util
|
||||
lopts = ','.join(opts)
|
||||
args = '-o {0}'.format(lopts)
|
||||
|
||||
- # use of fstype on AIX differs from typical Linux use of -t functionality
|
||||
- # AIX uses -v vfsname, -t fstype mounts all with fstype in /etc/filesystems
|
||||
- if 'AIX' in __grains__['os']:
|
||||
- if fstype:
|
||||
+ if fstype:
|
||||
+ # use of fstype on AIX differs from typical Linux use of -t
|
||||
+ # functionality AIX uses -v vfsname, -t fstype mounts all with
|
||||
+ # fstype in /etc/filesystems
|
||||
+ if 'AIX' in __grains__['os']:
|
||||
@@ -1218,6 +1229,8 @@ def mount(name, device, mkmnt=False, fstype='', opts='defaults', user=None, util
|
||||
# fstype in /etc/filesystems
|
||||
if 'AIX' in __grains__['os']:
|
||||
args += ' -v {0}'.format(fstype)
|
||||
- else:
|
||||
- if fstype:
|
||||
+ elif 'solaris' in __grains__['os'].lower():
|
||||
+ args += ' -F {0}'.format(fstype)
|
||||
+ else:
|
||||
else:
|
||||
args += ' -t {0}'.format(fstype)
|
||||
+
|
||||
cmd = 'mount {0} {1} {2} '.format(args, device, name)
|
||||
out = __salt__['cmd.run_all'](cmd, runas=user, python_shell=False)
|
||||
if out['retcode']:
|
||||
@@ -1247,7 +1261,7 @@ def remount(name, device, mkmnt=False, fstype='', opts='defaults', user=None):
|
||||
|
||||
@@ -1248,7 +1261,7 @@ def remount(name, device, mkmnt=False, fstype='', opts='defaults', user=None):
|
||||
|
||||
if 'AIX' in __grains__['os']:
|
||||
if opts == 'defaults':
|
||||
@ -3675,7 +3658,7 @@ index e807b1729e..f2737b9a5c 100644
|
||||
|
||||
if isinstance(opts, six.string_types):
|
||||
opts = opts.split(',')
|
||||
@@ -1262,14 +1276,16 @@ def remount(name, device, mkmnt=False, fstype='', opts='defaults', user=None):
|
||||
@@ -1263,14 +1276,16 @@ def remount(name, device, mkmnt=False, fstype='', opts='defaults', user=None):
|
||||
lopts = ','.join(opts)
|
||||
args = '-o {0}'.format(lopts)
|
||||
|
||||
@ -3699,7 +3682,7 @@ index e807b1729e..f2737b9a5c 100644
|
||||
|
||||
if __grains__['os'] not in ['OpenBSD', 'MacOS', 'Darwin'] or force_mount:
|
||||
cmd = 'mount {0} {1} {2} '.format(args, device, name)
|
||||
@@ -1667,6 +1683,7 @@ def set_filesystems(
|
||||
@@ -1668,6 +1683,7 @@ def set_filesystems(
|
||||
config='/etc/filesystems',
|
||||
test=False,
|
||||
match_on='auto',
|
||||
@ -3707,7 +3690,7 @@ index e807b1729e..f2737b9a5c 100644
|
||||
**kwargs):
|
||||
'''
|
||||
.. versionadded:: 2018.3.3
|
||||
@@ -1674,6 +1691,9 @@ def set_filesystems(
|
||||
@@ -1675,6 +1691,9 @@ def set_filesystems(
|
||||
Verify that this mount is represented in the filesystems, change the mount
|
||||
to match the data passed, or add the mount if it is not present on AIX
|
||||
|
||||
@ -3717,7 +3700,7 @@ index e807b1729e..f2737b9a5c 100644
|
||||
Provide information if the path is mounted
|
||||
|
||||
:param name: The name of the mount point where the device is mounted.
|
||||
@@ -1773,7 +1793,7 @@ def set_filesystems(
|
||||
@@ -1774,7 +1793,7 @@ def set_filesystems(
|
||||
for fsys_view in six.viewitems(fsys_filedict):
|
||||
if criteria.match(fsys_view):
|
||||
ret = 'present'
|
||||
@ -8230,10 +8213,10 @@ index 4d20b51381..86934f9ffc 100644
|
||||
return ret
|
||||
|
||||
diff --git a/salt/states/file.py b/salt/states/file.py
|
||||
index 15bb93e5ec..8823a7c8cf 100644
|
||||
index 4e451c58f8..c98081fa7f 100644
|
||||
--- a/salt/states/file.py
|
||||
+++ b/salt/states/file.py
|
||||
@@ -276,7 +276,11 @@ import shutil
|
||||
@@ -291,7 +291,11 @@ import shutil
|
||||
import sys
|
||||
import time
|
||||
import traceback
|
||||
@ -8868,29 +8851,6 @@ index b1d601e464..132190b271 100644
|
||||
return None
|
||||
for exe in exes:
|
||||
path = which(exe)
|
||||
diff --git a/salt/utils/systemd.py b/salt/utils/systemd.py
|
||||
index 7790b3567d..060bc1e3fb 100644
|
||||
--- a/salt/utils/systemd.py
|
||||
+++ b/salt/utils/systemd.py
|
||||
@@ -6,6 +6,7 @@ Contains systemd related help files
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
import logging
|
||||
import os
|
||||
+import re
|
||||
import subprocess
|
||||
|
||||
# Import Salt libs
|
||||
@@ -65,8 +66,8 @@ def version(context=None):
|
||||
stdout=subprocess.PIPE, stderr=subprocess.STDOUT).communicate()[0]
|
||||
outstr = salt.utils.stringutils.to_str(stdout)
|
||||
try:
|
||||
- ret = int(outstr.splitlines()[0].split()[-1])
|
||||
- except (IndexError, ValueError):
|
||||
+ ret = int(re.search(r'\w+ ([0-9]+)', outstr.splitlines()[0]).group(1))
|
||||
+ except (AttributeError, IndexError, ValueError):
|
||||
log.error(
|
||||
'Unable to determine systemd version from systemctl '
|
||||
'--version, output follows:\n%s', outstr
|
||||
diff --git a/tests/conftest.py b/tests/conftest.py
|
||||
index 906cca6dd5..1dbe2176b6 100644
|
||||
--- a/tests/conftest.py
|
||||
@ -8934,13 +8894,13 @@ index 906cca6dd5..1dbe2176b6 100644
|
||||
only_local_network = requires_network_marker.kwargs.get('only_local_network', False)
|
||||
has_local_network = False
|
||||
diff --git a/tests/unit/grains/test_core.py b/tests/unit/grains/test_core.py
|
||||
index 117e02c39f..5fa0ea06f1 100644
|
||||
index e43be4939c..af9d27dd0e 100644
|
||||
--- a/tests/unit/grains/test_core.py
|
||||
+++ b/tests/unit/grains/test_core.py
|
||||
@@ -1062,3 +1062,42 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
ret = core._osx_memdata()
|
||||
assert ret['swap_total'] == 0
|
||||
assert ret['mem_total'] == 4096
|
||||
@@ -1262,3 +1262,42 @@ class CoreGrainsTestCase(TestCase, LoaderModuleMockMixin):
|
||||
is_proxy.assert_called_once_with()
|
||||
is_windows.assert_not_called()
|
||||
self.assertEqual(ret['locale_info']['timezone'], 'unknown')
|
||||
+
|
||||
+ @skipIf(not salt.utils.platform.is_linux(), 'System is not Linux')
|
||||
+ @patch('os.path.exists')
|
||||
@ -11026,7 +10986,7 @@ index 0000000000..a58f54f118
|
||||
+ with pytest.raises(CommandExecutionError):
|
||||
+ assert kubeadm.reset()
|
||||
diff --git a/tests/unit/modules/test_mount.py b/tests/unit/modules/test_mount.py
|
||||
index a9df52f1d8..fe9b067665 100644
|
||||
index 1a0d64f2f5..fe9b067665 100644
|
||||
--- a/tests/unit/modules/test_mount.py
|
||||
+++ b/tests/unit/modules/test_mount.py
|
||||
@@ -216,6 +216,21 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@ -11095,65 +11055,16 @@ index a9df52f1d8..fe9b067665 100644
|
||||
|
||||
mock_read = MagicMock(side_effect=OSError)
|
||||
with patch.object(os.path, 'isfile', mock):
|
||||
@@ -305,6 +348,13 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'stderr': True})
|
||||
with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
self.assertTrue(mount.mount('name', 'device'))
|
||||
+ mock.assert_called_with('mount device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
+
|
||||
+ with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
+ self.assertTrue(mount.mount('name', 'device', fstype='fstype'))
|
||||
+ mock.assert_called_with('mount -t fstype device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
|
||||
mock = MagicMock(return_value={'retcode': False,
|
||||
'stderr': False})
|
||||
@@ -320,13 +370,42 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'stderr': True})
|
||||
with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
self.assertTrue(mount.mount('name', 'device'))
|
||||
+ mock.assert_called_with('mount device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
+
|
||||
+ with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
+ self.assertTrue(mount.mount('name', 'device', fstype='fstype'))
|
||||
+ mock.assert_called_with('mount -v fstype device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
|
||||
mock = MagicMock(return_value={'retcode': False,
|
||||
'stderr': False})
|
||||
@@ -362,7 +405,7 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
self.assertTrue(mount.mount('name', 'device'))
|
||||
|
||||
- def test_remount(self):
|
||||
+ with patch.dict(mount.__grains__, {'os': 'Linux'}):
|
||||
+ mock = MagicMock(return_value=True)
|
||||
+ with patch.object(os.path, 'exists', mock):
|
||||
+ mock = MagicMock(return_value=None)
|
||||
+ with patch.dict(mount.__salt__, {'file.mkdir': None}):
|
||||
+ mock = MagicMock(return_value={'retcode': True,
|
||||
+ 'stderr': True})
|
||||
+ with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
+ self.assertTrue(mount.mount('name', 'device'))
|
||||
+ mock.assert_called_with('mount -o defaults device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
+
|
||||
+ with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
+ self.assertTrue(mount.mount('name', 'device', fstype='fstype'))
|
||||
+ mock.assert_called_with('mount -o defaults -t fstype device name ',
|
||||
+ python_shell=False, runas=None)
|
||||
+
|
||||
+ mock = MagicMock(return_value={'retcode': False,
|
||||
+ 'stderr': False})
|
||||
+ with patch.dict(mount.__salt__, {'cmd.run_all': mock}):
|
||||
+ self.assertTrue(mount.mount('name', 'device'))
|
||||
+
|
||||
+ def test_remount_non_mounted(self):
|
||||
'''
|
||||
Attempt to remount a device, if the device is not already mounted, mount
|
||||
is called
|
||||
@@ -345,6 +424,77 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
@@ -381,6 +424,77 @@ class MountTestCase(TestCase, LoaderModuleMockMixin):
|
||||
with patch.object(mount, 'mount', mock):
|
||||
self.assertTrue(mount.remount('name', 'device'))
|
||||
|
||||
@ -13174,7 +13085,7 @@ index 42fe6c6867..d30e064167 100644
|
||||
with patch.dict(pkg.__salt__,
|
||||
{'pkg.list_upgrades': list_upgrades,
|
||||
diff --git a/tests/unit/test_loader.py b/tests/unit/test_loader.py
|
||||
index 0f22334559..ba8739a6b2 100644
|
||||
index dd0ce8e2e2..38dcb18109 100644
|
||||
--- a/tests/unit/test_loader.py
|
||||
+++ b/tests/unit/test_loader.py
|
||||
@@ -119,6 +119,97 @@ class LazyLoaderTest(TestCase):
|
||||
@ -13287,39 +13198,7 @@ index 0f22334559..ba8739a6b2 100644
|
||||
|
||||
def test_auth(self):
|
||||
'''
|
||||
diff --git a/tests/unit/utils/test_systemd.py b/tests/unit/utils/test_systemd.py
|
||||
index 248ff44579..bddfee5e54 100644
|
||||
--- a/tests/unit/utils/test_systemd.py
|
||||
+++ b/tests/unit/utils/test_systemd.py
|
||||
@@ -100,6 +100,27 @@ class SystemdTestCase(TestCase):
|
||||
self.assertTrue(_systemd.version(context))
|
||||
self.assertEqual(context, {'salt.utils.systemd.version': _version})
|
||||
|
||||
+ def test_version_generated_from_git_describe(self):
|
||||
+ '''
|
||||
+ Test with version string matching versions generated by git describe
|
||||
+ in systemd. This feature is used in systemd>=241.
|
||||
+ '''
|
||||
+ with patch('subprocess.Popen') as popen_mock:
|
||||
+ _version = 241
|
||||
+ output = 'systemd {0} ({0}.0-0-dist)\n-SYSVINIT'.format(_version)
|
||||
+ popen_mock.return_value = Mock(
|
||||
+ communicate=lambda *args, **kwargs: (output, None),
|
||||
+ pid=lambda: 12345,
|
||||
+ retcode=0
|
||||
+ )
|
||||
+
|
||||
+ # Test without context dict passed
|
||||
+ self.assertEqual(_systemd.version(), _version)
|
||||
+ # Test that context key is set when context dict is passed
|
||||
+ context = {}
|
||||
+ self.assertTrue(_systemd.version(context))
|
||||
+ self.assertEqual(context, {'salt.utils.systemd.version': _version})
|
||||
+
|
||||
def test_version_return_from_context(self):
|
||||
'''
|
||||
Test that the context data is returned when present. To ensure we're
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
27
read-repo-info-without-using-interpolation-bsc-11356.patch
Normal file
27
read-repo-info-without-using-interpolation-bsc-11356.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 53f6eb05bb33117483246cdd199c73954c936e19 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Thu, 7 Nov 2019 15:11:49 +0100
|
||||
Subject: [PATCH] Read repo info without using interpolation
|
||||
(bsc#1135656)
|
||||
|
||||
---
|
||||
salt/modules/zypperpkg.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/modules/zypperpkg.py b/salt/modules/zypperpkg.py
|
||||
index a87041aa70..8c1e05c21c 100644
|
||||
--- a/salt/modules/zypperpkg.py
|
||||
+++ b/salt/modules/zypperpkg.py
|
||||
@@ -1043,7 +1043,7 @@ def _get_repo_info(alias, repos_cfg=None, root=None):
|
||||
Get one repo meta-data.
|
||||
'''
|
||||
try:
|
||||
- meta = dict((repos_cfg or _get_configured_repos(root=root)).items(alias))
|
||||
+ meta = dict((repos_cfg or _get_configured_repos(root=root)).items(alias, raw=True))
|
||||
meta['alias'] = alias
|
||||
for key, val in six.iteritems(meta):
|
||||
if val in ['0', '1']:
|
||||
--
|
||||
2.16.4
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 51ccc41dd16564dea5b465d122218ca8047f9f3e Mon Sep 17 00:00:00 2001
|
||||
From 560910fbf8a500c501032846d6250a1a633137c4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 19 Nov 2018 11:46:26 +0000
|
||||
@ -37,13 +37,13 @@ Remove unnecessary lambda
|
||||
|
||||
Return None instead empty string for arch and release in pkg.list_pkgs
|
||||
---
|
||||
salt/modules/aptpkg.py | 38 ++++++++
|
||||
salt/modules/pkg_resource.py | 20 +++-
|
||||
salt/modules/yumpkg.py | 32 ++++++-
|
||||
salt/modules/zypperpkg.py | 29 +++++-
|
||||
tests/unit/modules/test_pkg_resource.py | 116 ++++++++++++++++++++++++
|
||||
tests/unit/modules/test_yumpkg.py | 85 ++++++++++++++++-
|
||||
tests/unit/modules/test_zypperpkg.py | 79 +++++++++++++++-
|
||||
salt/modules/aptpkg.py | 38 +++++++++++
|
||||
salt/modules/pkg_resource.py | 20 ++++--
|
||||
salt/modules/yumpkg.py | 32 ++++++++-
|
||||
salt/modules/zypperpkg.py | 29 +++++++-
|
||||
tests/unit/modules/test_pkg_resource.py | 116 ++++++++++++++++++++++++++++++++
|
||||
tests/unit/modules/test_yumpkg.py | 85 ++++++++++++++++++++++-
|
||||
tests/unit/modules/test_zypperpkg.py | 79 +++++++++++++++++++++-
|
||||
7 files changed, 383 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/aptpkg.py b/salt/modules/aptpkg.py
|
||||
@ -739,6 +739,6 @@ index 3259e1810d..f586c23fd0 100644
|
||||
'''
|
||||
Test advisory patches listing.
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 53d182abfbf7ab1156496481801e5e64e7f112e6 Mon Sep 17 00:00:00 2001
|
||||
From 23d21edaf5565d99bb6316087863ecbf6a699034 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Wed, 30 Oct 2019 10:19:12 +0100
|
||||
Subject: [PATCH] Remove unnecessary yield causing BadYieldError
|
||||
@ -29,6 +29,6 @@ index 6d0dca1da5..754c257b36 100644
|
||||
def __del__(self):
|
||||
self.local = None
|
||||
--
|
||||
2.23.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 6dfe6e1370f330c0d300bf0effd7e6cf8a28c734 Mon Sep 17 00:00:00 2001
|
||||
From 8d150403ceedd9bf7939bfa9ec1d6790e8ed4609 Mon Sep 17 00:00:00 2001
|
||||
From: Cedric Bosdonnat <cbosdonnat@suse.com>
|
||||
Date: Wed, 30 Oct 2019 12:18:51 +0100
|
||||
Subject: [PATCH] Remove virt.pool_delete fast parameter (#178)
|
||||
@ -71,6 +71,6 @@ index 4d20e998d8..b95f51807f 100644
|
||||
+ # and thus throwing exceptions.
|
||||
+ mock_pool.delete.assert_called_once_with(self.mock_libvirt.VIR_STORAGE_POOL_DELETE_NORMAL)
|
||||
--
|
||||
2.23.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 56fd68474f399a36b0a74ca9a01890649d997792 Mon Sep 17 00:00:00 2001
|
||||
From 1da400568977ffc45d4071189658855ee73b4013 Mon Sep 17 00:00:00 2001
|
||||
From: Jochen Breuer <jbreuer@suse.de>
|
||||
Date: Fri, 30 Aug 2019 14:20:06 +0200
|
||||
Subject: [PATCH] Restore default behaviour of pkg list return
|
||||
@ -130,6 +130,6 @@ index f71d6aac9e..da1953b2a5 100644
|
||||
|
||||
def list_locks(root=None):
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2cbc403b422a699cd948ed6218fce28fa901f5fa Mon Sep 17 00:00:00 2001
|
||||
From 2140fc26fb347388ac60f91c4badf76a73a8a728 Mon Sep 17 00:00:00 2001
|
||||
From: Mihai Dinca <mdinca@suse.de>
|
||||
Date: Thu, 13 Dec 2018 12:17:35 +0100
|
||||
Subject: [PATCH] Return the expected powerpc os arch (bsc#1117995)
|
||||
@ -26,6 +26,6 @@ index bb8c3fb589..828b0cecda 100644
|
||||
|
||||
def check_32(arch, osarch=None):
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e9b5c0ae02552eb9a76488da32217a0e339d86a2 Mon Sep 17 00:00:00 2001
|
||||
From 6bec79137c30375d62a2e3238081a9f4a5a8ae1b Mon Sep 17 00:00:00 2001
|
||||
From: Christian Lanig <clanig@suse.com>
|
||||
Date: Mon, 27 Nov 2017 13:10:26 +0100
|
||||
Subject: [PATCH] Run salt-api as user salt (bsc#1064520)
|
||||
@ -20,6 +20,6 @@ index 7ca582dfb4..bf513e4dbd 100644
|
||||
ExecStart=/usr/bin/salt-api
|
||||
TimeoutStopSec=3
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3d4be53c265dffdbfaf1d7d4764c361a640fd5ff Mon Sep 17 00:00:00 2001
|
||||
From ab1bc69e1454fc78ac9ba8725e61e034d882b5aa Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <kkaempf@suse.de>
|
||||
Date: Wed, 20 Jan 2016 11:01:06 +0100
|
||||
Subject: [PATCH] Run salt master as dedicated salt user
|
||||
@ -10,7 +10,7 @@ Subject: [PATCH] Run salt master as dedicated salt user
|
||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/conf/master b/conf/master
|
||||
index 149fe8812f..d492aef6df 100644
|
||||
index 546db5cb28..573e4213ba 100644
|
||||
--- a/conf/master
|
||||
+++ b/conf/master
|
||||
@@ -25,7 +25,8 @@
|
||||
@ -42,6 +42,6 @@ index 3cd002308e..0d99d1b801 100644
|
||||
missingok
|
||||
rotate 7
|
||||
--
|
||||
2.13.7
|
||||
2.16.4
|
||||
|
||||
|
||||
|
116
salt.changes
116
salt.changes
@ -1,3 +1,119 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 28 15:27:27 UTC 2019 - Mihai Dincă <mihai.dinca@suse.com>
|
||||
|
||||
- Prevent test_mod_del_repo_multiline_values to fail
|
||||
- Read repo info without using interpolation (bsc#1135656)
|
||||
- Requires vs BuildRequires
|
||||
- Limiting M2Crypto to >= SLE15
|
||||
- Replacing pycrypto with M2Crypto
|
||||
- Fix for log checking in x509 test
|
||||
- Update to 2019.2.2 release
|
||||
|
||||
- Added:
|
||||
* fix-for-log-checking-in-x509-test.patch
|
||||
* prevent-test_mod_del_repo_multiline_values-to-fail.patch
|
||||
* read-repo-info-without-using-interpolation-bsc-11356.patch
|
||||
|
||||
- Modified:
|
||||
* async-batch-implementation.patch
|
||||
* add-hold-unhold-functions.patch
|
||||
* adds-the-possibility-to-also-use-downloadonly-in-kwa.patch
|
||||
* decide-if-the-source-should-be-actually-skipped.patch
|
||||
* allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch
|
||||
* add-batch_presence_ping_timeout-and-batch_presence_p.patch
|
||||
* run-salt-master-as-dedicated-salt-user.patch
|
||||
* run-salt-api-as-user-salt-bsc-1064520.patch
|
||||
* fix-unit-test-for-grains-core.patch
|
||||
* add-environment-variable-to-know-if-yum-is-invoked-f.patch
|
||||
* fix-async-batch-multiple-done-events.patch
|
||||
* activate-all-beacons-sources-config-pillar-grains.patch
|
||||
* fix-for-older-mock-module.patch
|
||||
* do-not-break-repo-files-with-multiple-line-values-on.patch
|
||||
* fall-back-to-pymysql.patch
|
||||
* add-missing-fun-for-returns-from-wfunc-executions.patch
|
||||
* loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch
|
||||
* add-virt.volume_infos-and-virt.volume_delete.patch
|
||||
* fix-issue-2068-test.patch
|
||||
* switch-firewalld-state-to-use-change_interface.patch
|
||||
* make-aptpkg.list_repos-compatible-on-enabled-disable.patch
|
||||
* fix-ipv6-scope-bsc-1108557.patch
|
||||
* 2019.2.0-pr-54196-backport-173.patch
|
||||
* do-not-make-ansiblegate-to-crash-on-python3-minions.patch
|
||||
* x509-fixes-111.patch
|
||||
* prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch
|
||||
* fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch
|
||||
* add-cpe_name-for-osversion-grain-parsing-u-49946.patch
|
||||
* fix-failing-unit-tests-for-batch-async.patch
|
||||
* temporary-fix-extend-the-whitelist-of-allowed-comman.patch
|
||||
* improve-batch_async-to-release-consumed-memory-bsc-1.patch
|
||||
* batch.py-avoid-exception-when-minion-does-not-respon.patch
|
||||
* preserve-already-defined-destructive_tests-and-expen.patch
|
||||
* virt.volume_infos-fix-for-single-vm.patch
|
||||
* move-server_id-deprecation-warning-to-reduce-log-spa.patch
|
||||
* include-aliases-in-the-fqdns-grains.patch
|
||||
* don-t-call-zypper-with-more-than-one-no-refresh.patch
|
||||
* add-custom-suse-capabilities-as-grains.patch
|
||||
* get-os_arch-also-without-rpm-package-installed.patch
|
||||
* add-saltssh-multi-version-support-across-python-inte.patch
|
||||
* accumulated-changes-required-for-yomi-165.patch
|
||||
* use-adler32-algorithm-to-compute-string-checksums.patch
|
||||
* remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch
|
||||
* use-current-ioloop-for-the-localclient-instance-of-b.patch
|
||||
* remove-virt.pool_delete-fast-parameter-178.patch
|
||||
* add-multi-file-support-and-globbing-to-the-filetree-.patch
|
||||
* use-threadpool-from-multiprocessing.pool-to-avoid-le.patch
|
||||
* prevent-systemd-run-description-issue-when-running-a.patch
|
||||
* integration-of-msi-authentication-with-azurearm-clou.patch
|
||||
* virt.volume_infos-needs-to-ignore-inactive-pools-174.patch
|
||||
* virt-1.volume_infos-fix-for-single-vm.patch
|
||||
* add-supportconfig-module-for-remote-calls-and-saltss.patch
|
||||
* avoid-excessive-syslogging-by-watchdog-cronjob-58.patch
|
||||
* strip-trailing-from-repo.uri-when-comparing-repos-in.patch
|
||||
* preserving-signature-in-module.run-state-u-50049.patch
|
||||
* fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch
|
||||
* fix-aptpkg-systemd-call-bsc-1143301.patch
|
||||
* calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch
|
||||
* remove-unnecessary-yield-causing-badyielderror-bsc-1.patch
|
||||
* debian-info_installed-compatibility-50453.patch
|
||||
* add-standalone-configuration-file-for-enabling-packa.patch
|
||||
* accumulated-changes-from-yomi-167.patch
|
||||
* add-virt.all_capabilities.patch
|
||||
* fix-memory-leak-produced-by-batch-async-find_jobs-me.patch
|
||||
* do-not-report-patches-as-installed-when-not-all-the-.patch
|
||||
* support-config-non-root-permission-issues-fixes-u-50.patch
|
||||
* add-all_versions-parameter-to-include-all-installed-.patch
|
||||
* fixes-cve-2018-15750-cve-2018-15751.patch
|
||||
* fix-bsc-1065792.patch
|
||||
* enable-passing-a-unix_socket-for-mysql-returners-bsc.patch
|
||||
* avoid-traceback-when-http.query-request-cannot-be-pe.patch
|
||||
* restore-default-behaviour-of-pkg-list-return.patch
|
||||
* take-checksums-arg-into-account-for-postgres.datadir.patch
|
||||
* early-feature-support-config.patch
|
||||
* provide-the-missing-features-required-for-yomi-yet-o.patch
|
||||
* implement-network.fqdns-module-function-bsc-1134860-.patch
|
||||
* fix-virt.full_info-176.patch
|
||||
* checking-for-jid-before-returning-data.patch
|
||||
* virt.volume_infos-silence-libvirt-error-message-175.patch
|
||||
* do-not-crash-when-there-are-ipv6-established-connect.patch
|
||||
* fix-for-suse-expanded-support-detection.patch
|
||||
* fix-a-wrong-rebase-in-test_core.py-180.patch
|
||||
* add-ppc64le-as-a-valid-rpm-package-architecture.patch
|
||||
* make-profiles-a-package.patch
|
||||
* bugfix-any-unicode-string-of-length-16-will-raise-ty.patch
|
||||
* fix-git_pillar-merging-across-multiple-__env__-repos.patch
|
||||
* return-the-expected-powerpc-os-arch-bsc-1117995.patch
|
||||
* fix-async-batch-race-conditions.patch
|
||||
* do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch
|
||||
|
||||
- Removed:
|
||||
* fix-syndic-start-issue.patch
|
||||
* prevent-already-reading-continuous-exception-message.patch
|
||||
* virt.pool_running-fix-pool-start.patch
|
||||
* azurefs-gracefully-handle-attributeerror.patch
|
||||
* virt-handle-whitespaces-in-vm-names.patch
|
||||
* mount-fix-extra-t-parameter.patch
|
||||
* try-except-undefineflags-as-this-operation-is-not-su.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 30 11:23:05 UTC 2019 - Pablo Suárez Hernández <pablo.suarezhernandez@suse.com>
|
||||
|
||||
|
157
salt.spec
157
salt.spec
@ -58,7 +58,7 @@
|
||||
%bcond_with builddocs
|
||||
|
||||
Name: salt
|
||||
Version: 2019.2.0
|
||||
Version: 2019.2.2
|
||||
Release: 0
|
||||
Summary: A parallel remote execution system
|
||||
License: Apache-2.0
|
||||
@ -139,137 +139,128 @@ Patch34: add-hold-unhold-functions.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/50401
|
||||
# NOTE: This is a techpreview as well as in Fluorine! Release only in Neon.
|
||||
Patch35: add-supportconfig-module-for-remote-calls-and-saltss.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/50567
|
||||
Patch36: azurefs-gracefully-handle-attributeerror.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/116
|
||||
Patch37: return-the-expected-powerpc-os-arch-bsc-1117995.patch
|
||||
Patch36: return-the-expected-powerpc-os-arch-bsc-1117995.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51108
|
||||
Patch38: remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch
|
||||
Patch37: remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51119
|
||||
Patch39: fix-issue-2068-test.patch
|
||||
Patch38: fix-issue-2068-test.patch
|
||||
# PATCH_FIX_OPENSUSE: Temporary fix allowing "id_" and "force" params while upstrem figures it out
|
||||
Patch40: temporary-fix-extend-the-whitelist-of-allowed-comman.patch
|
||||
Patch39: temporary-fix-extend-the-whitelist-of-allowed-comman.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51382
|
||||
Patch41: don-t-call-zypper-with-more-than-one-no-refresh.patch
|
||||
Patch40: don-t-call-zypper-with-more-than-one-no-refresh.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/50109
|
||||
# PATCH_FIX_OPENSUSE https://github.com/openSUSE/salt/pull/121
|
||||
Patch42: add-virt.all_capabilities.patch
|
||||
Patch41: add-virt.all_capabilities.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51691
|
||||
Patch43: add-virt.volume_infos-and-virt.volume_delete.patch
|
||||
Patch42: add-virt.volume_infos-and-virt.volume_delete.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51384
|
||||
Patch44: include-aliases-in-the-fqdns-grains.patch
|
||||
Patch43: include-aliases-in-the-fqdns-grains.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/50546
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51863
|
||||
Patch45: async-batch-implementation.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/51905
|
||||
Patch46: mount-fix-extra-t-parameter.patch
|
||||
Patch44: async-batch-implementation.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/52527
|
||||
Patch47: calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch
|
||||
Patch45: calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch
|
||||
#PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/139
|
||||
Patch48: fix-async-batch-race-conditions.patch
|
||||
Patch46: fix-async-batch-race-conditions.patch
|
||||
#PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/141
|
||||
Patch49: add-batch_presence_ping_timeout-and-batch_presence_p.patch
|
||||
Patch47: add-batch_presence_ping_timeout-and-batch_presence_p.patch
|
||||
#PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52657
|
||||
Patch50: do-not-report-patches-as-installed-when-not-all-the-.patch
|
||||
Patch48: do-not-report-patches-as-installed-when-not-all-the-.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/52527
|
||||
Patch51: use-threadpool-from-multiprocessing.pool-to-avoid-le.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/52519 (partial porting)
|
||||
Patch52: fix-syndic-start-issue.patch
|
||||
Patch49: use-threadpool-from-multiprocessing.pool-to-avoid-le.patch
|
||||
# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/52888
|
||||
Patch53: do-not-crash-when-there-are-ipv6-established-connect.patch
|
||||
Patch50: do-not-crash-when-there-are-ipv6-established-connect.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/144
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52855
|
||||
Patch54: fix-async-batch-multiple-done-events.patch
|
||||
Patch51: fix-async-batch-multiple-done-events.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52743
|
||||
Patch55: switch-firewalld-state-to-use-change_interface.patch
|
||||
Patch52: switch-firewalld-state-to-use-change_interface.patch
|
||||
# PATCH-FIX_OPENSUSE
|
||||
Patch56: add-standalone-configuration-file-for-enabling-packa.patch
|
||||
Patch53: add-standalone-configuration-file-for-enabling-packa.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53237
|
||||
Patch57: add-ppc64le-as-a-valid-rpm-package-architecture.patch
|
||||
Patch54: add-ppc64le-as-a-valid-rpm-package-architecture.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53293
|
||||
Patch58: do-not-break-repo-files-with-multiple-line-values-on.patch
|
||||
Patch55: do-not-break-repo-files-with-multiple-line-values-on.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53343
|
||||
Patch59: preserve-already-defined-destructive_tests-and-expen.patch
|
||||
Patch56: preserve-already-defined-destructive_tests-and-expen.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53159
|
||||
Patch60: batch.py-avoid-exception-when-minion-does-not-respon.patch
|
||||
Patch57: batch.py-avoid-exception-when-minion-does-not-respon.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53471
|
||||
Patch61: fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/142
|
||||
Patch62: try-except-undefineflags-as-this-operation-is-not-su.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52160
|
||||
Patch63: virt-handle-whitespaces-in-vm-names.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52341
|
||||
Patch64: virt.pool_running-fix-pool-start.patch
|
||||
Patch58: fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52414
|
||||
Patch65: virt.volume_infos-fix-for-single-vm.patch
|
||||
Patch59: virt.volume_infos-fix-for-single-vm.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/161
|
||||
Patch66: provide-the-missing-features-required-for-yomi-yet-o.patch
|
||||
Patch60: provide-the-missing-features-required-for-yomi-yet-o.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53661
|
||||
Patch67: do-not-make-ansiblegate-to-crash-on-python3-minions.patch
|
||||
Patch61: do-not-make-ansiblegate-to-crash-on-python3-minions.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53693
|
||||
Patch68: allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch
|
||||
Patch62: allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53661
|
||||
Patch69: prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch
|
||||
Patch63: prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53755
|
||||
Patch70: virt-1.volume_infos-fix-for-single-vm.patch
|
||||
Patch64: virt-1.volume_infos-fix-for-single-vm.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/52459
|
||||
Patch71: checking-for-jid-before-returning-data.patch
|
||||
Patch65: checking-for-jid-before-returning-data.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54048
|
||||
Patch72: avoid-traceback-when-http.query-request-cannot-be-pe.patch
|
||||
Patch66: avoid-traceback-when-http.query-request-cannot-be-pe.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53992
|
||||
# https://github.com/saltstack/salt/pull/53996
|
||||
# https://github.com/saltstack/salt/pull/54022
|
||||
# https://github.com/saltstack/salt/pull/54024
|
||||
Patch73: accumulated-changes-required-for-yomi-165.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/177
|
||||
Patch74: restore-default-behaviour-of-pkg-list-return.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/6af07030a502c427781991fc9a2b994fa04ef32e
|
||||
Patch75: fix-memory-leak-produced-by-batch-async-find_jobs-me.patch
|
||||
Patch67: accumulated-changes-required-for-yomi-165.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/159
|
||||
Patch76: move-server_id-deprecation-warning-to-reduce-log-spa.patch
|
||||
Patch68: move-server_id-deprecation-warning-to-reduce-log-spa.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54077
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/166
|
||||
Patch77: fix-aptpkg-systemd-call-bsc-1143301.patch
|
||||
Patch69: fix-aptpkg-systemd-call-bsc-1143301.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/170
|
||||
Patch78: strip-trailing-from-repo.uri-when-comparing-repos-in.patch
|
||||
Patch70: strip-trailing-from-repo.uri-when-comparing-repos-in.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/177
|
||||
Patch71: restore-default-behaviour-of-pkg-list-return.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/172
|
||||
Patch79: implement-network.fqdns-module-function-bsc-1134860-.patch
|
||||
Patch72: implement-network.fqdns-module-function-bsc-1134860-.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/173
|
||||
Patch80: 2019.2.0-pr-54196-backport-173.patch
|
||||
Patch73: 2019.2.0-pr-54196-backport-173.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/174
|
||||
Patch81: virt.volume_infos-needs-to-ignore-inactive-pools-174.patch
|
||||
Patch74: virt.volume_infos-needs-to-ignore-inactive-pools-174.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/175
|
||||
Patch82: virt.volume_infos-silence-libvirt-error-message-175.patch
|
||||
Patch75: virt.volume_infos-silence-libvirt-error-message-175.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/176
|
||||
Patch83: fix-virt.full_info-176.patch
|
||||
Patch76: fix-virt.full_info-176.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/6af07030a502c427781991fc9a2b994fa04ef32e
|
||||
Patch77: fix-memory-leak-produced-by-batch-async-find_jobs-me.patch
|
||||
# PATCH-FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/002543df392f65d95dbc127dc058ac897f2035ed
|
||||
Patch84: improve-batch_async-to-release-consumed-memory-bsc-1.patch
|
||||
Patch78: improve-batch_async-to-release-consumed-memory-bsc-1.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54770
|
||||
Patch85: take-checksums-arg-into-account-for-postgres.datadir.patch
|
||||
Patch79: take-checksums-arg-into-account-for-postgres.datadir.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54077
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/44a91c2ce6df78d93ce0ef659dedb0e41b1c2e04
|
||||
Patch86: prevent-systemd-run-description-issue-when-running-a.patch
|
||||
Patch80: prevent-systemd-run-description-issue-when-running-a.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/55d8a777d6a9b19c959e14a4060e5579e92cd106
|
||||
Patch87: use-current-ioloop-for-the-localclient-instance-of-b.patch
|
||||
Patch81: use-current-ioloop-for-the-localclient-instance-of-b.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/8378bb24a5a53973e8dba7658b8b3465d967329f
|
||||
Patch88: fix-failing-unit-tests-for-batch-async.patch
|
||||
Patch82: fix-failing-unit-tests-for-batch-async.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54935
|
||||
Patch89: add-missing-fun-for-returns-from-wfunc-executions.patch
|
||||
Patch83: add-missing-fun-for-returns-from-wfunc-executions.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/179
|
||||
Patch90: adds-the-possibility-to-also-use-downloadonly-in-kwa.patch
|
||||
Patch84: adds-the-possibility-to-also-use-downloadonly-in-kwa.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53326
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54954
|
||||
Patch91: accumulated-changes-from-yomi-167.patch
|
||||
Patch85: accumulated-changes-from-yomi-167.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/180
|
||||
Patch92: fix-a-wrong-rebase-in-test_core.py-180.patch
|
||||
Patch86: fix-a-wrong-rebase-in-test_core.py-180.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/181
|
||||
Patch93: fix-for-older-mock-module.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/commit/6c84612b52b5f14e74a1c44f03d78a85c6f0c5dc
|
||||
Patch94: prevent-already-reading-continuous-exception-message.patch
|
||||
Patch87: fix-for-older-mock-module.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/182
|
||||
Patch95: remove-unnecessary-yield-causing-badyielderror-bsc-1.patch
|
||||
Patch88: remove-unnecessary-yield-causing-badyielderror-bsc-1.patch
|
||||
# PATCH_FIX_UPSTREAM: https://github.com/saltstack/salt/pull/54475
|
||||
Patch96: remove-virt.pool_delete-fast-parameter-178.patch
|
||||
Patch89: remove-virt.pool_delete-fast-parameter-178.patch
|
||||
# PATCH_FIX_OPENSUSE: https://github.com/openSUSE/salt/pull/186
|
||||
Patch90: read-repo-info-without-using-interpolation-bsc-11356.patch
|
||||
# PATCH-FIX_UPSTREAM: https://github.com/saltstack/salt/pull/53293
|
||||
Patch91: prevent-test_mod_del_repo_multiline_values-to-fail.patch
|
||||
Patch92: fix-for-log-checking-in-x509-test.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: logrotate
|
||||
@ -377,7 +368,11 @@ BuildConflicts: python3-tornado >= 5
|
||||
%endif
|
||||
|
||||
# requirements/zeromq.txt
|
||||
BuildRequires: python-pycrypto >= 2.6.1
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: python2-M2Crypto
|
||||
%else
|
||||
BuildRequires: python-pycrypto >= 2.6.1
|
||||
%endif
|
||||
BuildRequires: python-pyzmq >= 2.2.0
|
||||
%if %{with test}
|
||||
# requirements/dev_python27.txt
|
||||
@ -430,7 +425,11 @@ Suggests: python-timelib
|
||||
Suggests: python-gnupg
|
||||
# requirements/zeromq.txt
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1500
|
||||
Requires: python2-M2Crypto
|
||||
%else
|
||||
Requires: python-pycrypto >= 2.6.1
|
||||
%endif
|
||||
Requires: python-pyzmq >= 2.2.0
|
||||
#
|
||||
%if 0%{?suse_version}
|
||||
@ -465,8 +464,12 @@ BuildRequires: python3-Jinja2
|
||||
BuildRequires: python3-MarkupSafe
|
||||
BuildRequires: python3-msgpack-python > 0.3
|
||||
BuildRequires: python3-pyzmq >= 2.2.0
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: python3-M2Crypto
|
||||
%else
|
||||
BuildRequires: python3-pycrypto >= 2.6.1
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: python3-PyYAML
|
||||
BuildRequires: python3-psutil
|
||||
BuildRequires: python3-requests >= 1.0.0
|
||||
@ -517,7 +520,11 @@ Requires: yum-plugin-security
|
||||
Requires: python3-Jinja2
|
||||
Requires: python3-MarkupSafe
|
||||
Requires: python3-msgpack-python > 0.3
|
||||
%if 0%{?suse_version} >= 1500
|
||||
Requires: python3-M2Crypto
|
||||
%else
|
||||
Requires: python3-pycrypto >= 2.6.1
|
||||
%endif
|
||||
Requires: python3-pyzmq >= 2.2.0
|
||||
%endif
|
||||
Requires: python3-PyYAML
|
||||
@ -767,7 +774,7 @@ This package adds the standalone configuration for the Salt master in order to m
|
||||
|
||||
%prep
|
||||
# %setup -q -n salt-%{version}
|
||||
%setup -q -n salt-2019.2.0-suse
|
||||
%setup -q -n salt-2019.2.2-suse
|
||||
cp %{S:1} .
|
||||
cp %{S:5} ./.travis.yml
|
||||
%patch1 -p1
|
||||
@ -862,10 +869,6 @@ cp %{S:5} ./.travis.yml
|
||||
%patch90 -p1
|
||||
%patch91 -p1
|
||||
%patch92 -p1
|
||||
%patch93 -p1
|
||||
%patch94 -p1
|
||||
%patch95 -p1
|
||||
%patch96 -p1
|
||||
|
||||
%build
|
||||
%if 0%{?build_py2}
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 1b6f3f2e8b88ddfaebd5bfd1ae8258d417a9f098 Mon Sep 17 00:00:00 2001
|
||||
From 1cdaeb8613132c020364b7078448834be7bbb705 Mon Sep 17 00:00:00 2001
|
||||
From: Matei Albu <malbu@suse.de>
|
||||
Date: Fri, 15 Feb 2019 14:34:13 +0100
|
||||
Subject: [PATCH] Strip trailing "/" from repo.uri when comparing repos
|
||||
@ -23,6 +23,6 @@ index b7c1a342ef..d49a48310e 100644
|
||||
|
||||
if repo_matches or kw_matches:
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 1113909fe9ab0509ebe439051238d6a4f95d3c54 Mon Sep 17 00:00:00 2001
|
||||
From f5d743b6a2a0dd2066e33d0a0ea13bfccc9ae9b0 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Wed, 17 Oct 2018 14:10:47 +0200
|
||||
Subject: [PATCH] Support-config non-root permission issues fixes
|
||||
@ -12,7 +12,7 @@ Catch overwriting exiting archive error by other users
|
||||
|
||||
Suppress excessive tracebacks on error log level
|
||||
---
|
||||
salt/cli/support/collector.py | 39 ++++++++++++++++++++++++++++++++---
|
||||
salt/cli/support/collector.py | 39 ++++++++++++++++++++++++++++++++++++---
|
||||
salt/utils/parsers.py | 2 +-
|
||||
2 files changed, 37 insertions(+), 4 deletions(-)
|
||||
|
||||
@ -88,10 +88,10 @@ index 478d07e13b..a4343297b6 100644
|
||||
else:
|
||||
self.out.warning('File {} already exists.'.format(self.config['support_archive']))
|
||||
diff --git a/salt/utils/parsers.py b/salt/utils/parsers.py
|
||||
index 56a8961c3a..058346a9f4 100644
|
||||
index aa13310d5a..901bbbea55 100644
|
||||
--- a/salt/utils/parsers.py
|
||||
+++ b/salt/utils/parsers.py
|
||||
@@ -1922,7 +1922,7 @@ class SaltSupportOptionParser(six.with_metaclass(OptionParserMeta, OptionParser,
|
||||
@@ -1961,7 +1961,7 @@ class SaltSupportOptionParser(six.with_metaclass(OptionParserMeta, OptionParser,
|
||||
'''
|
||||
_opts, _args = optparse.OptionParser.parse_args(self)
|
||||
configs = self.find_existing_configs(_opts.support_unit)
|
||||
@ -101,6 +101,6 @@ index 56a8961c3a..058346a9f4 100644
|
||||
|
||||
return config.master_config(self.get_config_file_path(cfg))
|
||||
--
|
||||
2.19.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ee499612e1302b908a64dde696065b0093fe3115 Mon Sep 17 00:00:00 2001
|
||||
From d21552ca35f9f90acc12e907251ed5ded3c2a5f7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Mon, 20 May 2019 11:59:39 +0100
|
||||
@ -68,6 +68,6 @@ index 4623798658..fc5b233f98 100644
|
||||
ret['comment'] = 'Error: {0}'.format(err)
|
||||
return ret
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7ed3e99a4979a13c7142ed5ba73c09a282e03147 Mon Sep 17 00:00:00 2001
|
||||
From 34659b17ef083021c582ec0e7d225f94e409b500 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Thu, 26 Sep 2019 15:57:58 +0100
|
||||
@ -36,6 +36,6 @@ index 03fb7fddfd..6f10fcf2e0 100644
|
||||
)
|
||||
self.assertTrue(ret)
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c9c50ab75b4a8a73f57e8c2eeaa24401409e8c3c Mon Sep 17 00:00:00 2001
|
||||
From 6a3a1b36ba7157a6318084bd67acda3ad9f9556e Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Thu, 24 Jan 2019 18:12:35 +0100
|
||||
Subject: [PATCH] temporary fix: extend the whitelist of allowed commands
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] temporary fix: extend the whitelist of allowed commands
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/salt/auth/__init__.py b/salt/auth/__init__.py
|
||||
index ca7168d00e..aa4c5c3670 100644
|
||||
index cf5e2deb9c..d43c57338c 100644
|
||||
--- a/salt/auth/__init__.py
|
||||
+++ b/salt/auth/__init__.py
|
||||
@@ -46,6 +46,8 @@ AUTH_INTERNAL_KEYWORDS = frozenset([
|
||||
@@ -47,6 +47,8 @@ AUTH_INTERNAL_KEYWORDS = frozenset([
|
||||
'gather_job_timeout',
|
||||
'kwarg',
|
||||
'match',
|
||||
@ -21,6 +21,6 @@ index ca7168d00e..aa4c5c3670 100644
|
||||
'print_event',
|
||||
'raw',
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,31 +0,0 @@
|
||||
From e0bded83fa691c3b972fa4c22b14c5ac0a7a3f13 Mon Sep 17 00:00:00 2001
|
||||
From: Jeroen Schutrup <jeroenschutrup@hotmail.nl>
|
||||
Date: Sun, 12 Aug 2018 19:43:22 +0200
|
||||
Subject: [PATCH] Try/except undefineFlags() as this operation is not
|
||||
supported on bhyve
|
||||
|
||||
(cherry picked from commit 29a44aceb1a73347ac07dd241b4a64a4a38cef6e)
|
||||
---
|
||||
salt/modules/virt.py | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
index a3f625909d..423016cd90 100644
|
||||
--- a/salt/modules/virt.py
|
||||
+++ b/salt/modules/virt.py
|
||||
@@ -3189,7 +3189,10 @@ def purge(vm_, dirs=False, removables=None, **kwargs):
|
||||
shutil.rmtree(dir_)
|
||||
if getattr(libvirt, 'VIR_DOMAIN_UNDEFINE_NVRAM', False):
|
||||
# This one is only in 1.2.8+
|
||||
- dom.undefineFlags(libvirt.VIR_DOMAIN_UNDEFINE_NVRAM)
|
||||
+ try:
|
||||
+ dom.undefineFlags(libvirt.VIR_DOMAIN_UNDEFINE_NVRAM)
|
||||
+ except Exception:
|
||||
+ dom.undefine()
|
||||
else:
|
||||
dom.undefine()
|
||||
conn.close()
|
||||
--
|
||||
2.21.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 9d09fcb60b8babd415af76812c93d38b6cbce661 Mon Sep 17 00:00:00 2001
|
||||
From 815042712007e3bc9e5326b3a13b2880534630b9 Mon Sep 17 00:00:00 2001
|
||||
From: Bo Maryniuk <bo@suse.de>
|
||||
Date: Sat, 28 Jul 2018 22:59:04 +0200
|
||||
Subject: [PATCH] Use Adler32 algorithm to compute string checksums
|
||||
@ -15,15 +15,15 @@ Choose CRC method, default to faster but less reliable "adler32", if crc is in u
|
||||
|
||||
Add warning for Sodium.
|
||||
---
|
||||
salt/config/__init__.py | 7 +++++-
|
||||
salt/grains/core.py | 53 +++++++++++++++++++++++++++--------------
|
||||
salt/config/__init__.py | 7 ++++++-
|
||||
salt/grains/core.py | 53 ++++++++++++++++++++++++++++++++-----------------
|
||||
2 files changed, 41 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/salt/config/__init__.py b/salt/config/__init__.py
|
||||
index 6b74b90ce0..5d0c18b5d1 100644
|
||||
index b3dfc8e43d..ee90eb3120 100644
|
||||
--- a/salt/config/__init__.py
|
||||
+++ b/salt/config/__init__.py
|
||||
@@ -1212,6 +1212,10 @@ VALID_OPTS = {
|
||||
@@ -1217,6 +1217,10 @@ VALID_OPTS = {
|
||||
|
||||
# Thorium top file location
|
||||
'thorium_top': six.string_types,
|
||||
@ -34,7 +34,7 @@ index 6b74b90ce0..5d0c18b5d1 100644
|
||||
}
|
||||
|
||||
# default configurations
|
||||
@@ -1520,7 +1524,8 @@ DEFAULT_MINION_OPTS = {
|
||||
@@ -1525,7 +1529,8 @@ DEFAULT_MINION_OPTS = {
|
||||
},
|
||||
'discovery': False,
|
||||
'schedule': {},
|
||||
@ -45,7 +45,7 @@ index 6b74b90ce0..5d0c18b5d1 100644
|
||||
|
||||
DEFAULT_MASTER_OPTS = {
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index 85a929a485..378d3cb786 100644
|
||||
index 82cd3fb657..cd7ee39d2f 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -20,6 +20,7 @@ import platform
|
||||
@ -56,7 +56,7 @@ index 85a929a485..378d3cb786 100644
|
||||
from errno import EACCES, EPERM
|
||||
import datetime
|
||||
import warnings
|
||||
@@ -61,6 +62,7 @@ import salt.utils.path
|
||||
@@ -62,6 +63,7 @@ import salt.utils.path
|
||||
import salt.utils.pkg.rpm
|
||||
import salt.utils.platform
|
||||
import salt.utils.stringutils
|
||||
@ -64,7 +64,7 @@ index 85a929a485..378d3cb786 100644
|
||||
from salt.ext import six
|
||||
from salt.ext.six.moves import range
|
||||
|
||||
@@ -2730,40 +2732,55 @@ def _hw_data(osdata):
|
||||
@@ -2785,40 +2787,55 @@ def _hw_data(osdata):
|
||||
return grains
|
||||
|
||||
|
||||
@ -139,6 +139,6 @@ index 85a929a485..378d3cb786 100644
|
||||
|
||||
def get_master():
|
||||
--
|
||||
2.20.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 55d8a777d6a9b19c959e14a4060e5579e92cd106 Mon Sep 17 00:00:00 2001
|
||||
From 1947ddfd6883de285c82ba4bb6423454216e37c4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Thu, 3 Oct 2019 15:19:02 +0100
|
||||
@ -31,6 +31,6 @@ index 2bb50459c8..f9e736f804 100644
|
||||
self.ioloop = None
|
||||
gc.collect()
|
||||
--
|
||||
2.22.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From cd8e175738f7742fbb7c9e9d329039371bc0e579 Mon Sep 17 00:00:00 2001
|
||||
From a4735644b2e6527e36796722516540f153ccabb9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
|
||||
<psuarezhernandez@suse.com>
|
||||
Date: Tue, 30 Apr 2019 10:51:42 +0100
|
||||
@ -10,19 +10,19 @@ Subject: [PATCH] Use ThreadPool from multiprocessing.pool to avoid
|
||||
1 file changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/salt/grains/core.py b/salt/grains/core.py
|
||||
index 796458939d..fec7b204bc 100644
|
||||
index ac66a437fd..38b82b7f7c 100644
|
||||
--- a/salt/grains/core.py
|
||||
+++ b/salt/grains/core.py
|
||||
@@ -26,7 +26,7 @@ from errno import EACCES, EPERM
|
||||
import datetime
|
||||
@@ -27,7 +27,7 @@ import datetime
|
||||
import warnings
|
||||
import time
|
||||
|
||||
-from multiprocessing.dummy import Pool as ThreadPool
|
||||
+from multiprocessing.pool import ThreadPool
|
||||
|
||||
# pylint: disable=import-error
|
||||
try:
|
||||
@@ -2225,10 +2225,14 @@ def fqdns():
|
||||
@@ -2280,10 +2280,14 @@ def fqdns():
|
||||
# Create a ThreadPool to process the underlying calls to 'socket.gethostbyaddr' in parallel.
|
||||
# This avoid blocking the execution when the "fqdn" is not defined for certains IP addresses, which was causing
|
||||
# that "socket.timeout" was reached multiple times secuencially, blocking execution for several seconds.
|
||||
@ -42,6 +42,6 @@ index 796458939d..fec7b204bc 100644
|
||||
for item in results:
|
||||
if item:
|
||||
--
|
||||
2.17.1
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:263b7f6fd915eb8876795714cc4d2b6bb8ccb97423858b479eefb1c5429424d5
|
||||
size 15065369
|
3
v2019.2.2.tar.gz
Normal file
3
v2019.2.2.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:aced5a5a79def23af3d4bd7a77bd9cb3e14a1e5b2dd57a72a67c5242930fa2a4
|
||||
size 14656820
|
@ -1,12 +1,12 @@
|
||||
From 9fcf9a768d0f11e04e145612cc5b2c05cfbf5378 Mon Sep 17 00:00:00 2001
|
||||
From 4e32b8efa3ef393f2d19d5f06a16668a514044c1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= <cbosdonnat@suse.com>
|
||||
Date: Thu, 4 Apr 2019 16:18:58 +0200
|
||||
Subject: [PATCH] virt.volume_infos fix for single VM
|
||||
|
||||
virt.volume_infos: don't raise an error if there is no VM
|
||||
---
|
||||
salt/modules/virt.py | 8 ++++--
|
||||
tests/unit/modules/test_virt.py | 46 +++++++++++++++++++++++++++++++++
|
||||
salt/modules/virt.py | 8 +++++--
|
||||
tests/unit/modules/test_virt.py | 46 +++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 52 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
@ -86,6 +86,6 @@ index cc62b67918..b343b9bc31 100644
|
||||
'''
|
||||
Test virt.volume_delete
|
||||
--
|
||||
2.21.0
|
||||
2.16.4
|
||||
|
||||
|
||||
|
@ -1,243 +0,0 @@
|
||||
From fbad82a38b4460260726cb3b9456cad7986eb4cd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= <cbosdonnat@suse.com>
|
||||
Date: Wed, 13 Mar 2019 09:43:51 +0100
|
||||
Subject: [PATCH] virt: handle whitespaces in VM names
|
||||
|
||||
The disk creation code is now ready to handle whitespaces in virtual
|
||||
machine name.
|
||||
---
|
||||
salt/modules/virt.py | 8 +++---
|
||||
tests/unit/modules/test_virt.py | 46 ++++++++++++++++-----------------
|
||||
2 files changed, 27 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
|
||||
index 423016cd90..d160f0905f 100644
|
||||
--- a/salt/modules/virt.py
|
||||
+++ b/salt/modules/virt.py
|
||||
@@ -760,14 +760,14 @@ def _qemu_image_create(disk, create_overlay=False, saltenv='base'):
|
||||
|
||||
qcow2 = False
|
||||
if salt.utils.path.which('qemu-img'):
|
||||
- res = __salt__['cmd.run']('qemu-img info {}'.format(sfn))
|
||||
+ res = __salt__['cmd.run']('qemu-img info "{}"'.format(sfn))
|
||||
imageinfo = salt.utils.yaml.safe_load(res)
|
||||
qcow2 = imageinfo['file format'] == 'qcow2'
|
||||
try:
|
||||
if create_overlay and qcow2:
|
||||
log.info('Cloning qcow2 image %s using copy on write', sfn)
|
||||
__salt__['cmd.run'](
|
||||
- 'qemu-img create -f qcow2 -o backing_file={0} {1}'
|
||||
+ 'qemu-img create -f qcow2 -o backing_file="{0}" "{1}"'
|
||||
.format(sfn, img_dest).split())
|
||||
else:
|
||||
log.debug('Copying %s to %s', sfn, img_dest)
|
||||
@@ -778,7 +778,7 @@ def _qemu_image_create(disk, create_overlay=False, saltenv='base'):
|
||||
if disk_size and qcow2:
|
||||
log.debug('Resize qcow2 image to %sM', disk_size)
|
||||
__salt__['cmd.run'](
|
||||
- 'qemu-img resize {0} {1}M'
|
||||
+ 'qemu-img resize "{0}" {1}M'
|
||||
.format(img_dest, disk_size)
|
||||
)
|
||||
|
||||
@@ -800,7 +800,7 @@ def _qemu_image_create(disk, create_overlay=False, saltenv='base'):
|
||||
if disk_size:
|
||||
log.debug('Create empty image with size %sM', disk_size)
|
||||
__salt__['cmd.run'](
|
||||
- 'qemu-img create -f {0} {1} {2}M'
|
||||
+ 'qemu-img create -f {0} "{1}" {2}M'
|
||||
.format(disk.get('format', 'qcow2'), img_dest, disk_size)
|
||||
)
|
||||
else:
|
||||
diff --git a/tests/unit/modules/test_virt.py b/tests/unit/modules/test_virt.py
|
||||
index bbe8d813d7..cc62b67918 100644
|
||||
--- a/tests/unit/modules/test_virt.py
|
||||
+++ b/tests/unit/modules/test_virt.py
|
||||
@@ -1106,7 +1106,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
with patch.dict(virt.__salt__, {'cmd.run': mock_run}): # pylint: disable=no-member
|
||||
|
||||
# Ensure the init() function allows creating VM without NIC and disk
|
||||
- virt.init('testvm',
|
||||
+ virt.init('test vm',
|
||||
2,
|
||||
1234,
|
||||
nic=None,
|
||||
@@ -1120,7 +1120,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
# Test case creating disks
|
||||
defineMock.reset_mock()
|
||||
mock_run.reset_mock()
|
||||
- virt.init('testvm',
|
||||
+ virt.init('test vm',
|
||||
2,
|
||||
1234,
|
||||
nic=None,
|
||||
@@ -1134,10 +1134,10 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
definition = ET.fromstring(defineMock.call_args_list[0][0][0])
|
||||
disk_sources = [disk.find('source').get('file') if disk.find('source') is not None else None
|
||||
for disk in definition.findall('./devices/disk')]
|
||||
- expected_disk_path = os.path.join(root_dir, 'testvm_system.qcow2')
|
||||
+ expected_disk_path = os.path.join(root_dir, 'test vm_system.qcow2')
|
||||
self.assertEqual(disk_sources, [expected_disk_path, None])
|
||||
self.assertEqual(mock_run.call_args[0][0],
|
||||
- 'qemu-img create -f qcow2 {0} 10240M'.format(expected_disk_path))
|
||||
+ 'qemu-img create -f qcow2 "{0}" 10240M'.format(expected_disk_path))
|
||||
self.assertEqual(mock_chmod.call_args[0][0], expected_disk_path)
|
||||
|
||||
def test_update(self):
|
||||
@@ -1147,7 +1147,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
root_dir = os.path.join(salt.syspaths.ROOT_DIR, 'srv', 'salt-images')
|
||||
xml = '''
|
||||
<domain type='kvm' id='7'>
|
||||
- <name>myvm</name>
|
||||
+ <name>my vm</name>
|
||||
<memory unit='KiB'>1048576</memory>
|
||||
<currentMemory unit='KiB'>1048576</currentMemory>
|
||||
<vcpu placement='auto'>1</vcpu>
|
||||
@@ -1157,7 +1157,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='qemu' type='qcow2'/>
|
||||
- <source file='{0}{1}myvm_system.qcow2'/>
|
||||
+ <source file='{0}{1}my vm_system.qcow2'/>
|
||||
<backingStore/>
|
||||
<target dev='vda' bus='virtio'/>
|
||||
<alias name='virtio-disk0'/>
|
||||
@@ -1165,7 +1165,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
</disk>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='qemu' type='qcow2'/>
|
||||
- <source file='{0}{1}myvm_data.qcow2'/>
|
||||
+ <source file='{0}{1}my vm_data.qcow2'/>
|
||||
<backingStore/>
|
||||
<target dev='vdb' bus='virtio'/>
|
||||
<alias name='virtio-disk1'/>
|
||||
@@ -1198,7 +1198,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
</devices>
|
||||
</domain>
|
||||
'''.format(root_dir, os.sep)
|
||||
- domain_mock = self.set_mock_vm('myvm', xml)
|
||||
+ domain_mock = self.set_mock_vm('my vm', xml)
|
||||
domain_mock.OSType = MagicMock(return_value='hvm')
|
||||
define_mock = MagicMock(return_value=True)
|
||||
self.mock_conn.defineXML = define_mock
|
||||
@@ -1211,7 +1211,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'cpu': True,
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', cpu=2))
|
||||
+ }, virt.update('my vm', cpu=2))
|
||||
setxml = ET.fromstring(define_mock.call_args[0][0])
|
||||
self.assertEqual(setxml.find('vcpu').text, '2')
|
||||
self.assertEqual(setvcpus_mock.call_args[0][0], 2)
|
||||
@@ -1225,7 +1225,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'mem': True,
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', mem=2048))
|
||||
+ }, virt.update('my vm', mem=2048))
|
||||
setxml = ET.fromstring(define_mock.call_args[0][0])
|
||||
self.assertEqual(setxml.find('memory').text, '2048')
|
||||
self.assertEqual(setxml.find('memory').get('unit'), 'MiB')
|
||||
@@ -1240,21 +1240,21 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
mock_run = MagicMock()
|
||||
with patch.dict(os.__dict__, {'chmod': mock_chmod, 'makedirs': MagicMock()}): # pylint: disable=no-member
|
||||
with patch.dict(virt.__salt__, {'cmd.run': mock_run}): # pylint: disable=no-member
|
||||
- ret = virt.update('myvm', disk_profile='default', disks=[
|
||||
+ ret = virt.update('my vm', disk_profile='default', disks=[
|
||||
{'name': 'cddrive', 'device': 'cdrom', 'source_file': None, 'model': 'ide'},
|
||||
{'name': 'added', 'size': 2048}])
|
||||
added_disk_path = os.path.join(
|
||||
- virt.__salt__['config.get']('virt:images'), 'myvm_added.qcow2') # pylint: disable=no-member
|
||||
+ virt.__salt__['config.get']('virt:images'), 'my vm_added.qcow2') # pylint: disable=no-member
|
||||
self.assertEqual(mock_run.call_args[0][0],
|
||||
- 'qemu-img create -f qcow2 {0} 2048M'.format(added_disk_path))
|
||||
+ 'qemu-img create -f qcow2 "{0}" 2048M'.format(added_disk_path))
|
||||
self.assertEqual(mock_chmod.call_args[0][0], added_disk_path)
|
||||
self.assertListEqual(
|
||||
- [None, os.path.join(root_dir, 'myvm_added.qcow2')],
|
||||
+ [None, os.path.join(root_dir, 'my vm_added.qcow2')],
|
||||
[ET.fromstring(disk).find('source').get('file') if str(disk).find('<source') > -1 else None
|
||||
for disk in ret['disk']['attached']])
|
||||
|
||||
self.assertListEqual(
|
||||
- [os.path.join(root_dir, 'myvm_data.qcow2')],
|
||||
+ [os.path.join(root_dir, 'my vm_data.qcow2')],
|
||||
[ET.fromstring(disk).find('source').get('file') for disk in ret['disk']['detached']])
|
||||
self.assertEqual(devattach_mock.call_count, 2)
|
||||
devdetach_mock.assert_called_once()
|
||||
@@ -1271,7 +1271,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
devattach_mock.reset_mock()
|
||||
devdetach_mock.reset_mock()
|
||||
with patch.dict(salt.modules.config.__opts__, mock_config): # pylint: disable=no-member
|
||||
- ret = virt.update('myvm', nic_profile='myprofile',
|
||||
+ ret = virt.update('my vm', nic_profile='myprofile',
|
||||
interfaces=[{'name': 'eth0', 'type': 'network', 'source': 'default',
|
||||
'mac': '52:54:00:39:02:b1'},
|
||||
{'name': 'eth1', 'type': 'network', 'source': 'newnet'}])
|
||||
@@ -1285,7 +1285,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
# Remove nics case
|
||||
devattach_mock.reset_mock()
|
||||
devdetach_mock.reset_mock()
|
||||
- ret = virt.update('myvm', nic_profile=None, interfaces=[])
|
||||
+ ret = virt.update('my vm', nic_profile=None, interfaces=[])
|
||||
self.assertEqual([], ret['interface']['attached'])
|
||||
self.assertEqual(2, len(ret['interface']['detached']))
|
||||
devattach_mock.assert_not_called()
|
||||
@@ -1294,7 +1294,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
# Remove disks case (yeah, it surely is silly)
|
||||
devattach_mock.reset_mock()
|
||||
devdetach_mock.reset_mock()
|
||||
- ret = virt.update('myvm', disk_profile=None, disks=[])
|
||||
+ ret = virt.update('my vm', disk_profile=None, disks=[])
|
||||
self.assertEqual([], ret['disk']['attached'])
|
||||
self.assertEqual(2, len(ret['disk']['detached']))
|
||||
devattach_mock.assert_not_called()
|
||||
@@ -1305,7 +1305,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'definition': True,
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', graphics={'type': 'vnc'}))
|
||||
+ }, virt.update('my vm', graphics={'type': 'vnc'}))
|
||||
setxml = ET.fromstring(define_mock.call_args[0][0])
|
||||
self.assertEqual('vnc', setxml.find('devices/graphics').get('type'))
|
||||
|
||||
@@ -1314,7 +1314,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'definition': False,
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', cpu=1, mem=1024,
|
||||
+ }, virt.update('my vm', cpu=1, mem=1024,
|
||||
disk_profile='default', disks=[{'name': 'data', 'size': 2048}],
|
||||
nic_profile='myprofile',
|
||||
interfaces=[{'name': 'eth0', 'type': 'network', 'source': 'default',
|
||||
@@ -1328,7 +1328,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
self.mock_conn.defineXML.side_effect = self.mock_libvirt.libvirtError("Test error")
|
||||
setmem_mock.reset_mock()
|
||||
with self.assertRaises(self.mock_libvirt.libvirtError):
|
||||
- virt.update('myvm', mem=2048)
|
||||
+ virt.update('my vm', mem=2048)
|
||||
|
||||
# Failed single update failure case
|
||||
self.mock_conn.defineXML = MagicMock(return_value=True)
|
||||
@@ -1338,7 +1338,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'errors': ['Failed to live change memory'],
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', mem=2048))
|
||||
+ }, virt.update('my vm', mem=2048))
|
||||
|
||||
# Failed multiple updates failure case
|
||||
self.assertEqual({
|
||||
@@ -1347,7 +1347,7 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
|
||||
'cpu': True,
|
||||
'disk': {'attached': [], 'detached': []},
|
||||
'interface': {'attached': [], 'detached': []}
|
||||
- }, virt.update('myvm', cpu=4, mem=2048))
|
||||
+ }, virt.update('my vm', cpu=4, mem=2048))
|
||||
|
||||
def test_mixed_dict_and_list_as_profile_objects(self):
|
||||
'''
|
||||
--
|
||||
2.21.0
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user