From aefde3e8351ebb90d5f51d76f8d6d6fb13ca17d5 Mon Sep 17 00:00:00 2001 From: Patrick McLean Date: Thu, 8 Feb 2018 11:56:25 -0800 Subject: [PATCH] app-admin/salt: Version bump to 2017.7.3 Package-Manager: Portage-2.3.24, Repoman-2.3.6 --- app-admin/salt/Manifest | 1 + .../salt/files/salt-2017.7.3-tests.patch | 66 ++++++++ app-admin/salt/salt-2017.7.3.ebuild | 142 ++++++++++++++++++ 3 files changed, 209 insertions(+) create mode 100644 app-admin/salt/files/salt-2017.7.3-tests.patch create mode 100644 app-admin/salt/salt-2017.7.3.ebuild diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest index 5d09e1c2ff3b4..d09cc36bf2ce7 100644 --- a/app-admin/salt/Manifest +++ b/app-admin/salt/Manifest @@ -1,2 +1,3 @@ DIST salt-2016.11.8.tar.gz 10142142 BLAKE2B e6805dae84c0d2e39109c95f603fcb54e1b7d7ff6c27ce555379b69274b3a5d72a1e372081a62c18440deb0955c1ef24a41c5d855a5e622f2ffe51276bd87b25 SHA512 0adc544ca460d13d2adb11b04575bd079a3dad1be3468bea7d32d0b74416b78546e4c86c75551bba09786be8e9810a6e30232414c4f5851cbc9a0fb4b894e0de DIST salt-2017.7.2.tar.gz 11471191 BLAKE2B 0b7184eb4dcb29f2a9603117d1c6fb9c729093c1ff11e18370929ec3fdbfe7bf8c0914f17260c3f613842c23359205a4a84d3e0bcd67476705e50f805bcd7b69 SHA512 959cec404f0fa7c00f78427cba902b8b9c2c0d95016fc70925d8da6d0b97a0284fc034ac92a5c5c313763db4fdcbd1b0391318596b77fe8e0cd1c7e4b3fa928b +DIST salt-2017.7.3.tar.gz 36461646 BLAKE2B 560038b8cd49dadec3f37e3864054f32d6d6544b0f48704e94a05b83f9d6277ce456ee36813a23844b93e338ca117ad0ee605dad49e77816810f1e7244b20b27 SHA512 0452ad6cf2a9bcecd0056f0a6f4871e36bf2abe8c207c93f79e1e9ace608b7ba2158e958a71121f230969ff0b32ffd26f048e369003f844eaf3f4f9dd4b4a19a diff --git a/app-admin/salt/files/salt-2017.7.3-tests.patch b/app-admin/salt/files/salt-2017.7.3-tests.patch new file mode 100644 index 0000000000000..9399bf8733493 --- /dev/null +++ b/app-admin/salt/files/salt-2017.7.3-tests.patch @@ -0,0 +1,66 @@ +diff --git a/tests/unit/fileserver/test_roots.py b/tests/unit/fileserver/test_roots.py +index cc9c8dbce9..a50a240c25 100644 +--- a/tests/unit/fileserver/test_roots.py ++++ b/tests/unit/fileserver/test_roots.py +@@ -164,12 +164,6 @@ class RootsTest(TestCase, AdaptedConfigurationTestCaseMixin, LoaderModuleMockMix + ret = roots.dir_list({'saltenv': 'base'}) + self.assertIn('empty_dir', ret) + +- def test_symlink_list(self): +- if self.test_symlink_list_file_roots: +- self.opts['file_roots'] = self.test_symlink_list_file_roots +- ret = roots.symlink_list({'saltenv': 'base'}) +- self.assertDictEqual(ret, {'dest_sym': 'source_sym'}) +- + + class RootsLimitTraversalTest(TestCase, AdaptedConfigurationTestCaseMixin): + +diff --git a/tests/unit/modules/test_inspect_collector.py b/tests/unit/modules/test_inspect_collector.py +index 0d37519a9e..c18be8d592 100644 +--- a/tests/unit/modules/test_inspect_collector.py ++++ b/tests/unit/modules/test_inspect_collector.py +@@ -59,44 +59,6 @@ class InspectorCollectorTestCase(TestCase): + inspector.pidfile, + os.sep + os.sep.join(['foo', 'pid', 'bar.pid'])) + +- def test_file_tree(self): +- ''' +- Test file tree. +- +- :return: +- ''' +- +- inspector = Inspector(cachedir=os.sep + 'test', +- piddir=os.sep + 'test', +- pidfilename='bar.pid') +- tree_root = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'inspectlib', 'tree_test') +- expected_tree = ([os.sep + os.sep.join(['a', 'a', 'dummy.a']), +- os.sep + os.sep.join(['a', 'b', 'dummy.b']), +- os.sep + os.sep.join(['b', 'b.1']), +- os.sep + os.sep.join(['b', 'b.2']), +- os.sep + os.sep.join(['b', 'b.3'])], +- [os.sep + 'a', +- os.sep + os.sep.join(['a', 'a']), +- os.sep + os.sep.join(['a', 'b']), +- os.sep + os.sep.join(['a', 'c']), +- os.sep + 'b', +- os.sep + 'c'], +- [os.sep + os.sep.join(['a', 'a', 'dummy.ln.a']), +- os.sep + os.sep.join(['a', 'b', 'dummy.ln.b']), +- os.sep + os.sep.join(['a', 'c', 'b.1']), +- os.sep + os.sep.join(['b', 'b.4']), +- os.sep + os.sep.join(['b', 'b.5']), +- os.sep + os.sep.join(['c', 'b.1']), +- os.sep + os.sep.join(['c', 'b.2']), +- os.sep + os.sep.join(['c', 'b.3'])]) +- tree_result = [] +- for chunk in inspector._get_all_files(tree_root): +- buff = [] +- for pth in chunk: +- buff.append(pth.replace(tree_root, '')) +- tree_result.append(buff) +- tree_result = tuple(tree_result) +- self.assertEqual(expected_tree, tree_result) + + def test_get_unmanaged_files(self): + ''' diff --git a/app-admin/salt/salt-2017.7.3.ebuild b/app-admin/salt/salt-2017.7.3.ebuild new file mode 100644 index 0000000000000..f31e0c09a66fa --- /dev/null +++ b/app-admin/salt/salt-2017.7.3.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) + +inherit eutils systemd distutils-r1 + +DESCRIPTION="Salt is a remote execution and configuration manager" +HOMEPAGE="http://saltstack.org/" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git" + EGIT_BRANCH="develop" + SRC_URI="" + KEYWORDS="" +else + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + KEYWORDS="~x86 ~amd64" +fi + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb mysql neutron nova" +IUSE+=" openssl portage profile redis selinux test timelib raet +zeromq vim-syntax" + +RDEPEND="sys-apps/pciutils + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/msgpack-0.3[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/markupsafe[${PYTHON_USEDEP}] + >=dev-python/requests-1.0.0[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + >=www-servers/tornado-4.2.1[${PYTHON_USEDEP}] + virtual/python-futures[${PYTHON_USEDEP}] + libcloud? ( >=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:*[-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/pycrypto-2.6.1[${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}] ) + mysql? ( dev-python/mysql-python[${PYTHON_USEDEP}] ) + redis? ( dev-python/redis-py[${PYTHON_USEDEP}] ) + selinux? ( sec-policy/selinux-salt ) + timelib? ( dev-python/timelib[${PYTHON_USEDEP}] ) + 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 )" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-salt[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/timelib[${PYTHON_USEDEP}] + >=dev-python/boto-2.32.1[${PYTHON_USEDEP}] + !x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] ) + >=dev-python/moto-0.3.6[${PYTHON_USEDEP}] + >=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}] + >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] + ${RDEPEND} + )" + +DOCS=( README.rst AUTHORS ) + +REQUIRED_USE="|| ( raet zeromq )" +RESTRICT="x86? ( test )" + +PATCHES=( + "${FILESDIR}/${PN}-2017.7.0-dont-realpath-tmpdir.patch" + "${FILESDIR}/${PN}-2017.7.3-tests.patch" +) + +python_prepare() { + rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py} || die + rm tests/unit/modules/test_boto_{vpc,secgroup,elb}.py || die + rm tests/unit/states/test_boto_vpc.py || die + rm tests/unit/modules/test_kubernetes.py || 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}" + rmdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die + } + + trap cleanup EXIT + + addwrite "${tempdir}" + ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}" + + USE_SETUPTOOLS=1 SHELL="/bin/bash" \ + TMPDIR="${tempdir}" \ + ${EPYTHON} tests/runtests.py \ + --unit-tests --no-report --verbose + + ) || die "testing failed" +}