Gentoo Archives: gentoo-commits

From: Patrick McLean <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-admin/salt/, app-admin/salt/files/
Date: Thu, 01 Dec 2016 01:16:14
Message-Id: 1480554944.ac688fa8d36626f5a8482ba4af26531546eadc68.chutzpah@gentoo
1 commit: ac688fa8d36626f5a8482ba4af26531546eadc68
2 Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
3 AuthorDate: Thu Dec 1 01:12:13 2016 +0000
4 Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
5 CommitDate: Thu Dec 1 01:15:44 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac688fa8
7
8 app-admin/salt: Version bump to 2016.3.4
9
10 Package-Manager: portage-2.3.2
11
12 app-admin/salt/Manifest | 1 +
13 .../files/salt-2016.3.4-dont-test-ordering.patch | 33 +++++
14 .../files/salt-2016.3.4-test-nonexist-dirs.patch | 32 +++++
15 app-admin/salt/salt-2016.3.4.ebuild | 143 +++++++++++++++++++++
16 4 files changed, 209 insertions(+)
17
18 diff --git a/app-admin/salt/Manifest b/app-admin/salt/Manifest
19 index 2d46956..19789c7 100644
20 --- a/app-admin/salt/Manifest
21 +++ b/app-admin/salt/Manifest
22 @@ -6,3 +6,4 @@ DIST salt-2015.8.8.tar.gz 6982904 SHA256 b2ecce7bf562cfcd6586d66ade278f268bb8902
23 DIST salt-2016.3.1.tar.gz 7932479 SHA256 e6bdba4693116430c2af57497eb63399e3a139ac0a7016fa0870b49fbe987f75 SHA512 74122020a83df79171b9aa3bc311d1b16930140ec6b063c888d41e10fb8e696f69188b62cf925045b40d8b8fe713759de08978b08bc3b8e1f12722de3a8ddb7b WHIRLPOOL f76afb4d9c6678edf48b608f6dbd27201656fd371b0df78a8a8db306a2cbf5b08fa2fd916e9fb5409b67cd05ab007a3684d91c1e0158416b12f014001de1506a
24 DIST salt-2016.3.2.tar.gz 8014793 SHA256 6a84b724d02b0dba438dea57650724064675d82620e66749bd2fe8f21da71be0 SHA512 608e2a43bc8c55eeb8c9e0f9207306e591151940ad1ffb869ada12963c0790f37653936e539c0b70439c13180909de2c763db6c30e7f9e2087068985d1b3ff91 WHIRLPOOL 5e6f6dc9980ab6cd6e8c897d140241ce9e6dec8afd08274749a20260c6b871d6e52cd674ed8e838a4aa285bf45c49586d77bc2156f94ee26f4f776d9025040eb
25 DIST salt-2016.3.3.tar.gz 7952361 SHA256 5906038594f1b9b3ac41714774fbd78f0af80d2f3ffe1c1bf20308032d7d52b6 SHA512 46a8f8b3213e4cc02eaed95e7fc28ce224fe07fe2aea39b68ff3e97043021951558f04690f7043510c8dfb62d76fe82192d67de6151c7f1076a23c0f8d796c9e WHIRLPOOL dc21ca7d996b5f59501e4658a38fee8d1bdd20669059b72781a4e7e4c91b2fc40f267a533f6974c26a70b4dd8ac20d93174d1a8d9c04d351af0a47dc53572379
26 +DIST salt-2016.3.4.tar.gz 8354090 SHA256 5d4c822719d7fb2d79b0103cd9b015d251300890f8aa174e16b73fcfd6eb22f9 SHA512 ca17c5607d23d09e95fb4b6afbcf1b4f0be6bab47ff3eee883c1464e13b5271b71f0e7bedfa8afe05f32bf3a0a6f4050a91afb9285b52aa0f3da6105221397e0 WHIRLPOOL 95347b1f8447e8701074727430ef0a232e92aa9e961451c445890552c6d9533569e470dfa4864f673c6c3b3eccb16ec9c3615cfcab6d29e74756861afe43fcac
27
28 diff --git a/app-admin/salt/files/salt-2016.3.4-dont-test-ordering.patch b/app-admin/salt/files/salt-2016.3.4-dont-test-ordering.patch
29 new file mode 100644
30 index 00000000..c272275
31 --- /dev/null
32 +++ b/app-admin/salt/files/salt-2016.3.4-dont-test-ordering.patch
33 @@ -0,0 +1,33 @@
34 +diff --git a/tests/unit/modules/inspect_collector_test.py b/tests/unit/modules/inspect_collector_test.py
35 +index 9d2fa3ada7..710bbd75a5 100644
36 +--- a/tests/unit/modules/inspect_collector_test.py
37 ++++ b/tests/unit/modules/inspect_collector_test.py
38 +@@ -36,28 +36,6 @@ class InspectorCollectorTestCase(TestCase):
39 + self.assertEqual(inspector.dbfile, '/foo/cache/_minion_collector.db')
40 + self.assertEqual(inspector.pidfile, '/foo/pid/bar.pid')
41 +
42 +- def test_file_tree(self):
43 +- '''
44 +- Test file tree.
45 +-
46 +- :return:
47 +- '''
48 +-
49 +- inspector = Inspector(cachedir='/test', piddir='/test', pidfilename='bar.pid')
50 +- tree_root = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'inspectlib', 'tree_test')
51 +- expected_tree = (['/a/a/dummy.a', '/a/b/dummy.b', '/b/b.1', '/b/b.2', '/b/b.3'],
52 +- ['/a', '/a/a', '/a/b', '/a/c', '/b', '/c'],
53 +- ['/a/a/dummy.ln.a', '/a/b/dummy.ln.b', '/a/c/b.1', '/b/b.4',
54 +- '/b/b.5', '/c/b.1', '/c/b.2', '/c/b.3'])
55 +- tree_result = []
56 +- for chunk in inspector._get_all_files(tree_root):
57 +- buff = []
58 +- for pth in chunk:
59 +- buff.append(pth.replace(tree_root, ''))
60 +- tree_result.append(buff)
61 +- tree_result = tuple(tree_result)
62 +- self.assertEqual(expected_tree, tree_result)
63 +-
64 + def test_get_unmanaged_files(self):
65 + '''
66 + Test get_unmanaged_files.
67
68 diff --git a/app-admin/salt/files/salt-2016.3.4-test-nonexist-dirs.patch b/app-admin/salt/files/salt-2016.3.4-test-nonexist-dirs.patch
69 new file mode 100644
70 index 00000000..dd542d6
71 --- /dev/null
72 +++ b/app-admin/salt/files/salt-2016.3.4-test-nonexist-dirs.patch
73 @@ -0,0 +1,32 @@
74 +diff --git a/tests/unit/conf_test.py b/tests/unit/conf_test.py
75 +index cce0023423..c1324f4a61 100644
76 +--- a/tests/unit/conf_test.py
77 ++++ b/tests/unit/conf_test.py
78 +@@ -140,6 +140,8 @@ class ConfTest(TestCase):
79 + commented out. This test loops through all of the files in that directory to check
80 + for any lines that are not commented or blank.
81 + '''
82 ++ if not os.path.exists(SAMPLE_CONF_DIR + 'cloud.profiles.d/'):
83 ++ return
84 + cloud_sample_files = os.listdir(SAMPLE_CONF_DIR + 'cloud.profiles.d/')
85 + for conf_file in cloud_sample_files:
86 + profile_conf = SAMPLE_CONF_DIR + 'cloud.profiles.d/' + conf_file
87 +@@ -158,6 +160,8 @@ class ConfTest(TestCase):
88 + commented out. This test loops through all of the files in that directory to check
89 + for any lines that are not commented or blank.
90 + '''
91 ++ if not os.path.exists(SAMPLE_CONF_DIR + 'cloud.providers.d/'):
92 ++ return
93 + cloud_sample_files = os.listdir(SAMPLE_CONF_DIR + 'cloud.providers.d/')
94 + for conf_file in cloud_sample_files:
95 + provider_conf = SAMPLE_CONF_DIR + 'cloud.providers.d/' + conf_file
96 +@@ -176,6 +180,9 @@ class ConfTest(TestCase):
97 + commented out. This test loops through all of the files in that directory to check
98 + for any lines that are not commented or blank.
99 + '''
100 ++ if not os.path.exists(SAMPLE_CONF_DIR + 'cloud.maps.d/'):
101 ++ return
102 ++
103 + cloud_sample_files = os.listdir(SAMPLE_CONF_DIR + 'cloud.maps.d/')
104 + for conf_file in cloud_sample_files:
105 + map_conf = SAMPLE_CONF_DIR + 'cloud.maps.d/' + conf_file
106
107 diff --git a/app-admin/salt/salt-2016.3.4.ebuild b/app-admin/salt/salt-2016.3.4.ebuild
108 new file mode 100644
109 index 00000000..14593b8
110 --- /dev/null
111 +++ b/app-admin/salt/salt-2016.3.4.ebuild
112 @@ -0,0 +1,143 @@
113 +# Copyright 1999-2016 Gentoo Foundation
114 +# Distributed under the terms of the GNU General Public License v2
115 +# $Id$
116 +
117 +EAPI=6
118 +PYTHON_COMPAT=( python2_7 )
119 +
120 +inherit eutils systemd distutils-r1
121 +
122 +DESCRIPTION="Salt is a remote execution and configuration manager"
123 +HOMEPAGE="http://saltstack.org/"
124 +
125 +if [[ ${PV} == 9999* ]]; then
126 + inherit git-r3
127 + EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git"
128 + EGIT_BRANCH="develop"
129 + SRC_URI=""
130 + KEYWORDS=""
131 +else
132 + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
133 + KEYWORDS="~x86 ~amd64"
134 +fi
135 +
136 +LICENSE="Apache-2.0"
137 +SLOT="0"
138 +IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb mysql neutron nova"
139 +IUSE+=" openssl portage profile redis selinux test timelib raet +zeromq vim-syntax"
140 +
141 +RDEPEND="sys-apps/pciutils
142 + dev-python/jinja[${PYTHON_USEDEP}]
143 + >=dev-python/msgpack-0.3[${PYTHON_USEDEP}]
144 + dev-python/pyyaml[${PYTHON_USEDEP}]
145 + dev-python/markupsafe[${PYTHON_USEDEP}]
146 + >=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
147 + dev-python/setuptools[${PYTHON_USEDEP}]
148 + >=www-servers/tornado-4.2.1[${PYTHON_USEDEP}]
149 + virtual/python-futures[${PYTHON_USEDEP}]
150 + libcloud? ( >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] )
151 + mako? ( dev-python/mako[${PYTHON_USEDEP}] )
152 + ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
153 + libvirt? ( dev-python/libvirt-python[${PYTHON_USEDEP}] )
154 + openssl? (
155 + dev-libs/openssl:*[-bindist]
156 + dev-python/pyopenssl[${PYTHON_USEDEP}]
157 + )
158 + raet? (
159 + >=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
160 + >=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
161 + >=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
162 + )
163 + zeromq? (
164 + >=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}]
165 + >=dev-python/pycrypto-2.6.1[${PYTHON_USEDEP}]
166 + )
167 + cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
168 + mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
169 + portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
170 + keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
171 + mysql? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
172 + redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
173 + selinux? ( sec-policy/selinux-salt )
174 + timelib? ( dev-python/timelib[${PYTHON_USEDEP}] )
175 + nova? ( >=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}] )
176 + neutron? ( >=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}] )
177 + gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
178 + profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
179 + vim-syntax? ( app-vim/salt-vim )"
180 +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
181 + test? (
182 + dev-python/psutil[${PYTHON_USEDEP}]
183 + dev-python/pip[${PYTHON_USEDEP}]
184 + dev-python/virtualenv[${PYTHON_USEDEP}]
185 + dev-python/mock[${PYTHON_USEDEP}]
186 + dev-python/timelib[${PYTHON_USEDEP}]
187 + >=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
188 + !x86? ( dev-python/boto3[${PYTHON_USEDEP}] )
189 + >=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
190 + >=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
191 + >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
192 + ${RDEPEND}
193 + )"
194 +
195 +DOCS=( README.rst AUTHORS )
196 +
197 +REQUIRED_USE="|| ( raet zeromq )"
198 +RESTRICT="x86? ( test )"
199 +
200 +PATCHES=(
201 + "${FILESDIR}/${PN}-2015.8.2-tmpdir.patch"
202 + "${FILESDIR}/${PN}-2016.3.1-dont-realpath-tmpdir.patch"
203 + "${FILESDIR}/${PN}-2016.3.4-test-nonexist-dirs.patch"
204 + "${FILESDIR}/${PN}-2016.3.4-dont-test-ordering.patch"
205 +)
206 +
207 +python_prepare() {
208 + # this test fails because it trys to "pip install distribute"
209 + rm tests/unit/{modules,states}/zcbuildout_test.py \
210 + tests/unit/modules/{rh_ip,win_network,random_org}_test.py || die
211 +
212 + # apparently libcloud does not know about this?
213 + rm tests/unit/cloud/clouds/dimensiondata_test.py || die
214 +
215 + # seriously? "ValueError: Missing (or not readable) key file: '/home/dany/PRIVKEY.pem'"
216 + rm tests/unit/cloud/clouds/gce_test.py || die
217 +}
218 +
219 +python_install_all() {
220 + local svc
221 + USE_SETUPTOOLS=1 distutils-r1_python_install_all
222 +
223 + for svc in minion master syndic api; do
224 + newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc}
225 + newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
226 + systemd_dounit "${FILESDIR}"/salt-${svc}.service
227 + done
228 +
229 + insinto /etc/${PN}
230 + doins -r conf/*
231 +}
232 +
233 +python_test() {
234 + local tempdir
235 + # testsuite likes lots of files
236 + ulimit -n 3072 || die
237 +
238 + # ${T} is too long a path for the tests to work
239 + tempdir="$(mktemp -dup /tmp salt-XXX)"
240 + mkdir "${T}/$(basename "${tempdir}")"
241 +
242 + (
243 + cleanup() { rm -f "${tempdir}"; }
244 + trap cleanup EXIT
245 +
246 + addwrite "${tempdir}"
247 + ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}"
248 +
249 + USE_SETUPTOOLS=1 SHELL="/bin/bash" \
250 + TMPDIR="${tempdir}" \
251 + ${EPYTHON} tests/runtests.py \
252 + --unit-tests --no-report --verbose
253 +
254 + ) || die "testing failed"
255 +}