summaryrefslogtreecommitdiff
path: root/app-admin/salt
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-12-18 11:06:49 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-12-18 11:06:49 +0000
commitab3da91fb6c91a9df52fff8f991570f456fd3c7a (patch)
treee8f3bfa2c6c3d20ec3b9c352c839e23949068b6b /app-admin/salt
parent6abbf81ef2f298e3221ff5e67a1f3c5f23958212 (diff)
gentoo resync : 18.12.2020
Diffstat (limited to 'app-admin/salt')
-rw-r--r--app-admin/salt/Manifest9
-rw-r--r--app-admin/salt/files/salt-2019.2.8-ansible-roster-fix.patch13
-rw-r--r--app-admin/salt/salt-2019.2.8.ebuild151
-rw-r--r--app-admin/salt/salt-3000.6.ebuild194
-rw-r--r--app-admin/salt/salt-3001.4.ebuild (renamed from app-admin/salt/salt-3001.3.ebuild)0
5 files changed, 365 insertions, 2 deletions
diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
index b953fc56ef67..042b0adf38c7 100644
--- a/app-admin/salt/Manifest
+++ b/app-admin/salt/Manifest
@@ -10,6 +10,7 @@ AUX salt-2019.2.0-skip-tests-that-oom-machine.patch 739 BLAKE2B c0e1b18c528ddcdc
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
AUX salt-2019.2.2-workaround-broken-mock-on-py2.patch 1224 BLAKE2B ea81b3a699220fd0084eb1f259e59d28c75b5bafb9ce0988b987f373265f58d8184a4703c5b2f36fddf7dad5e7be666280c1b4f5c4d6d11ce71c636cbc380b94 SHA512 2078c489080aa0731d0304835fbf9fdfa88bba4fca4fa8d19d708927e1583d3e3a17d49fbb233b6a41d079a921eb2cdf2f7fa9bd606005ca7259548cff7f66ae
+AUX salt-2019.2.8-ansible-roster-fix.patch 572 BLAKE2B c11106be76626673a0e6365dea7ac8593f420ffa2bc0ca02c24520240d863d69a7f0449f10b5d53f6292c247f434636a0f188338ffa3d81a27abc8db18059c92 SHA512 86a2fc107882855ef60b2722e7282de8e6ad57c5fe6809ff99843f934a193445da599d57d1cbc3d7d3443f93d52a7ba5922c6bd76579f85648f6256ce7a81c66
AUX salt-3000.1-tests.patch 2390 BLAKE2B f46b8a4aa2c57307385d6e56b54b54ebeb18bfa298b66804a64c7e64608fb07a8fea8eabeebb8ba1772936cf50541d6bea81eefcf9617ccb8074b534ac0ec1af SHA512 5e3a212995f8f4fae4e3c4c51519fd2e7bfa20b39492485e10788b3cf72ff9344681fdff4a2d6364e7e4b9c9554fd3efffb9d197aad445423950ce72c6455b2b
AUX salt-3000.2-py38-abc.patch 2641 BLAKE2B 054fae62aee23528beaad9e4c9c8ac72c1f9a208e2b5d2d17af08ef0e810e7b2ba93522c110bf052a4d3d8831aa772eb3ab7fcb378034634a4b46f10af5c5c20 SHA512 b4feaa17cdbbb9cdf4ec7759b9fa201d731680939e199edd2e683ca6dc5b2cf99aa6fa8f87517dfbd5b6af2ccafbdb50cf9744345149131941f1bd107145cf69
AUX salt-3000.2-py38-logwarn.patch 4875 BLAKE2B f0ced7bad98983296561d223405d512077c0b70de12a8af613d4069842d3cb6167dd0da49c30fc881e985594f755ce0b063df311bbe84ae9cfc37896670aca52 SHA512 94ca1f73cbeb9d3ab93cb1c7afd4abce5318022a267342e4b348066c5508016891a3c05bd0ea867ae868794684bdc1bfd3e7779c4ea2a9cd60626d6513f8ba4e
@@ -25,14 +26,18 @@ AUX salt-syndic.service 169 BLAKE2B 0d00f20b4663804eaa4b6a1a1b32ed87b04d1f4df6a8
AUX syndic-confd-1 188 BLAKE2B ad20094c30f9aa573397d347f9fb11acafba2f724b6c836d7ec57f10d4182c300a4b0ec572b5f3301174febdfc69c30752c3b0eabdfdf9f4963b03531db23523 SHA512 0051e13351cef8db81dc075a194bb384723f07d5591b5b4d3f3adf4180afaf7beced470ab79ceca9d1ec0dae62dbd72084eb76af009fc78411a011050a94a2ed
AUX syndic-initd-4 311 BLAKE2B aab3b44f65dedb30ea4eb573872c0253e4d7b438a533f22a4e887c1e6487682efce7f5b75d3bcf366ef706a9fb1578dce537ac5b50324239378cecbd0715ad5d SHA512 69cc10fa7d9f0f4a68d223272c08ee33af242a50eb9bbea919d61f6cb5baf1ce986b07d69fc0e47e2f6dffc0a11100c3bc0d836d2938c46aa364beecb47f07ef
DIST salt-2019.2.7.tar.gz 14576515 BLAKE2B 4b2476c874a806de8664abd7852d5f856fc1946cc021d3ec8d206f69ec3cd809fe156d4d916d00304c36aad1dfab3a60309eb87d21ce7bb9afc7e8ea77ac23aa SHA512 e9a0d1ada0172239a31c6a8a628e71367aba072c06fe5420f4b864b9c67da89edd03f95abd46fd9ae414c2262b4e7e5c7f53c606f9f3f58e4c84129f2ed43c9e
+DIST salt-2019.2.8.tar.gz 14595964 BLAKE2B 7551bbfffe6e4f3107806ef95c9ad1b3fdff6274e8fa679bee143be203929df6d51dcc1e704d1e9458e8051197277257c68c7fd18cf54cad1c49314574c8471b SHA512 e4b45ee264a4e663c6039ca6c89ea0aeff1273b2b40b4d799a30cdb6b23cf568be81e4807ecb2832b2a596993f1512ef45d68e444f3b32e6f5a38d8ce548ddac
DIST salt-3000.2-py38-misc.patch.gz 6250 BLAKE2B 68fff80a042e6bf208ea2d9692da7a7b1e29572f1ec3c850c14743bbf2821d231f933ec4e6d6eaad12acee0b7666888a37a72872b2b082c92d8db9de988fbbec SHA512 6d4a66323a423e630f7cc73b566ed96c452c8fc3d72c25a2dd86033c4774c1c8e8b8701e1d4ee92994d4148c398d704f419023e26d8b40c8fdd63f9d79d9d52f
DIST salt-3000.5.tar.gz 15229450 BLAKE2B 135e9b9dcc461ac898231ce46e6a1359e6d60a43822320950bc0b83057f768dadf55320dd73df72d5bc917f324eef4661e6f75d8eb8e84aef958bd2df8924cfc SHA512 2579f65c24d22d77132057bd8cf37040d7d149624745dd68b4c44318be786580dcc34bf563f90d7de9ef5b726b2453bef4d8639bc8fbd9c5e691500520335317
-DIST salt-3001.3.tar.gz 14553356 BLAKE2B 50d073d39826fb15cb424df3e55c2308dd18391c13a5c4a3fb01c1e1ecd8636dd45fdf34b1937563d069e51141fc40f48f77eaec6b1e1d6f9802418e611b20b1 SHA512 a3c0f019fbe1f1edac11af291667f06597dbf4badeb0026107dcab4937efcb306ca6d3ba20195ff9fea5ee7a995db1c3a79236de3e990fc809c305e7f05e1c9d
+DIST salt-3000.6.tar.gz 15236781 BLAKE2B 5a532a6915b331fb532dc6e1651cf8fca3e1a5e9f29f6d75260fdb1162dbfeec755c65f7c6fc28b1cc7dc3ace978547830af31aafc1eee8419bbc7e695725787 SHA512 739e3671766c45a0ef1eb45933c7f00f14586e91f4c4a79cbed913a48961a48baee853206ba569491756e8a872d22f3635eb6bc1a366020e551c567b2334c508
+DIST salt-3001.4.tar.gz 15716372 BLAKE2B cc33b29b0da9cfaae22726b2b471245880aafa106187b531872a9ae5ee773a94e0d550a68b11b74826bc0b35197a311f690535f2280931ccb5050275ad967c2d SHA512 b7f343c65917280a96d8a3eaa6b508121b11b9f9b0bfffa5b4c79af0023bdecf4581f76014847d97f48d9677edb6f632adec3850153c3048c3114128a250b84b
DIST salt-3002.1.tar.gz 15753988 BLAKE2B d084dc650b8bc92b4ebdb145a41a39bfbd034064fad65e364260eca84d7105fb645ad8f6cea2cc1b6affb1abf21a9858ab6fb526eaf4ecd8f76c70d1384c7edc SHA512 8fc02d0b47dad60f96eb4442b0e8a31f04d796f12b845c8142135593af4c7ea9c2d9335a3f520f8858951f87b0e8cc6be70d383fde2d93a6d529e077bcc87114
DIST salt-3002.2.tar.gz 15765855 BLAKE2B b26895ababc8551e01baa806c5a0e41dab9a379e47d2289b5c3c529ef762c69631d7ed8b32339ec66c3929c5883782131eb56d1bfbcc743829c4f0199a900ca1 SHA512 0f617a07475347b1bb0d1c6059de541e102103182820dfd6f64f4c281d660e68358eb1ab7171a637e16cef9fea2517c8356df9c449f9bbc92538aa86c316f652
EBUILD salt-2019.2.7.ebuild 4910 BLAKE2B 67e56a9029c3157a31525c8ea41a957b82a3d2c846ae68756c8ea67261d6ea6346a98bbafd785fe519640ceef2e3495e58b0ec262858be30016eba10f1392567 SHA512 75e9eb392f3619b714a0ba43d64c5e08c51f512e71d98f1be763cb443d1c8a6c429ef5c2d272c162db34f3e274aebdf2f0c4866a32925232d134b9f91a4765ef
+EBUILD salt-2019.2.8.ebuild 4959 BLAKE2B 0a86fee2e9454eeec09b4329d2cd647f95398e7e5d274c2a631b8a0c8616e46fcd7fc08d9d15c0568e7b6305ac10bb3ca99903e505f292a4ab7e6858641c8624 SHA512 f11a149f3e979a909d5c46697117f4f30a6cd9aa57adcb0e031d1df22e48d7f99bc30d3796139a99ddc0b1ce5537042098e55907840dd0b32634056462680c71
EBUILD salt-3000.5.ebuild 6321 BLAKE2B ddaa02503b5d8301697bae784a4901348eec72152e9d91d21eff82640d3609b093aa2acd818554d96edf86921cfcdbf9cc39b3e0f9292fff919f903919a6c250 SHA512 6b405a1bd5234500907b8da8865ec0aa2583efe7700fb3f09776297a4592352fe13ab199ff1fd9bf50421e2f11b363b804f41823d6fbf8d993d56bf6a1d07ed6
-EBUILD salt-3001.3.ebuild 5998 BLAKE2B 271ed69190cc3582ef29fc731693e5fc97ec4984d60735fc9e77f082c9a848a44934d00e7161b7f53cb7c8e4f3c92f52f09a0dceb5ac6deb8a5e1c46c9c45932 SHA512 dff46b7448eb7a1a2b11dc2018d1f46813dd1f23643b78d2e32ebfe658b88e658807b0f2b3838a0fbf08d353f64195dc67ff9c282861ac55a2763116515aa7d6
+EBUILD salt-3000.6.ebuild 6377 BLAKE2B 39cb9ce06b9eed29d75ae8747f780221487565da34475b35659f4f5208910216016a02b1cfd52fe5df7662df20e2741f0028c67f3114b2d8d5833a7bca962b88 SHA512 24ce6c7b9364cb3824c218c8bad4fcc6c103767599e3b0c054391cc908ffc81aacc586039de3855bb5f862fe572971fede0890d79ad755e5bf9c9eaea5edb84d
+EBUILD salt-3001.4.ebuild 5998 BLAKE2B 271ed69190cc3582ef29fc731693e5fc97ec4984d60735fc9e77f082c9a848a44934d00e7161b7f53cb7c8e4f3c92f52f09a0dceb5ac6deb8a5e1c46c9c45932 SHA512 dff46b7448eb7a1a2b11dc2018d1f46813dd1f23643b78d2e32ebfe658b88e658807b0f2b3838a0fbf08d353f64195dc67ff9c282861ac55a2763116515aa7d6
EBUILD salt-3002.1.ebuild 5956 BLAKE2B 3471c7185550aa6719893059d435c17a2f33252afc3634b81dfbe42a5c43cbe9676473d6e36d9b1c5853da9521d2cae0686da44578b8262d6bbabb79201962b9 SHA512 af287ce3fbe3b070753fa7e63d99283a25f3ca776a854c052890c5638f70de1147758ceeb73c89dfa1f903adf27500a46ce268a786c9e4fd95c115a652de764a
EBUILD salt-3002.2.ebuild 5956 BLAKE2B 3471c7185550aa6719893059d435c17a2f33252afc3634b81dfbe42a5c43cbe9676473d6e36d9b1c5853da9521d2cae0686da44578b8262d6bbabb79201962b9 SHA512 af287ce3fbe3b070753fa7e63d99283a25f3ca776a854c052890c5638f70de1147758ceeb73c89dfa1f903adf27500a46ce268a786c9e4fd95c115a652de764a
MISC metadata.xml 2361 BLAKE2B 37b7fc2f2981e2f09ecb22804831dbbeaa03d74436df5fd34d65b241330ab760b3618b3e3f497ae81e91714c1b6a4913b1305e49ef157896ef1c1e1a309cae4f SHA512 703ccabd91e0ecb08190f8349ec3588e4effe3ef295ae4e05b1d077399cc4aa52fee5f6a533ad4d29f0cfeac8221878f63fbd2e5af8604ab37ec00a68c940ef5
diff --git a/app-admin/salt/files/salt-2019.2.8-ansible-roster-fix.patch b/app-admin/salt/files/salt-2019.2.8-ansible-roster-fix.patch
new file mode 100644
index 000000000000..597c97e87774
--- /dev/null
+++ b/app-admin/salt/files/salt-2019.2.8-ansible-roster-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/salt/roster/ansible.py b/salt/roster/ansible.py
+index f4a2a23e0b..e6b9e80247 100644
+--- a/salt/roster/ansible.py
++++ b/salt/roster/ansible.py
+@@ -129,7 +129,7 @@ def targets(tgt, tgt_type='glob', **kwargs):
+
+ def _get_hosts_from_group(group):
+ inventory = __context__['inventory']
+- hosts = [host for host in inventory[group].get('hosts', [])]
++ hosts = [host for host in inventory.setdefault(group, {}).get('hosts', [])]
+ for child in inventory[group].get('children', []):
+ hosts.extend(_get_hosts_from_group(child))
+ return hosts
diff --git a/app-admin/salt/salt-2019.2.8.ebuild b/app-admin/salt/salt-2019.2.8.ebuild
new file mode 100644
index 000000000000..2a0b207dfeeb
--- /dev/null
+++ b/app-admin/salt/salt-2019.2.8.ebuild
@@ -0,0 +1,151 @@
+# 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=no
+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/msgpack-1.0[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/markupsafe[${PYTHON_USEDEP}]
+ dev-python/pycryptodome[${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}]
+ <www-servers/tornado-5.0[${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: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/pytest-salt-2020.0.0[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest[${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"
+ "${FILESDIR}/salt-2019.2.8-ansible-roster-fix.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-3000.6.ebuild b/app-admin/salt/salt-3000.6.ebuild
new file mode 100644
index 000000000000..14cbe4757bec
--- /dev/null
+++ b/app-admin/salt/salt-3000.6.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7,8} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+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
+ https://dev.gentoo.org/~chutzpah/dist/salt/salt-3000.2-py38-misc.patch.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="cheetah cherrypy ldap libcloud libvirt genshi gnupg keyring mako
+ mongodb neutron nova openssl portage profile redis selinux test raet
+ +zeromq vim-syntax"
+
+RDEPEND="
+ sys-apps/pciutils
+ dev-python/distro[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/libnacl[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.5[${PYTHON_USEDEP}]
+ <dev-python/msgpack-1.0[${PYTHON_USEDEP}]
+ dev-python/pycryptodome[${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}]
+ libcloud? ( >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] )
+ mako? ( dev-python/mako[${PYTHON_USEDEP}] )
+ ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
+ libvirt? (
+ $(python_gen_cond_dep 'dev-python/libvirt-python[${PYTHON_USEDEP}]' python3_7)
+ )
+ 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}]
+ )
+ cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
+ cheetah? ( dev-python/cheetah3[${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? (
+ $(python_gen_cond_dep '>=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}]' python3_7)
+ )
+ neutron? (
+ $(python_gen_cond_dep '>=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}]' python3_7)
+ )
+ gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
+ profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
+ vim-syntax? ( app-vim/salt-vim )
+ zeromq? ( >=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ >=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/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ >=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}]
+ dev-python/pytest-tempdir[${PYTHON_USEDEP}]
+ >=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ !x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] )
+ )"
+
+DOCS=( README.rst AUTHORS )
+
+REQUIRED_USE="|| ( raet zeromq )
+ test? ( cheetah genshi )"
+RESTRICT="!test? ( test ) x86? ( test )"
+
+PATCHES=(
+ "${FILESDIR}/salt-2017.7.0-dont-realpath-tmpdir.patch"
+ "${FILESDIR}/salt-2019.2.0-skip-tests-that-oom-machine.patch"
+ "${FILESDIR}/salt-3000.1-tests.patch"
+ "${FILESDIR}/salt-3000.2-tests.patch"
+
+ # https://github.com/saltstack/salt/pull/55410
+ "${FILESDIR}/salt-3000.2-py38.patch"
+
+ # https://github.com/saltstack/salt/pull/55900
+ "${FILESDIR}/salt-3000.2-py38-abc.patch"
+
+ # misc py38 fixups
+ "${WORKDIR}/salt-3000.2-py38-misc.patch"
+ "${FILESDIR}/salt-3000.2-py38-logwarn.patch"
+ "${FILESDIR}/salt-2019.2.8-ansible-roster-fix.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
+
+ # tests that require network access
+ rm tests/unit/{states,modules}/test_zcbuildout.py || die
+
+ # make sure pkg_resources doesn't bomb because pycrypto isn't installed
+ find . -name '*.txt' -print0 | xargs -0 sed -e '/pycrypto>/ d' -i || die
+
+ einfo "Fixing collections.abc warnings for ${EPYTHON}"
+ local abc
+ abc="$("${EPYTHON}" -c 'import collections.abc; print("|".join((c for c in dir(collections.abc) if not c.startswith("_"))))')" || die
+ find -name '*.py' -type f -print0 | xargs -0 sed -r -e "s:collections\\.(${abc}):collections.abc.\\1:g" -i || 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}")"
+
+ (
+ 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}"
+ )
+}
+
+pkg_postinst() {
+ if use python_targets_python3_8; then
+ if use nova; then
+ ewarn "Salt's nova functionality will not work with python3.8 since"
+ ewarn "dev-python/python-novaclient does not support it yet"
+ fi
+ if use neutron; then
+ ewarn "Salt's neutron functionality will not work with python3.8 since"
+ ewarn "dev-python/python-neutronclient does not support it yet"
+ fi
+ if use libvirt; then
+ ewarn "Salt's libvirt functionality will not work with python3.8 since"
+ ewarn "dev-python/libvirt-python does not support it yet"
+ fi
+ fi
+}
diff --git a/app-admin/salt/salt-3001.3.ebuild b/app-admin/salt/salt-3001.4.ebuild
index 1e5f20dbb506..1e5f20dbb506 100644
--- a/app-admin/salt/salt-3001.3.ebuild
+++ b/app-admin/salt/salt-3001.4.ebuild