summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/salt')
-rw-r--r--app-admin/salt/Manifest1
-rw-r--r--app-admin/salt/files/salt-2017.7.3-tests.patch66
-rw-r--r--app-admin/salt/salt-2017.7.3.ebuild142
3 files changed, 209 insertions, 0 deletions
diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
index 5d09e1c2ff3b..d09cc36bf2ce 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 000000000000..9399bf873349
--- /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 000000000000..f31e0c09a66f
--- /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"
+}