From 3cf7c3ef441822c889356fd1812ebf2944a59851 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 25 Aug 2020 10:45:55 +0100 Subject: gentoo resync : 25.08.2020 --- app-admin/salt/Manifest | 3 +- .../files/salt-2019.2.0-remove-raet-tests.patch | 43 ++++++ app-admin/salt/salt-2019.2.5-r1.ebuild | 150 +++++++++++++++++++++ app-admin/salt/salt-2019.2.5.ebuild | 149 -------------------- 4 files changed, 195 insertions(+), 150 deletions(-) create mode 100644 app-admin/salt/files/salt-2019.2.0-remove-raet-tests.patch create mode 100644 app-admin/salt/salt-2019.2.5-r1.ebuild delete mode 100644 app-admin/salt/salt-2019.2.5.ebuild (limited to 'app-admin/salt') diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest index 17e025009bfc..838e295ff143 100644 --- a/app-admin/salt/Manifest +++ b/app-admin/salt/Manifest @@ -5,6 +5,7 @@ AUX master-initd-4 311 BLAKE2B 302e71b0328d47addd1508e1992ee56c719463d4b99af37b6 AUX minion-confd-1 188 BLAKE2B ad20094c30f9aa573397d347f9fb11acafba2f724b6c836d7ec57f10d4182c300a4b0ec572b5f3301174febdfc69c30752c3b0eabdfdf9f4963b03531db23523 SHA512 0051e13351cef8db81dc075a194bb384723f07d5591b5b4d3f3adf4180afaf7beced470ab79ceca9d1ec0dae62dbd72084eb76af009fc78411a011050a94a2ed AUX minion-initd-4 317 BLAKE2B 4c207bd26a72d5dded38e40f7869f46263272a841b978f138248d016a06e837c3aebebabd15314e3896b404058c3f5dd5e6a1cca48450b07b88b6edef6a8d7d2 SHA512 80790ed1b5f86b713ca6384d60253676b16b10c122810ed07b7119c3860bedfe40102f6b7de86d832f084d84f87bf9405ec282629f981767a534d2a53144845f AUX salt-2017.7.0-dont-realpath-tmpdir.patch 834 BLAKE2B e70496f3ab18b954e7cacd29dbdee6ccbe0a07f139903360312db247926867a78513cd9022f492ce370eeafcc81bc4db545359036f8f5b0d2d64d3c5bb8aefc0 SHA512 33b69954e8112c0f76654d507df74a4cdd37e8227848f2ce0652b3ecee8b847253ccad33cada0e3dd1471c54c780dcc12d5e546c4ec43868511b95b0c7f71e17 +AUX salt-2019.2.0-remove-raet-tests.patch 2186 BLAKE2B c472be7aa3bc31b0c412efdda564c85a2774ad40a1754d3744e151982830931809005373f78d08d6feb24b7b2e4a7e3e6eec10f693e2beea952f90867b0c9858 SHA512 ad39527aea87092b06cccbb63c46536f0a6cecc3dd9ddec6fdb131dd4d0d3d692624eaeeb2ac5ff64ebdfcc0f2f722ebb6fbc334d494f76ec3771c7905c02b90 AUX salt-2019.2.0-skip-tests-that-oom-machine.patch 739 BLAKE2B c0e1b18c528ddcdc19e93061112d2c42aeca96f9091218e7ad6b4eadf11255079cecd6b9b9def576c663b4ba794d151db8fc32336b1c29c3da8e9c18c09582f3 SHA512 0bd8fc2ab73be8ffc9fdda65a60c7306dbfa9f76d874994ba09db7ef71678fca80c8fde5963d22b5bbbe3b933140a56f2173f4c109b47dd9e9c3c9a70062b0e3 AUX salt-2019.2.0-tests.patch 2793 BLAKE2B c609564673db7388a876902deb57f0aec70531ea26536954efdabdd8849eee314e840cc299f6e1fbd6a18740847a9ee8d217426adee38d36ae569f6e2e9c85ae SHA512 eb1d61f5410b36d0749cce5fc7dc08a8950061f7fb3497a122702eba7638ec3e635750b25ad5cacc4839d4828f13785ea122df43e8aff7635d79283be0392f02 AUX salt-2019.2.2-newer-deps.patch 6635 BLAKE2B 377b06231914bbbfc0ca279bb169e0167f5dec0d421e221f7441a237c11d9670e5fd378d294c02fe16bd5989f2cb0db9864eb2270dbe09755475e9e6fcc059de SHA512 24faf550a0de753eb605df8fe658b71972048be781bb77df0c11f3ed7eda6b423897d1f88d84dad3f5d9e8d3db0784cbfe8d1a017c950661de56deb7edb23eaf @@ -24,7 +25,7 @@ DIST salt-2019.2.5.tar.gz 14574347 BLAKE2B d456dd493e79640260f3ad3c964fdaaa26dd7 DIST salt-3000.2-py38-misc.patch.gz 6250 BLAKE2B 68fff80a042e6bf208ea2d9692da7a7b1e29572f1ec3c850c14743bbf2821d231f933ec4e6d6eaad12acee0b7666888a37a72872b2b082c92d8db9de988fbbec SHA512 6d4a66323a423e630f7cc73b566ed96c452c8fc3d72c25a2dd86033c4774c1c8e8b8701e1d4ee92994d4148c398d704f419023e26d8b40c8fdd63f9d79d9d52f DIST salt-3000.2.tar.gz 15231513 BLAKE2B 2090d0f52f953a42f1685ad190750e9c76ad6e862a3272444fef063a7605f69a6c542f04165a41fb9cdaa126a878cc133d4857faa70edc5eac4bf49bdde937ab SHA512 88e8876ed8cd18e942c2194686cda68f40fa49e69e317ca488bf58e095bcf6cdf8771d93eba7960038941cc5863e13a4eea4dad5256c12da7cd8288a2c61f59d DIST salt-3000.3.tar.gz 15237557 BLAKE2B ab51e07f56f9e02c47da58fad95c9482ea70e0685996a78e34382eadb3a9a3dace63ef65d643a9de284ea00c34785eae631d033f32e00e59eb3639514459af33 SHA512 a4697da9a2f7d484b72145e8b83f6d9032369f87e2e7119a9d51f59b989488285406543f79142fc686c41c144f5878eefba37927137581c892c88f03fc3a8208 -EBUILD salt-2019.2.5.ebuild 4834 BLAKE2B 71c3b4a2e248f2ce8f3a6264a2a72b6dc2948d01194ab923128225db64edf2e2cf35bb28f4b0a172c4859e30f4dc10b3165af12f71d895f360d9ab94f1e2b926 SHA512 21b6984da017d69f5f25a322c6b64605ff8f57fc9f818c961a3ca7330930742117d97f8d8185262b75ba91df254eb2ef64192f74f3176433bbad9e9dcf6d4483 +EBUILD salt-2019.2.5-r1.ebuild 4910 BLAKE2B 67e56a9029c3157a31525c8ea41a957b82a3d2c846ae68756c8ea67261d6ea6346a98bbafd785fe519640ceef2e3495e58b0ec262858be30016eba10f1392567 SHA512 75e9eb392f3619b714a0ba43d64c5e08c51f512e71d98f1be763cb443d1c8a6c429ef5c2d272c162db34f3e274aebdf2f0c4866a32925232d134b9f91a4765ef EBUILD salt-3000.2-r4.ebuild 6321 BLAKE2B ddaa02503b5d8301697bae784a4901348eec72152e9d91d21eff82640d3609b093aa2acd818554d96edf86921cfcdbf9cc39b3e0f9292fff919f903919a6c250 SHA512 6b405a1bd5234500907b8da8865ec0aa2583efe7700fb3f09776297a4592352fe13ab199ff1fd9bf50421e2f11b363b804f41823d6fbf8d993d56bf6a1d07ed6 EBUILD salt-3000.3.ebuild 6323 BLAKE2B 8b051bae3bb397bb25bcfe341730b5c0670ca011fad15f268d9c9b33a27f9fc1c95cad659e797b1d5bca75ad9fd09d3667d7d2d7e43a1880955a70c4f40559d4 SHA512 76d5b24985a68a6c4f67c937a71c3bcbf89407ec9ceb0f40bc92cc8196d53830a3ac4000457dc2a5b9660d59a7d6fed79d646e521bcc6ddc9bb29b172eca130c MISC metadata.xml 2361 BLAKE2B 37b7fc2f2981e2f09ecb22804831dbbeaa03d74436df5fd34d65b241330ab760b3618b3e3f497ae81e91714c1b6a4913b1305e49ef157896ef1c1e1a309cae4f SHA512 703ccabd91e0ecb08190f8349ec3588e4effe3ef295ae4e05b1d077399cc4aa52fee5f6a533ad4d29f0cfeac8221878f63fbd2e5af8604ab37ec00a68c940ef5 diff --git a/app-admin/salt/files/salt-2019.2.0-remove-raet-tests.patch b/app-admin/salt/files/salt-2019.2.0-remove-raet-tests.patch new file mode 100644 index 000000000000..fab9f38df771 --- /dev/null +++ b/app-admin/salt/files/salt-2019.2.0-remove-raet-tests.patch @@ -0,0 +1,43 @@ +diff --git a/tests/unit/modules/test_event.py b/tests/unit/modules/test_event.py +index e5d2c946ae..e9140670cb 100644 +--- a/tests/unit/modules/test_event.py ++++ b/tests/unit/modules/test_event.py +@@ -47,12 +47,6 @@ class EventTestCase(TestCase, LoaderModuleMockMixin): + preload = {'id': 'id', 'tag': 'tag', 'data': 'data', + 'tok': 'salt', 'cmd': '_minion_event'} + +- with patch.dict(event.__opts__, {'transport': 'raet', +- 'local': False}): +- with patch.object(salt_transport_channel_factory, 'send', +- return_value=None): +- self.assertTrue(event.fire_master('data', 'tag')) +- + with patch.dict(event.__opts__, {'transport': 'A', + 'master_uri': 'localhost', + 'local': False}): +diff --git a/tests/unit/utils/test_verify.py b/tests/unit/utils/test_verify.py +index 63b9ae3181..2c8294ef77 100644 +--- a/tests/unit/utils/test_verify.py ++++ b/tests/unit/utils/test_verify.py +@@ -326,7 +326,7 @@ class TestVerifyLog(TestCase): + verify_log_files([path], getpass.getuser()) + self.assertTrue(os.path.exists(path)) + +- ++@skipIf(True, "broken under sandbox") + class TestCleanPath(TestCase): + ''' + salt.utils.clean_path works as expected +@@ -396,10 +396,10 @@ class TestCleanPathLink(TestCase): + test_path = os.path.join(self.from_path, 'test') + expect_path = os.path.join(self.to_path, 'test') + ret = clean_path(self.from_path, test_path) +- assert ret == expect_path, "{} is not {}".format(ret, expect_path) ++ assert ret == os.path.realpath(expect_path), "{} is not {}".format(ret, expect_path) + + def test_clean_path_symlinked_tgt(self): + test_path = os.path.join(self.to_path, 'test') + expect_path = os.path.join(self.to_path, 'test') + ret = clean_path(self.from_path, test_path) +- assert ret == expect_path, "{} is not {}".format(ret, expect_path) ++ assert ret == os.path.realpath(expect_path), "{} is not {}".format(ret, expect_path) diff --git a/app-admin/salt/salt-2019.2.5-r1.ebuild b/app-admin/salt/salt-2019.2.5-r1.ebuild new file mode 100644 index 000000000000..e39bedf18983 --- /dev/null +++ b/app-admin/salt/salt-2019.2.5-r1.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_6 ) +DISTUTILS_USE_SETUPTOOLS=bdepend +inherit systemd distutils-r1 + +DESCRIPTION="Salt is a remote execution and configuration manager" +HOMEPAGE="https://www.saltstack.com/resources/community/ + https://github.com/saltstack" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git" + EGIT_BRANCH="develop" + SRC_URI="" +else + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb neutron nova + openssl portage profile redis selinux test vim-syntax" + +RDEPEND=" + sys-apps/pciutils + dev-python/jinja[${PYTHON_USEDEP}] + dev-python/libnacl[${PYTHON_USEDEP}] + >=dev-python/msgpack-0.3[${PYTHON_USEDEP}] + =dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}] + >=dev-python/requests-1.0.0[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + >=www-servers/tornado-4.2.1[${PYTHON_USEDEP}] + =dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] ) + mako? ( dev-python/mako[${PYTHON_USEDEP}] ) + ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] ) + libvirt? ( dev-python/libvirt-python[${PYTHON_USEDEP}] ) + openssl? ( + dev-libs/openssl:0=[-bindist] + dev-python/pyopenssl[${PYTHON_USEDEP}] + ) + cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] ) + mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] ) + portage? ( sys-apps/portage[${PYTHON_USEDEP}] ) + keyring? ( dev-python/keyring[${PYTHON_USEDEP}] ) + redis? ( dev-python/redis-py[${PYTHON_USEDEP}] ) + selinux? ( sec-policy/selinux-salt ) + nova? ( >=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}] ) + neutron? ( >=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}] ) + gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] ) + profile? ( dev-python/yappi[${PYTHON_USEDEP}] ) + vim-syntax? ( app-vim/salt-vim )" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + >=dev-python/boto-2.32.1[${PYTHON_USEDEP}] + >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}] + >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] + >=dev-python/mock-2.0.0[${PYTHON_USEDEP}] + >=dev-python/moto-0.3.6[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}] + >=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}] + =dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + !x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] ) + ${RDEPEND} + )" + +DOCS=( README.rst AUTHORS ) + +RESTRICT="!test? ( test ) x86? ( test )" + +PATCHES=( + "${FILESDIR}/salt-2017.7.0-dont-realpath-tmpdir.patch" + "${FILESDIR}/salt-2019.2.0-tests.patch" + "${FILESDIR}/salt-2019.2.0-skip-tests-that-oom-machine.patch" + "${FILESDIR}/salt-2019.2.2-newer-deps.patch" + "${FILESDIR}/salt-2019.2.2-workaround-broken-mock-on-py2.patch" + "${FILESDIR}/salt-2019.2.0-remove-raet-tests.patch" +) + +python_prepare() { + # remove tests with external dependencies that may not be available + rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py} || die + rm tests/unit/modules/test_{file,boto_{vpc,secgroup,elb}}.py || die + rm tests/unit/states/test_boto_vpc.py || die + + # breaks with permission errors + rm tests/unit/utils/test_cache.py || die + + # remove raet due to deps being dropped + rm tests/unit/modules/test_raet_publish.py \ + salt/transport/raet.py \ + salt/daemons/test/test_raetkey.py || die + + # allow the use of the renamed msgpack + sed -i '/^msgpack/d' requirements/base.txt || die +} + +python_install_all() { + local svc + USE_SETUPTOOLS=1 distutils-r1_python_install_all + + for svc in minion master syndic api; do + newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc} + newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc} + systemd_dounit "${FILESDIR}"/salt-${svc}.service + done + + insinto /etc/${PN} + doins -r conf/* +} + +python_test() { + local tempdir + # testsuite likes lots of files + ulimit -n 3072 || die + + # ${T} is too long a path for the tests to work + tempdir="$(mktemp -du --tmpdir=/tmp salt-XXX)" + mkdir "${T}/$(basename "${tempdir}")" + mkdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die + + ( + cleanup() { rm -f "${tempdir}" || die; } + + trap cleanup EXIT + + addwrite "${tempdir}" + ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}" || die + + USE_SETUPTOOLS=1 SHELL="/bin/bash" \ + TMPDIR="${tempdir}" \ + ${EPYTHON} tests/runtests.py \ + --unit-tests --no-report --verbose \ + || die "testing failed with ${EPYTHON}" + ) +} diff --git a/app-admin/salt/salt-2019.2.5.ebuild b/app-admin/salt/salt-2019.2.5.ebuild deleted file mode 100644 index d8fbc93eb97c..000000000000 --- a/app-admin/salt/salt-2019.2.5.ebuild +++ /dev/null @@ -1,149 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_6 ) -DISTUTILS_USE_SETUPTOOLS=bdepend -inherit systemd distutils-r1 - -DESCRIPTION="Salt is a remote execution and configuration manager" -HOMEPAGE="https://www.saltstack.com/resources/community/ - https://github.com/saltstack" - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git" - EGIT_BRANCH="develop" - SRC_URI="" -else - SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="Apache-2.0" -SLOT="0" -IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb neutron nova - openssl portage profile redis selinux test raet +zeromq vim-syntax" - -RDEPEND=" - sys-apps/pciutils - dev-python/jinja[${PYTHON_USEDEP}] - dev-python/libnacl[${PYTHON_USEDEP}] - >=dev-python/msgpack-0.3[${PYTHON_USEDEP}] - =dev-python/requests-1.0.0[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - >=www-servers/tornado-4.2.1[${PYTHON_USEDEP}] - =dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] ) - mako? ( dev-python/mako[${PYTHON_USEDEP}] ) - ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] ) - libvirt? ( dev-python/libvirt-python[${PYTHON_USEDEP}] ) - openssl? ( - dev-libs/openssl:0=[-bindist] - dev-python/pyopenssl[${PYTHON_USEDEP}] - ) - raet? ( - >=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}] - >=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}] - >=dev-python/raet-0.6.0[${PYTHON_USEDEP}] - ) - zeromq? ( - >=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}] - dev-python/pycryptodome[${PYTHON_USEDEP}] - ) - cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] ) - mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] ) - portage? ( sys-apps/portage[${PYTHON_USEDEP}] ) - keyring? ( dev-python/keyring[${PYTHON_USEDEP}] ) - redis? ( dev-python/redis-py[${PYTHON_USEDEP}] ) - selinux? ( sec-policy/selinux-salt ) - nova? ( >=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}] ) - neutron? ( >=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}] ) - gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] ) - profile? ( dev-python/yappi[${PYTHON_USEDEP}] ) - vim-syntax? ( app-vim/salt-vim )" -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - >=dev-python/boto-2.32.1[${PYTHON_USEDEP}] - >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}] - >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] - >=dev-python/mock-2.0.0[${PYTHON_USEDEP}] - >=dev-python/moto-0.3.6[${PYTHON_USEDEP}] - dev-python/pip[${PYTHON_USEDEP}] - dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}] - >=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}] - =dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}] - dev-python/virtualenv[${PYTHON_USEDEP}] - !x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] ) - ${RDEPEND} - )" - -DOCS=( README.rst AUTHORS ) - -REQUIRED_USE="|| ( raet zeromq )" -RESTRICT="!test? ( test ) x86? ( test )" - -PATCHES=( - "${FILESDIR}/salt-2017.7.0-dont-realpath-tmpdir.patch" - "${FILESDIR}/salt-2019.2.0-tests.patch" - "${FILESDIR}/salt-2019.2.0-skip-tests-that-oom-machine.patch" - "${FILESDIR}/salt-2019.2.2-newer-deps.patch" - "${FILESDIR}/salt-2019.2.2-workaround-broken-mock-on-py2.patch" -) - -python_prepare() { - # remove tests with external dependencies that may not be available - rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py} || die - rm tests/unit/modules/test_{file,boto_{vpc,secgroup,elb}}.py || die - rm tests/unit/states/test_boto_vpc.py || die - - # allow the use of the renamed msgpack - sed -i '/^msgpack/d' requirements/base.txt || die -} - -python_install_all() { - local svc - USE_SETUPTOOLS=1 distutils-r1_python_install_all - - for svc in minion master syndic api; do - newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc} - newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc} - systemd_dounit "${FILESDIR}"/salt-${svc}.service - done - - insinto /etc/${PN} - doins -r conf/* -} - -python_test() { - local tempdir - # testsuite likes lots of files - ulimit -n 3072 || die - - # ${T} is too long a path for the tests to work - tempdir="$(mktemp -du --tmpdir=/tmp salt-XXX)" - mkdir "${T}/$(basename "${tempdir}")" - mkdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die - - ( - cleanup() { rm -f "${tempdir}" || die; } - - trap cleanup EXIT - - addwrite "${tempdir}" - ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}" || die - - USE_SETUPTOOLS=1 SHELL="/bin/bash" \ - TMPDIR="${tempdir}" \ - ${EPYTHON} tests/runtests.py \ - --unit-tests --no-report --verbose \ - || die "testing failed with ${EPYTHON}" - ) -} -- cgit v1.2.3