summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/salt/Manifest1
-rw-r--r--app-admin/salt/files/salt-2016.3.5-tmpdir.patch47
-rw-r--r--app-admin/salt/salt-2016.3.5.ebuild143
3 files changed, 191 insertions, 0 deletions
diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
index a68766a17d16..9005b5829674 100644
--- a/app-admin/salt/Manifest
+++ b/app-admin/salt/Manifest
@@ -3,3 +3,4 @@ DIST salt-2015.8.12.tar.gz 7033938 SHA256 712f72b30a9555ea46a51bc677e05ffa2eefae
DIST salt-2015.8.13.tar.gz 7036243 SHA256 cca82c9a4f267692660b098c1f76e54ab6a24131391893719bde0eb3a1ed2959 SHA512 ec8626f7360542bfeea90fc3d6fd9d9d015da4c2a6adf9957c22501ed9531b0a44d2cbc4853c41856b4cd46c142d2441884ec99700f3c0a5310cc428f9f1ec2a WHIRLPOOL c21f3bdc5fd674ea664c7e8fd58ef6685328a6ee3679850f3e9a085b1e604e1224a3323b906b47075fb8dd39f373583fb549e7b0f3f725d44928bcf716955a10
DIST salt-2016.11.0.tar.gz 9044879 SHA256 b516285926ee95cedc64ecddab05d14422b7c8819c9f6d046a431c41d608e6bc SHA512 0cddebe9fda1f7d08aa7ee5d4e49e182c67e7bc179136da30d20c991bc10d7299034198f6721b89eda2604480aa2cfe6960f37fadde4d72adf166a065a9f6443 WHIRLPOOL 595ab7c7e50cafdfc7d69a1e24964a88092e93416dc23b295e1ab59f1ce3ae8fa10b24c4e9fe45c1d2d8557290aceae66f93d3da81a1f1be62c98e537cb8ad6a
DIST salt-2016.3.4.tar.gz 8354090 SHA256 5d4c822719d7fb2d79b0103cd9b015d251300890f8aa174e16b73fcfd6eb22f9 SHA512 ca17c5607d23d09e95fb4b6afbcf1b4f0be6bab47ff3eee883c1464e13b5271b71f0e7bedfa8afe05f32bf3a0a6f4050a91afb9285b52aa0f3da6105221397e0 WHIRLPOOL 95347b1f8447e8701074727430ef0a232e92aa9e961451c445890552c6d9533569e470dfa4864f673c6c3b3eccb16ec9c3615cfcab6d29e74756861afe43fcac
+DIST salt-2016.3.5.tar.gz 8405980 SHA256 fec215dfdec33ca6826453e5437656f9ed5e4a121ef3db6341f91f799cd3e751 SHA512 ca9ae85f8174aa55fefeaef70d65981d581f25f14f219f437ad4dc0db08e5944f356564c92aee46e796547db38312efedc8db5080576d578982f963a742635e6 WHIRLPOOL 72b504dd669adf4ffc6818083f40b07b78914c8f168ab496d628a3f5cd136d7c4266906007e095aff4c18e123dfcf03391f577fb09b841eb71bc30ea6a46de07
diff --git a/app-admin/salt/files/salt-2016.3.5-tmpdir.patch b/app-admin/salt/files/salt-2016.3.5-tmpdir.patch
new file mode 100644
index 000000000000..dce4f09f2a0f
--- /dev/null
+++ b/app-admin/salt/files/salt-2016.3.5-tmpdir.patch
@@ -0,0 +1,47 @@
+diff --git a/tests/unit/modules/qemu_nbd_test.py b/tests/unit/modules/qemu_nbd_test.py
+index 615e6b5670..fbd24aab86 100644
+--- a/tests/unit/modules/qemu_nbd_test.py
++++ b/tests/unit/modules/qemu_nbd_test.py
+@@ -77,6 +77,7 @@ class QemuNbdTestCase(TestCase):
+ Test if it mount the named image via qemu-nbd
+ and return the mounted roots
+ '''
++ tmpdir = os.environ.get('TMPDIR', '/tmp')
+ mock = MagicMock(return_value=True)
+ with patch.dict(qemu_nbd.__salt__, {'cmd.run': mock}):
+ self.assertEqual(qemu_nbd.init('/srv/image.qcow2'), '')
+@@ -89,7 +90,7 @@ class QemuNbdTestCase(TestCase):
+ 'mount.mount': mock,
+ 'cmd.retcode': MagicMock(side_effect=[1, 0])}):
+ self.assertDictEqual(qemu_nbd.init('/srv/image.qcow2'),
+- {'/tmp/nbd/nbd0/nbd0': '/dev/nbd0'})
++ {os.path.join(tmpdir, 'nbd/nbd0/nbd0'): '/dev/nbd0'})
+
+ # 'clear' function tests: 1
+
+diff --git a/tests/unit/states/archive_test.py b/tests/unit/states/archive_test.py
+index e699362d8a..c7c7e8a965 100644
+--- a/tests/unit/states/archive_test.py
++++ b/tests/unit/states/archive_test.py
+@@ -25,7 +25,7 @@ from salt.ext.six.moves import zip # pylint: disable=import-error,redefined-bui
+
+ # Globals
+ archive.__salt__ = {}
+-archive.__opts__ = {"cachedir": "/tmp", "test": False}
++archive.__opts__ = {"cachedir": os.environ.get('TMPDIR', "/tmp"), "test": False}
+ archive.__env__ = 'test'
+
+
+diff --git a/tests/unit/utils/context_test.py b/tests/unit/utils/context_test.py
+index 5249d56747..a27ee9ab61 100644
+--- a/tests/unit/utils/context_test.py
++++ b/tests/unit/utils/context_test.py
+@@ -18,7 +18,7 @@ import salt.payload
+ import salt.utils
+
+ __context__ = {'a': 'b'}
+-__opts__ = {'cachedir': '/tmp'}
++__opts__ = {'cachedir': os.environ.get('TMPDIR', '/tmp')}
+
+
+ @skipIf(NO_MOCK, NO_MOCK_REASON)
diff --git a/app-admin/salt/salt-2016.3.5.ebuild b/app-admin/salt/salt-2016.3.5.ebuild
new file mode 100644
index 000000000000..25897948b484
--- /dev/null
+++ b/app-admin/salt/salt-2016.3.5.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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/psutil[${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[${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}-2016.3.5-tmpdir.patch"
+ "${FILESDIR}/${PN}-2016.3.1-dont-realpath-tmpdir.patch"
+ "${FILESDIR}/${PN}-2016.3.4-test-nonexist-dirs.patch"
+ "${FILESDIR}/${PN}-2016.3.4-dont-test-ordering.patch"
+)
+
+python_prepare() {
+ # this test fails because it trys to "pip install distribute"
+ rm tests/unit/{modules,states}/zcbuildout_test.py \
+ tests/unit/modules/{rh_ip,win_network,random_org}_test.py || die
+
+ # apparently libcloud does not know about this?
+ rm tests/unit/cloud/clouds/dimensiondata_test.py || die
+
+ # seriously? "ValueError: Missing (or not readable) key file: '/home/dany/PRIVKEY.pem'"
+ rm tests/unit/cloud/clouds/gce_test.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 -dup /tmp salt-XXX)"
+ mkdir "${T}/$(basename "${tempdir}")"
+
+ (
+ cleanup() { rm -f "${tempdir}"; }
+ 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"
+}