From e68d405c5d712af4387159df07e226217bdda049 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 6 Apr 2022 22:33:41 +0100 Subject: gentoo resync : 06.04.2022 --- .../salt/files/salt-3002.8-relax-pyzmq-dep.patch | 11 + app-admin/salt/files/salt-3002.8-tests.patch | 33 +++ app-admin/salt/files/salt-3003.3-jinja.patch | 155 +++++++++++ .../salt/files/salt-3003.4-relax-pyzmq-dep.patch | 12 + app-admin/salt/files/salt-3003.4-tests.patch | 52 ++++ app-admin/salt/files/salt-3004.1-jinja-3.patch | 40 +++ .../salt/files/salt-3004.1-relax-pyzmq-dep.patch | 12 + app-admin/salt/files/salt-3004.1-tests.patch | 291 +++++++++++++++++++++ 8 files changed, 606 insertions(+) create mode 100644 app-admin/salt/files/salt-3002.8-relax-pyzmq-dep.patch create mode 100644 app-admin/salt/files/salt-3002.8-tests.patch create mode 100644 app-admin/salt/files/salt-3003.3-jinja.patch create mode 100644 app-admin/salt/files/salt-3003.4-relax-pyzmq-dep.patch create mode 100644 app-admin/salt/files/salt-3003.4-tests.patch create mode 100644 app-admin/salt/files/salt-3004.1-jinja-3.patch create mode 100644 app-admin/salt/files/salt-3004.1-relax-pyzmq-dep.patch create mode 100644 app-admin/salt/files/salt-3004.1-tests.patch (limited to 'app-admin/salt/files') diff --git a/app-admin/salt/files/salt-3002.8-relax-pyzmq-dep.patch b/app-admin/salt/files/salt-3002.8-relax-pyzmq-dep.patch new file mode 100644 index 000000000000..e42a22b4e8b7 --- /dev/null +++ b/app-admin/salt/files/salt-3002.8-relax-pyzmq-dep.patch @@ -0,0 +1,11 @@ +diff --git a/requirements/zeromq.txt b/requirements/zeromq.txt +index 77c9bd8be1..ffa1589043 100644 +--- a/requirements/zeromq.txt ++++ b/requirements/zeromq.txt +@@ -1,5 +1,4 @@ + -r base.txt + -r crypto.txt + +-pyzmq>=17.0.0 ; python_version < "3.9" +-pyzmq>=19.0.2 ; python_version >= "3.9" ++pyzmq diff --git a/app-admin/salt/files/salt-3002.8-tests.patch b/app-admin/salt/files/salt-3002.8-tests.patch new file mode 100644 index 000000000000..c94a0c106347 --- /dev/null +++ b/app-admin/salt/files/salt-3002.8-tests.patch @@ -0,0 +1,33 @@ +diff --git a/salt/transport/mixins/auth.py b/salt/transport/mixins/auth.py +index de86773750..3ca09260a0 100644 +--- a/salt/transport/mixins/auth.py ++++ b/salt/transport/mixins/auth.py +@@ -54,7 +54,7 @@ class AESPubClientMixin: + @salt.ext.tornado.gen.coroutine + def _decode_payload(self, payload): + # we need to decrypt it +- log.trace("Decoding payload: %s", payload) ++ log.debug("Decoding payload: %s", payload) + if payload["enc"] == "aes": + self._verify_master_signature(payload) + try: +diff --git a/tests/unit/utils/test_schema.py b/tests/unit/utils/test_schema.py +index 97bce1f10b..2ff5904b87 100644 +--- a/tests/unit/utils/test_schema.py ++++ b/tests/unit/utils/test_schema.py +@@ -835,6 +835,7 @@ class ConfigTestCase(TestCase): + ) + + @skipIf(HAS_JSONSCHEMA is False, "The 'jsonschema' library is missing") ++ @skipIf(True, "Broken with newer versions of jsonschema") + def test_hostname_config_validation(self): + class TestConf(schema.Schema): + item = schema.HostnameItem(title="Item", description="Item description") +@@ -2060,6 +2061,7 @@ class ConfigTestCase(TestCase): + item = schema.NotItem(item=schema.BooleanItem()) + self.assertEqual(item.serialize(), {"not": item.item.serialize()}) + ++ @skipIf(True, "Broken with newer versions of jsonschema") + @skipIf(HAS_JSONSCHEMA is False, "The 'jsonschema' library is missing") + def test_not_config_validation(self): + class TestConf(schema.Schema): diff --git a/app-admin/salt/files/salt-3003.3-jinja.patch b/app-admin/salt/files/salt-3003.3-jinja.patch new file mode 100644 index 000000000000..ec5b1ac6156f --- /dev/null +++ b/app-admin/salt/files/salt-3003.3-jinja.patch @@ -0,0 +1,155 @@ +https://github.com/saltstack/salt/issues/61848 +https://patch-diff.githubusercontent.com/raw/saltstack/salt/pull/61856.patch + +Dropped a bunch of irrelevant hunks (CI files and a test not in 3003.3) + +From 03c2a607a0722ad5e55b6c8f8eda630be7c7fee5 Mon Sep 17 00:00:00 2001 +From: jonyhy96 +Date: Thu, 10 Mar 2022 10:41:48 +0800 +Subject: [PATCH 1/5] fix: jinja2 contextfuntion base on version + +--- + salt/utils/jinja.py | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 4c430b5ccf32..9a1938c2d69b 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -707,7 +707,11 @@ def method_call(obj, f_name, *f_args, **f_kwargs): + return getattr(obj, f_name, lambda *args, **kwargs: None)(*f_args, **f_kwargs) + + +-@jinja2.contextfunction ++if jinja2.__version__ < '3.0.0' : ++ contextfunction = jinja2.contextfunction ++else: ++ contextfunction = jinja2.pass_context ++@contextfunction + def show_full_context(ctx): + return salt.utils.data.simple_types_filter( + {key: value for key, value in ctx.items()} + +From 1aba938021b86732a211a899dc4c2a46afa488a2 Mon Sep 17 00:00:00 2001 +From: jonyhy96 +Date: Thu, 3 Mar 2022 16:21:17 +0800 +Subject: [PATCH 2/5] fix: jinja2 DeprecationWarning + +--- + salt/utils/jinja.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 9a1938c2d69b..207a2cb77035 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -710,7 +710,7 @@ def method_call(obj, f_name, *f_args, **f_kwargs): + if jinja2.__version__ < '3.0.0' : + contextfunction = jinja2.contextfunction + else: +- contextfunction = jinja2.pass_context ++ contextfunction = jinja2.pass_context + @contextfunction + def show_full_context(ctx): + return salt.utils.data.simple_types_filter( + +From 7f281bbfc8efda40cfe7d607c0ddebb2fb00bd5d Mon Sep 17 00:00:00 2001 +From: Megan Wilhite +Date: Fri, 25 Mar 2022 08:31:24 -0600 +Subject: [PATCH 3/5] Use the correct Markup from jinja for each version + +--- + salt/utils/jinja.py | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 207a2cb77035..558f063d7206 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -26,7 +26,7 @@ + import salt.utils.stringutils + import salt.utils.url + import salt.utils.yaml +-from jinja2 import BaseLoader, Markup, TemplateNotFound, nodes ++from jinja2 import BaseLoader, TemplateNotFound, nodes + from jinja2.environment import TemplateModule + from jinja2.exceptions import TemplateRuntimeError + from jinja2.ext import Extension +@@ -35,6 +35,12 @@ + from salt.utils.odict import OrderedDict + from salt.utils.versions import LooseVersion + ++try: ++ from jinja2 import Markup ++except ImportError: ++ # Markup moved to markupsafe in jinja>= 3.1 ++ from markupsafe import Markup ++ + log = logging.getLogger(__name__) + + __all__ = ["SaltCacheLoader", "SerializerExtension"] + +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 558f063d7206..5d00b134e25f 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -713,10 +713,12 @@ def method_call(obj, f_name, *f_args, **f_kwargs): + return getattr(obj, f_name, lambda *args, **kwargs: None)(*f_args, **f_kwargs) + + +-if jinja2.__version__ < '3.0.0' : ++if jinja2.__version__ < "3.0.0": + contextfunction = jinja2.contextfunction + else: + contextfunction = jinja2.pass_context ++ ++ + @contextfunction + def show_full_context(ctx): + return salt.utils.data.simple_types_filter( + +From 9056e636beaea7de2e3a61876ba0345e5d390973 Mon Sep 17 00:00:00 2001 +From: Megan Wilhite +Date: Fri, 25 Mar 2022 11:14:01 -0600 +Subject: [PATCH 5/5] Fix requested feedback + +--- + requirements/static/ci/docs.in | 1 + + requirements/static/ci/py3.10/docs.txt | 3 ++- + requirements/static/ci/py3.6/docs.txt | 1 + + requirements/static/ci/py3.7/docs.txt | 3 ++- + requirements/static/ci/py3.8/docs.txt | 3 ++- + requirements/static/ci/py3.9/docs.txt | 3 ++- + salt/utils/jinja.py | 10 +++++----- + 8 files changed, 21 insertions(+), 10 deletions(-) + +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 5d00b134e25f..aa8ebe90546c 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -36,10 +36,10 @@ + from salt.utils.versions import LooseVersion + + try: +- from jinja2 import Markup +-except ImportError: +- # Markup moved to markupsafe in jinja>= 3.1 + from markupsafe import Markup ++except ImportError: ++ # jinja < 3.1 ++ from jinja2 import Markup + + log = logging.getLogger(__name__) + +@@ -713,9 +713,9 @@ def method_call(obj, f_name, *f_args, **f_kwargs): + return getattr(obj, f_name, lambda *args, **kwargs: None)(*f_args, **f_kwargs) + + +-if jinja2.__version__ < "3.0.0": ++try: + contextfunction = jinja2.contextfunction +-else: ++except AttributeError: + contextfunction = jinja2.pass_context + + diff --git a/app-admin/salt/files/salt-3003.4-relax-pyzmq-dep.patch b/app-admin/salt/files/salt-3003.4-relax-pyzmq-dep.patch new file mode 100644 index 000000000000..7585af58ab11 --- /dev/null +++ b/app-admin/salt/files/salt-3003.4-relax-pyzmq-dep.patch @@ -0,0 +1,12 @@ +diff --git a/requirements/zeromq.txt b/requirements/zeromq.txt +index 35d9014713..ffa1589043 100644 +--- a/requirements/zeromq.txt ++++ b/requirements/zeromq.txt +@@ -1,6 +1,4 @@ + -r base.txt + -r crypto.txt + +-pyzmq<=20.0.0 ; python_version < "3.6" +-pyzmq>=17.0.0 ; python_version < "3.9" +-pyzmq>=19.0.2 ; python_version >= "3.9" ++pyzmq diff --git a/app-admin/salt/files/salt-3003.4-tests.patch b/app-admin/salt/files/salt-3003.4-tests.patch new file mode 100644 index 000000000000..93fd4214021b --- /dev/null +++ b/app-admin/salt/files/salt-3003.4-tests.patch @@ -0,0 +1,52 @@ +diff --git a/tests/conftest.py b/tests/conftest.py +index 0fc1844bc8..32346da1f6 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -34,7 +34,6 @@ import salt.utils.files + import salt.utils.path + import salt.utils.platform + import salt.utils.win_functions +-import saltfactories.utils.compat + from salt.serializers import yaml + from salt.utils.immutabletypes import freeze + from tests.support.helpers import ( +@@ -465,9 +464,7 @@ def pytest_runtest_setup(item): + item._skipped_by_mark = True + pytest.skip(PRE_PYTEST_SKIP_REASON) + +- if saltfactories.utils.compat.has_unittest_attr( +- item, "__slow_test__" +- ) or item.get_closest_marker("slow_test"): ++ if item.get_closest_marker("slow_test"): + if item.config.getoption("--run-slow") is False: + item._skipped_by_mark = True + pytest.skip("Slow tests are disabled!") +diff --git a/tests/unit/utils/test_schema.py b/tests/unit/utils/test_schema.py +index ef7acdb7a3..22953556cb 100644 +--- a/tests/unit/utils/test_schema.py ++++ b/tests/unit/utils/test_schema.py +@@ -1,6 +1,8 @@ + # pylint: disable=function-redefined + import copy + ++import pytest ++ + import salt.utils.json + import salt.utils.schema as schema + import salt.utils.stringutils +@@ -822,6 +824,7 @@ class ConfigTestCase(TestCase): + }, + ) + ++ @pytest.mark.skip("broken with newer versions of jsonschema") + @skipIf(HAS_JSONSCHEMA is False, "The 'jsonschema' library is missing") + def test_hostname_config_validation(self): + class TestConf(schema.Schema): +@@ -2048,6 +2051,7 @@ class ConfigTestCase(TestCase): + item = schema.NotItem(item=schema.BooleanItem()) + self.assertEqual(item.serialize(), {"not": item.item.serialize()}) + ++ @pytest.mark.skip("broken with newer versions of jsonschema") + @skipIf(HAS_JSONSCHEMA is False, "The 'jsonschema' library is missing") + def test_not_config_validation(self): + class TestConf(schema.Schema): diff --git a/app-admin/salt/files/salt-3004.1-jinja-3.patch b/app-admin/salt/files/salt-3004.1-jinja-3.patch new file mode 100644 index 000000000000..98f21bc35129 --- /dev/null +++ b/app-admin/salt/files/salt-3004.1-jinja-3.patch @@ -0,0 +1,40 @@ +diff --git a/salt/utils/jinja.py b/salt/utils/jinja.py +index 0cb70bf64a..322c2f7f46 100644 +--- a/salt/utils/jinja.py ++++ b/salt/utils/jinja.py +@@ -25,10 +25,11 @@ import salt.utils.json + import salt.utils.stringutils + import salt.utils.url + import salt.utils.yaml +-from jinja2 import BaseLoader, Markup, TemplateNotFound, nodes ++from jinja2 import BaseLoader, TemplateNotFound, nodes + from jinja2.environment import TemplateModule + from jinja2.exceptions import TemplateRuntimeError + from jinja2.ext import Extension ++from markupsafe import Markup + from salt.exceptions import TemplateError + from salt.utils.decorators.jinja import jinja_filter, jinja_global, jinja_test + from salt.utils.odict import OrderedDict +@@ -706,7 +707,7 @@ def method_call(obj, f_name, *f_args, **f_kwargs): + return getattr(obj, f_name, lambda *args, **kwargs: None)(*f_args, **f_kwargs) + + +-@jinja2.contextfunction ++@jinja2.pass_context + def show_full_context(ctx): + return salt.utils.data.simple_types_filter( + {key: value for key, value in ctx.items()} +diff --git a/tests/unit/utils/test_jinja.py b/tests/unit/utils/test_jinja.py +index 6502831aff..dec847364a 100644 +--- a/tests/unit/utils/test_jinja.py ++++ b/tests/unit/utils/test_jinja.py +@@ -22,7 +22,8 @@ import salt.utils.files + import salt.utils.json + import salt.utils.stringutils + import salt.utils.yaml +-from jinja2 import DictLoader, Environment, Markup, exceptions ++from jinja2 import DictLoader, Environment, exceptions ++from markupsafe import Markup + from salt.exceptions import SaltRenderError + from salt.utils.decorators.jinja import JinjaFilter + from salt.utils.jinja import ( diff --git a/app-admin/salt/files/salt-3004.1-relax-pyzmq-dep.patch b/app-admin/salt/files/salt-3004.1-relax-pyzmq-dep.patch new file mode 100644 index 000000000000..99d432158215 --- /dev/null +++ b/app-admin/salt/files/salt-3004.1-relax-pyzmq-dep.patch @@ -0,0 +1,12 @@ +diff --git a/requirements/zeromq.txt b/requirements/zeromq.txt +index 62cb775d87..ffa1589043 100644 +--- a/requirements/zeromq.txt ++++ b/requirements/zeromq.txt +@@ -1,6 +1,4 @@ + -r base.txt + -r crypto.txt + +-pyzmq<=20.0.0 ; python_version < "3.6" +-pyzmq>=17.0.0,<22.0.0 ; python_version < "3.9" +-pyzmq>19.0.2,<22.0.0 ; python_version >= "3.9" ++pyzmq diff --git a/app-admin/salt/files/salt-3004.1-tests.patch b/app-admin/salt/files/salt-3004.1-tests.patch new file mode 100644 index 000000000000..3a36977246f2 --- /dev/null +++ b/app-admin/salt/files/salt-3004.1-tests.patch @@ -0,0 +1,291 @@ +diff --git a/tests/pytests/functional/fileserver/test_roots.py b/tests/pytests/functional/fileserver/test_roots.py +index c65efc8d52..9060fb61e2 100644 +--- a/tests/pytests/functional/fileserver/test_roots.py ++++ b/tests/pytests/functional/fileserver/test_roots.py +@@ -15,6 +15,7 @@ def configure_loader_modules(base_env_state_tree_root_dir): + return {roots: {"__opts__": opts}} + + ++@pytest.mark.skip("needs network access") + # nox -e pytest-zeromq-3.8(coverage=False) -- -vvv --run-slow --run-destructive tests\pytests\functional\fileserver\test_roots.py + def test_symlink_list(base_env_state_tree_root_dir): + with pytest.helpers.temp_file( +diff --git a/tests/pytests/functional/pillar/test_gpg.py b/tests/pytests/functional/pillar/test_gpg.py +index aaa4733f1d..b55cc9b4cf 100644 +--- a/tests/pytests/functional/pillar/test_gpg.py ++++ b/tests/pytests/functional/pillar/test_gpg.py +@@ -203,7 +203,7 @@ def gpg_homedir(salt_master, pillar_state_tree): + universal_newlines=True, + ) + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +@@ -220,7 +220,7 @@ def gpg_homedir(salt_master, pillar_state_tree): + input=TEST_KEY, + ) + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +@@ -250,7 +250,7 @@ def gpg_homedir(salt_master, pillar_state_tree): + input="KILLAGENT", + ) + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +diff --git a/tests/pytests/integration/cli/test_salt_proxy.py b/tests/pytests/integration/cli/test_salt_proxy.py +index c32c7e11e2..a9ee9fbd8d 100644 +--- a/tests/pytests/integration/cli/test_salt_proxy.py ++++ b/tests/pytests/integration/cli/test_salt_proxy.py +@@ -40,6 +40,7 @@ def test_exit_status_no_proxyid(salt_master, proxy_minion_id): + assert "error: salt-proxy requires --proxyid" in exc.value.stderr, exc.value + + ++@pytest.mark.skip("Currently broken") + @pytest.mark.skip_on_windows(reason="Windows does not do user checks") + def test_exit_status_unknown_user(salt_master, proxy_minion_id): + """ +@@ -66,7 +67,7 @@ def test_exit_status_unknown_argument(salt_master, proxy_minion_id): + factory = salt_master.salt_proxy_minion_daemon(proxy_minion_id) + factory.start("--unknown-argument", start_timeout=10, max_start_attempts=1) + +- assert exc.value.exitcode == salt.defaults.exitcodes.EX_USAGE, exc.value ++ assert exc.value.returncode == salt.defaults.exitcodes.EX_USAGE, exc.value + assert "Usage" in exc.value.stderr, exc.value + assert "no such option: --unknown-argument" in exc.value.stderr, exc.value + +@@ -89,8 +90,8 @@ def test_exit_status_correct_usage(salt_master, proxy_minion_id, salt_cli): + assert factory.is_running() + # Let's issue a ping before terminating + ret = salt_cli.run("test.ping", minion_tgt=proxy_minion_id) +- assert ret.exitcode == 0 ++ assert ret.returncode == 0 + assert ret.json is True + # Terminate the proxy minion + ret = factory.terminate() +- assert ret.exitcode == salt.defaults.exitcodes.EX_OK, ret ++ assert ret.returncode == salt.defaults.exitcodes.EX_OK, ret +diff --git a/tests/pytests/integration/sdb/test_vault.py b/tests/pytests/integration/sdb/test_vault.py +index 7dc4c55417..6c48296a0c 100644 +--- a/tests/pytests/integration/sdb/test_vault.py ++++ b/tests/pytests/integration/sdb/test_vault.py +@@ -107,7 +107,7 @@ def vault_container_version(request, salt_call_cli, vault_port): + if proc.returncode == 0: + break + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +@@ -133,7 +133,7 @@ def vault_container_version(request, salt_call_cli, vault_port): + ) + if proc.returncode != 0: + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +@@ -150,7 +150,7 @@ def vault_container_version(request, salt_call_cli, vault_port): + universal_newlines=True, + ) + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +diff --git a/tests/pytests/unit/modules/test_cmdmod.py b/tests/pytests/unit/modules/test_cmdmod.py +index bc1d2818aa..3bd93862b7 100644 +--- a/tests/pytests/unit/modules/test_cmdmod.py ++++ b/tests/pytests/unit/modules/test_cmdmod.py +@@ -440,6 +440,7 @@ def test_run_cwd_doesnt_exist_issue_7154(): + cmdmod.run_all(cmd, cwd=cwd) + + ++@pytest.mark.skip("needs root access") + @pytest.mark.skip_on_darwin + @pytest.mark.skip_on_windows + def test_run_cwd_in_combination_with_runas(): +diff --git a/tests/pytests/unit/modules/test_portage_config.py b/tests/pytests/unit/modules/test_portage_config.py +index 5cc6b90596..db37d2c4f1 100644 +--- a/tests/pytests/unit/modules/test_portage_config.py ++++ b/tests/pytests/unit/modules/test_portage_config.py +@@ -29,6 +29,7 @@ def test_get_config_file_wildcards(): + assert portage_config._get_config_file("mask", atom) == expected + + ++@pytest.mark.skip("test needs root access") + def test_enforce_nice_config(tmp_path): + atoms = [ + ("*/*::repo", "repo"), +diff --git a/tests/pytests/unit/state/test_state_compiler.py b/tests/pytests/unit/state/test_state_compiler.py +index fc43cf154d..7aa511c9f7 100644 +--- a/tests/pytests/unit/state/test_state_compiler.py ++++ b/tests/pytests/unit/state/test_state_compiler.py +@@ -679,6 +679,7 @@ def test_verify_retry_parsing(): + assert set(expected_result).issubset(set(state_obj.call(low_data))) + + ++@pytest.mark.skip("test requires root access") + def test_render_requisite_require_disabled(): + """ + Test that the state compiler correctly deliver a rendering +@@ -719,6 +720,7 @@ def test_render_requisite_require_disabled(): + assert run_num == 0 + + ++@pytest.mark.skip("test requires root access") + def test_render_requisite_require_in_disabled(): + """ + Test that the state compiler correctly deliver a rendering +diff --git a/tests/pytests/unit/state/test_state_format_slots.py b/tests/pytests/unit/state/test_state_format_slots.py +index 57b7bb2b87..7d2abce8d0 100644 +--- a/tests/pytests/unit/state/test_state_format_slots.py ++++ b/tests/pytests/unit/state/test_state_format_slots.py +@@ -218,6 +218,7 @@ def test_slot_append(state_obj): + assert cdata == {"args": ["arg"], "kwargs": {"key": "value1thing~"}} + + ++@pytest.mark.skip("test needs root") + # Skip on windows like integration.modules.test_state.StateModuleTest.test_parallel_state_with_long_tag + @skipIf( + salt.utils.platform.is_windows(), +diff --git a/tests/pytests/unit/test_minion.py b/tests/pytests/unit/test_minion.py +index 985ec99276..eb8a476e30 100644 +--- a/tests/pytests/unit/test_minion.py ++++ b/tests/pytests/unit/test_minion.py +@@ -493,6 +493,7 @@ def test_scheduler_before_connect(): + minion.destroy() + + ++@pytest.mark.skip("test needs root access") + def test_minion_module_refresh(): + """ + Tests that the 'module_refresh' just return in case there is no 'schedule' +@@ -520,6 +521,7 @@ def test_minion_module_refresh(): + minion.destroy() + + ++@pytest.mark.skip("test needs root access") + def test_minion_module_refresh_beacons_refresh(): + """ + Tests that 'module_refresh' calls beacons_refresh and that the +diff --git a/tests/pytests/unit/test_version.py b/tests/pytests/unit/test_version.py +index bc6bbfeadd..2653b558b0 100644 +--- a/tests/pytests/unit/test_version.py ++++ b/tests/pytests/unit/test_version.py +@@ -140,6 +140,7 @@ def test_sha(commit, match): + assert ret is None + + ++@pytest.mark.skip("test is broken if some optional deps aren't installed") + def test_version_report_lines(): + """ + Validate padding in versions report is correct +diff --git a/tests/support/helpers.py b/tests/support/helpers.py +index d82b14cb90..751018162c 100644 +--- a/tests/support/helpers.py ++++ b/tests/support/helpers.py +@@ -40,7 +40,7 @@ import salt.utils.platform + import salt.utils.pycrypto + import salt.utils.stringutils + import salt.utils.versions +-from saltfactories.exceptions import FactoryFailure as ProcessFailed ++from pytestshellutils.exceptions import FactoryFailure as ProcessFailed + from saltfactories.utils.ports import get_unused_localhost_port + from saltfactories.utils.processes import ProcessResult + from tests.support.mock import patch +@@ -1720,7 +1720,7 @@ class VirtualEnv: + kwargs.setdefault("env", self.environ) + proc = subprocess.run(args, check=False, **kwargs) + ret = ProcessResult( +- exitcode=proc.returncode, ++ returncode=proc.returncode, + stdout=proc.stdout, + stderr=proc.stderr, + cmdline=proc.args, +@@ -1735,7 +1735,7 @@ class VirtualEnv: + cmdline=proc.args, + stdout=proc.stdout, + stderr=proc.stderr, +- exitcode=proc.returncode, ++ returncode=proc.returncode, + ) + return ret + +diff --git a/tests/unit/modules/test_boto_route53.py b/tests/unit/modules/test_boto_route53.py +index 1d3d1393a9..df331761e2 100644 +--- a/tests/unit/modules/test_boto_route53.py ++++ b/tests/unit/modules/test_boto_route53.py +@@ -4,6 +4,8 @@ from collections import namedtuple + + import pkg_resources # pylint: disable=3rd-party-module-not-gated + ++import pytest ++ + import salt.config + import salt.loader + import salt.utils.versions +@@ -99,6 +101,7 @@ class BotoRoute53TestCase(TestCase, LoaderModuleMockMixin): + def tearDown(self): + del self.opts + ++ @pytest.mark.skip("test currently broken") + @mock_route53_deprecated + def test_create_healthcheck(self): + """ +diff --git a/tests/unit/utils/test_parsers.py b/tests/unit/utils/test_parsers.py +index 907c67f477..3f68cfe8f3 100644 +--- a/tests/unit/utils/test_parsers.py ++++ b/tests/unit/utils/test_parsers.py +@@ -6,6 +6,8 @@ import os + import shutil + import tempfile + ++import pytest ++ + import salt.config + import salt.log.setup as log + import salt.syspaths +@@ -983,6 +985,7 @@ class SaltRunOptionParserTestCase(ParserBase, TestCase): + if os.path.exists(self.log_file): + os.unlink(self.log_file) + ++ @pytest.mark.skip("needs root access") + def test_jid_option(self): + jid = salt.utils.jid.gen_jid({}) + args = ["--jid", jid] +@@ -991,6 +994,7 @@ class SaltRunOptionParserTestCase(ParserBase, TestCase): + parser.parse_args(args) + assert parser.options.jid == jid + ++ @pytest.mark.skip("needs root access") + def test_jid_option_invalid(self): + jid = salt.utils.jid.gen_jid({}) + "A" + args = ["--jid", jid] +@@ -1041,6 +1045,7 @@ class SaltSSHOptionParserTestCase(ParserBase, TestCase): + if os.path.exists(self.ssh_log_file): + os.unlink(self.ssh_log_file) + ++ @pytest.mark.skip("needs root access") + def test_jid_option(self): + jid = salt.utils.jid.gen_jid({}) + args = ["--jid", jid] + self.args +@@ -1049,6 +1054,7 @@ class SaltSSHOptionParserTestCase(ParserBase, TestCase): + parser.parse_args(args) + assert parser.options.jid == jid + ++ @pytest.mark.skip("needs root access") + def test_jid_option_invalid(self): + jid = salt.utils.jid.gen_jid({}) + "A" + args = ["--jid", jid] + self.args -- cgit v1.2.3