summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <chutzpah@gentoo.org>2017-07-31 18:28:09 -0700
committerPatrick McLean <chutzpah@gentoo.org>2017-07-31 18:28:09 -0700
commit12b98a9257d9dd65e76edc87a40d4dc6e8ad303d (patch)
treeeaab83ac94b468f193bf4cbe47898db3028ea8fa
parentdev-python/pytest-salt: New package, PyTest Salt Plugin (diff)
downloadgentoo-12b98a9257d9dd65e76edc87a40d4dc6e8ad303d.tar.gz
gentoo-12b98a9257d9dd65e76edc87a40d4dc6e8ad303d.tar.bz2
gentoo-12b98a9257d9dd65e76edc87a40d4dc6e8ad303d.zip
app-admin/salt: Version bump to 2017.7.0
Package-Manager: Portage-2.3.6, Repoman-2.3.3
-rw-r--r--app-admin/salt/Manifest1
-rw-r--r--app-admin/salt/files/salt-2017.7.0-dont-realpath-tmpdir.patch19
-rw-r--r--app-admin/salt/salt-2017.7.0.ebuild138
3 files changed, 158 insertions, 0 deletions
diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
index 743950ce7d9c..4b37df700806 100644
--- a/app-admin/salt/Manifest
+++ b/app-admin/salt/Manifest
@@ -4,3 +4,4 @@ DIST salt-2016.11.4.tar.gz 9360198 SHA256 fb4109b28d3fd898291c162e42ef843fbd4c3e
DIST salt-2016.11.5.tar.gz 9246550 SHA256 b81427a4a3e47a98726f948bdc16a5b6b366f93fdac0b2c817e8f87d9036f8be SHA512 9afb40dbd3a508eacc43500566660763e2b219817d7de25ccf2d61d7f74b857238922ea40cc4c6372fd520bc6f524d84fb0a2d65f9890bedd79d0fc6c177edf9 WHIRLPOOL 684c8f147fbe38928b3f7510e704654270fcc4aacdf81c4f3b90a9f275566a2b8cf2155aff223d3ead2740d79e479d10cf233b4386b8e76ddb7b481f3471ebb6
DIST salt-2016.11.6.tar.gz 9410028 SHA256 9031af68d31d0416fe3161526ef122a763afc6182bd63fe48b6c4d0a16a0703a SHA512 8b375eeaf8380c750700ae9b500e012f0b8ae281c8b5aa68d3443393a5bb7dd46612f2aeb3ba01719dd28d9e128dc88f1faa8023f5f5e7ff684a1f0483c30120 WHIRLPOOL c74aa93b60851a4978746fd0fe60f4fcbe0e8bb447cb19fcd3eede9d5880ef3ece96b2d9dc4cab4d8f09f08ce9ad2fd9d4bb63c295aefcf25b178e4c3c77d992
DIST salt-2016.3.6.tar.gz 8432840 SHA256 4cc45f48255b7e46631807b071674552872c322ab77f398c9beefbf14d6a212f SHA512 949d70504310cd88139c520812a870e4c68e6b0c7ec6decfd157283994d6be659e7823a4453d1b6464c24fc762bc9ba61d4f6a767c4d6f65e496c7f5b6589a8d WHIRLPOOL 3d5abdbe0e297cbfc1b0f7fce0d6959132bbe917abc80ad7bb368a2ec657c0c0019123a22558c3fbdec489cb20430243ff837658d55da6755a07d4ec4d35158c
+DIST salt-2017.7.0.tar.gz 11399842 SHA256 aaf45f8dcf95a20b56072e620100432d058ab297210c4902dc90e197b236b064 SHA512 21d8350413ad6a262d4c19c4cb3cbd4bc718f411bab49141626729b659c1ee72340542b342ec0fb012cb11c313bd56ec6534416d2128ae548ed8950affb6c834 WHIRLPOOL e9716b689069c79922c9e47d430ed16efc8adb9ba528202cfc86d00a39e746b3723e12f2f6abf443a8ae5adb64d81bbd916e395973ddf6639dcbc32d589b6881
diff --git a/app-admin/salt/files/salt-2017.7.0-dont-realpath-tmpdir.patch b/app-admin/salt/files/salt-2017.7.0-dont-realpath-tmpdir.patch
new file mode 100644
index 000000000000..90a48a662998
--- /dev/null
+++ b/app-admin/salt/files/salt-2017.7.0-dont-realpath-tmpdir.patch
@@ -0,0 +1,19 @@
+diff --git a/tests/support/paths.py b/tests/support/paths.py
+index da93c8e1e3..895c636fef 100644
+--- a/tests/support/paths.py
++++ b/tests/support/paths.py
+@@ -40,12 +40,12 @@ if CODE_DIR not in sys.path:
+ if TESTS_DIR not in sys.path:
+ sys.path.insert(1, TESTS_DIR)
+
+-SYS_TMP_DIR = os.path.abspath(os.path.realpath(
++SYS_TMP_DIR = os.path.abspath(
+ # Avoid ${TMPDIR} and gettempdir() on MacOS as they yield a base path too long
+ # for unix sockets: ``error: AF_UNIX path too long``
+ # Gentoo Portage prefers ebuild tests are rooted in ${TMPDIR}
+ os.environ.get('TMPDIR', tempfile.gettempdir()) if not sys.platform.startswith('darwin') else '/tmp'
+-))
++)
+ TMP = os.path.join(SYS_TMP_DIR, 'salt-tests-tmpdir')
+ FILES = os.path.join(INTEGRATION_TEST_DIR, 'files')
+ PYEXEC = 'python{0}.{1}'.format(*sys.version_info)
diff --git a/app-admin/salt/salt-2017.7.0.ebuild b/app-admin/salt/salt-2017.7.0.ebuild
new file mode 100644
index 000000000000..327efb8b298d
--- /dev/null
+++ b/app-admin/salt/salt-2017.7.0.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2017 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"
+)
+
+python_prepare() {
+ rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py}
+}
+
+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"
+}