Gentoo Archives: gentoo-commits

From: Brian Dolbec <dolsen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/buildbot/files/, dev-util/buildbot/
Date: Mon, 01 Jun 2020 22:57:50
Message-Id: 1591052249.bbf522036c56491af480f90d18d3a2fab5463ea0.dolsen@gentoo
1 commit: bbf522036c56491af480f90d18d3a2fab5463ea0
2 Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jun 1 18:29:26 2020 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Mon Jun 1 22:57:29 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbf52203
7
8 dev-util/buildbot: Version bump, clean old, update 9999
9
10 Add 2.8.0 release. Optimize the release and 9999 ebuilds to fix
11 a dependency issue in the live ebuild.
12 Clean out the old vulnerable versions.
13
14 gentoo-bug: https://bugs.gentoo.org/show_bug.cgi?id=711702
15 Package-Manager: Portage-2.3.99, Repoman-2.3.22
16 Signed-off-by: Brian Dolbec <dolsen <AT> gentoo.org>
17
18 dev-util/buildbot/Manifest | 5 +-
19 dev-util/buildbot/buildbot-0.9.12-r1.ebuild | 180 --------------------
20 dev-util/buildbot/buildbot-1.1.2.ebuild | 185 ---------------------
21 ...buildbot-1.3.0.ebuild => buildbot-2.8.0.ebuild} | 72 ++++----
22 dev-util/buildbot/buildbot-9999.ebuild | 25 +--
23 .../buildbot/files/buildbot-2.8.0.fakedb.patch | 10 ++
24 dev-util/buildbot/files/pypugjs-2.8.0.patch | 83 +++++++++
25 7 files changed, 137 insertions(+), 423 deletions(-)
26
27 diff --git a/dev-util/buildbot/Manifest b/dev-util/buildbot/Manifest
28 index 9bdfbaf4fd3..0b13398de21 100644
29 --- a/dev-util/buildbot/Manifest
30 +++ b/dev-util/buildbot/Manifest
31 @@ -1,4 +1,3 @@
32 -DIST buildbot-0.9.12.tar.gz 3057832 BLAKE2B 8e1748739bacc3c884f353b2a1c798575e3ce5f451a1711ecf88a7c7e517da86d2e791748d31468a2bb07369022e96cb568518b7a8ce1d9e1cece0b6ab77eec8 SHA512 62459918267297b31b2a6416f72794c7a4ebdcb60de04ece1681f6b8be9debf161716cc70ad843fd468b23e02c521c0a0783a5a1e119d75648e107691d6b908d
33 -DIST buildbot-1.1.2.tar.gz 3101168 BLAKE2B 35ec56440014015850a69324d475c4ca9555ad90da85b26a7a43eca74f08361137021aec72ddca37cbb24f21519ebf45948e66214291f356b4a1fbada7c0b3b8 SHA512 14c28d6fae18a10d89d41509635188d881ac76e7b61758481a9afbb22eb384d7ab5080383242e5850af13bfe46877985a91036270c3c4fbf01eafee5b7699815
34 -DIST buildbot-1.3.0.tar.gz 3119185 BLAKE2B d366b83baad7e865481535a2462ceb222aadce6c90a6229e82a72bf86518b8ebb0624d8ac8b64867783d58b6e9033b942a1ccd31fd6664a2b527eac9f11ab852 SHA512 e5ecf3eafe428a188c2410d270ee9bd5afc39122e62d35747288cf85347368ab4a94190b4ff6fe687269dc19cc7b91d33be8d3e3b637741e421a2cbd83572830
35 DIST buildbot-2.7.0.tar.gz 3175050 BLAKE2B 0a41eccaa4ca8df6396455049e8c09a1b2fe6cde3072da7fd3715f2769015944e8880f41dbe6750dd7b26bd863fb82f8e8d8c6540f9e1bf3ea4378f11adc973d SHA512 9946fe0b1591d51e5136d9458526918e872174afee79b5f1c333823ef1d2ddae66f017e9b57e26a2451da7ca7672720f32544c606ce5652d0825fae563779669
36 +DIST buildbot-2.8.0-fakedb.tar.xz 16204 BLAKE2B 741676e2c9117b1ab174ce49747bdfcd07766ad3e471e308398dff476f167fd231b7772c2f02002cbafb27e2ef535242d84d5aa84f4bc8942d4d216b2d5bf1f6 SHA512 c2b00d8621b3a1e521f6c17e902ae331b606dda3d319187895f26629dbdaf50caefc5d49fb150fb780e682ae431515c7ded4950d62448e8a73b8efba821c0fa1
37 +DIST buildbot-2.8.0.tar.gz 3162882 BLAKE2B 19789f1fe9f572c978a1843a98cd01d752a614d89eb29f2de9db750808d1f96d7893b39d703f37cc0e81e022267c08603c86d59a5902d65194e236f7170d6b30 SHA512 18af8fe1bda6f7014f514bfd112ccf9837194c0e42cbdabaaa6c6202660670964421feff3e92e9dca4cf960f69a4bde9b3666287b54ef7e912284a0471dcc2b6
38
39 diff --git a/dev-util/buildbot/buildbot-0.9.12-r1.ebuild b/dev-util/buildbot/buildbot-0.9.12-r1.ebuild
40 deleted file mode 100644
41 index c56a3675fcf..00000000000
42 --- a/dev-util/buildbot/buildbot-0.9.12-r1.ebuild
43 +++ /dev/null
44 @@ -1,180 +0,0 @@
45 -# Copyright 1999-2020 Gentoo Authors
46 -# Distributed under the terms of the GNU General Public License v2
47 -
48 -EAPI="6"
49 -PYTHON_REQ_USE="sqlite"
50 -PYTHON_COMPAT=( python3_6 )
51 -
52 -EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"
53 -
54 -[[ ${PV} == *9999 ]] && inherit git-r3
55 -inherit readme.gentoo-r1 user systemd distutils-r1
56 -
57 -MY_PV="${PV/_p/p}"
58 -MY_P="${PN}-${MY_PV}"
59 -
60 -DESCRIPTION="BuildBot build automation system"
61 -HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pypi.org/project/buildbot/"
62 -[[ ${PV} == *9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
63 -
64 -LICENSE="GPL-2"
65 -SLOT="0"
66 -if [[ ${PV} == *9999 ]]; then
67 - KEYWORDS=""
68 -else
69 - KEYWORDS="~amd64"
70 -fi
71 -
72 -IUSE="crypt examples irc test"
73 -RESTRICT="!test? ( test )"
74 -
75 -RDEPEND="
76 - >=dev-python/jinja-2.1[${PYTHON_USEDEP}]
77 - >=dev-python/twisted-17.9.0[${PYTHON_USEDEP}]
78 - >=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
79 - >=dev-python/sqlalchemy-0.8[${PYTHON_USEDEP}]
80 - >=dev-python/sqlalchemy-migrate-0.9[${PYTHON_USEDEP}]
81 - dev-python/future[${PYTHON_USEDEP}]
82 - >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
83 - >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
84 - dev-python/pyjwt[${PYTHON_USEDEP}]
85 - >=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
86 - ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
87 - crypt? (
88 - >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt]
89 - >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
90 - dev-python/idna[${PYTHON_USEDEP}]
91 - dev-python/service_identity[${PYTHON_USEDEP}]
92 - )
93 - irc? (
94 - dev-python/txrequests[${PYTHON_USEDEP}]
95 - )
96 -"
97 -DEPEND="${RDEPEND}
98 - >=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}]
99 - test? (
100 - >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
101 - >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
102 - dev-python/moto[${PYTHON_USEDEP}]
103 - dev-python/boto3[${PYTHON_USEDEP}]
104 - dev-python/ramlfications[${PYTHON_USEDEP}]
105 - dev-python/pyjade[${PYTHON_USEDEP}]
106 - dev-python/txgithub[${PYTHON_USEDEP}]
107 - dev-python/txrequests[${PYTHON_USEDEP}]
108 - dev-python/lz4[${PYTHON_USEDEP}]
109 - dev-python/treq[${PYTHON_USEDEP}]
110 - dev-python/setuptools_trial[${PYTHON_USEDEP}]
111 - ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
112 - )"
113 -
114 -S=${WORKDIR}/${MY_P}
115 -[[ ${PV} == *9999 ]] && S=${S}/master
116 -
117 -PATCHES=(
118 - "${FILESDIR}/Remove-distro-version-test.patch"
119 -)
120 -
121 -pkg_setup() {
122 - enewuser buildbot
123 -
124 - DOC_CONTENTS="The \"buildbot\" user and the \"buildmaster\" init script has been added
125 - to support starting buildbot through Gentoo's init system. To use this,
126 - execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance.
127 - The scripts can run as a different user if desired."
128 -}
129 -
130 -src_install() {
131 - distutils-r1_src_install
132 -
133 - doman docs/buildbot.1
134 -
135 - if use examples; then
136 - insinto /usr/share/doc/${PF}
137 - doins -r docs/examples
138 - fi
139 -
140 - newconfd "${FILESDIR}/buildmaster.confd" buildmaster
141 - newinitd "${FILESDIR}/buildmaster.initd" buildmaster
142 - systemd_dounit "${FILESDIR}/buildmaster.target"
143 - systemd_newunit "${FILESDIR}/buildmaster_at.service" "buildmaster@.service"
144 - systemd_install_serviced "${FILESDIR}/buildmaster_at.service.conf" "buildmaster@.service"
145 -
146 - readme.gentoo_create_doc
147 -}
148 -
149 -python_test() {
150 - distutils_install_for_testing
151 -
152 - esetup.py test || die "Tests failed under ${EPYTHON}"
153 -}
154 -
155 -pkg_postinst() {
156 - readme.gentoo_print_elog
157 -
158 - if [[ -n ${REPLACING_VERSIONS} ]]; then
159 - ewarn
160 - ewarn "Starting with buildbot-0.8.12-r2, more than one instance of buildmaster"
161 - ewarn "can be run simultaneously. Note that \"BASEDIR\" in the buildbot configuration file"
162 - ewarn "is now the common base directory for all instances. If you are migrating from an older"
163 - ewarn "version, make sure that you copy the current contents of \"BASEDIR\" to a subdirectory."
164 - ewarn "The name of the subdirectory corresponds to the name of the buildmaster instance."
165 - ewarn "In order to start the service running OpenRC-based systems need to link to the init file:"
166 - ewarn " ln --symbolic --relative /etc/init.d/buildmaster /etc/init.d/buildmaster.myinstance"
167 - ewarn " rc-update add buildmaster.myinstance default"
168 - ewarn " /etc/init.d/buildmaster.myinstance start"
169 - ewarn "Systems using systemd can do the following:"
170 - ewarn " systemctl enable buildmaster@××××××××××.service"
171 - ewarn " systemctl enable buildmaster.target"
172 - ewarn " systemctl start buildmaster.target"
173 - elog
174 - elog "Upstream recommends the following when upgrading:"
175 - elog "Each time you install a new version of Buildbot, you should run the"
176 - elog "\"buildbot upgrade-master\" command on each of your pre-existing build masters."
177 - elog "This will add files and fix (or at least detect) incompatibilities between"
178 - elog "your old config and the new code."
179 - fi
180 - elog
181 - elog "In order to create a new instance of buildmaster, execute:"
182 - elog " emerge --config =${CATEGORY}/${PF}"
183 -}
184 -
185 -pkg_config() {
186 - local buildmaster_path="/var/lib/buildmaster"
187 - local log_path="/var/log/buildmaster"
188 -
189 - einfo "This will prepare a new buildmaster instance in ${buildmaster_path}."
190 - einfo "Press Control-C to abort."
191 -
192 - einfo "Enter the name for the new instance: "
193 - read instance_name
194 - [[ -z "${instance_name}" ]] && die "Invalid instance name"
195 -
196 - local instance_path="${buildmaster_path}/${instance_name}"
197 - local instance_log_path="${log_path}/${instance_name}"
198 -
199 - if [[ -e "${instance_path}" ]]; then
200 - eerror "The instance with the specified name already exists:"
201 - eerror "${instance_path}"
202 - die "Instance already exists"
203 - fi
204 -
205 - local buildbot="/usr/bin/buildbot"
206 - if [[ ! -d "${buildmaster_path}" ]]; then
207 - mkdir --parents "${buildmaster_path}" || die "Unable to create directory ${buildmaster_path}"
208 - fi
209 - "${buildbot}" create-master "${instance_path}" &>/dev/null || die "Creating instance failed"
210 - chown --recursive buildbot "${instance_path}" || die "Setting permissions for instance failed"
211 - mv "${instance_path}/master.cfg.sample" "${instance_path}/master.cfg" \
212 - || die "Moving sample configuration failed"
213 - ln --symbolic --relative "/etc/init.d/buildmaster" "/etc/init.d/buildmaster.${instance_name}" \
214 - || die "Unable to create link to init file"
215 -
216 - if [[ ! -d "${instance_log_path}" ]]; then
217 - mkdir --parents "${instance_log_path}" || die "Unable to create directory ${instance_log_path}"
218 - fi
219 - ln --symbolic --relative "${instance_log_path}/twistd.log" "${instance_path}/twistd.log" \
220 - || die "Unable to create link to log file"
221 -
222 - einfo "Successfully created a buildmaster instance at ${instance_path}."
223 - einfo "To change the default settings edit the master.cfg file in this directory."
224 -}
225
226 diff --git a/dev-util/buildbot/buildbot-1.1.2.ebuild b/dev-util/buildbot/buildbot-1.1.2.ebuild
227 deleted file mode 100644
228 index 38a9ae82e1e..00000000000
229 --- a/dev-util/buildbot/buildbot-1.1.2.ebuild
230 +++ /dev/null
231 @@ -1,185 +0,0 @@
232 -# Copyright 1999-2020 Gentoo Authors
233 -# Distributed under the terms of the GNU General Public License v2
234 -
235 -EAPI="6"
236 -PYTHON_REQ_USE="sqlite"
237 -PYTHON_COMPAT=( python3_6 )
238 -
239 -EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"
240 -
241 -[[ ${PV} == *9999 ]] && inherit git-r3
242 -inherit readme.gentoo-r1 user systemd distutils-r1
243 -
244 -MY_PV="${PV/_p/.post}"
245 -MY_P="${PN}-${MY_PV}"
246 -
247 -DESCRIPTION="BuildBot build automation system"
248 -HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pypi.org/project/buildbot/"
249 -[[ ${PV} == *9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
250 -
251 -LICENSE="GPL-2"
252 -SLOT="0"
253 -if [[ ${PV} == *9999 ]]; then
254 - KEYWORDS=""
255 -else
256 - KEYWORDS="~amd64"
257 -fi
258 -
259 -IUSE="crypt docker examples irc test"
260 -RESTRICT="!test? ( test )"
261 -
262 -RDEPEND="
263 - >=dev-python/jinja-2.1[${PYTHON_USEDEP}]
264 - >=dev-python/twisted-17.9.0[${PYTHON_USEDEP}]
265 - >=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
266 - >=dev-python/sqlalchemy-0.8[${PYTHON_USEDEP}]
267 - >=dev-python/sqlalchemy-migrate-0.9[${PYTHON_USEDEP}]
268 - dev-python/future[${PYTHON_USEDEP}]
269 - >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
270 - >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
271 - dev-python/pyjwt[${PYTHON_USEDEP}]
272 - >=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
273 - ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
274 - crypt? (
275 - >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt]
276 - >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
277 - dev-python/idna[${PYTHON_USEDEP}]
278 - dev-python/service_identity[${PYTHON_USEDEP}]
279 - )
280 - irc? (
281 - dev-python/txrequests[${PYTHON_USEDEP}]
282 - )
283 - docker? (
284 - >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
285 - )
286 -"
287 -DEPEND="${RDEPEND}
288 - >=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}]
289 - test? (
290 - >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
291 - >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
292 - dev-python/moto[${PYTHON_USEDEP}]
293 - dev-python/boto3[${PYTHON_USEDEP}]
294 - dev-python/pyjade[${PYTHON_USEDEP}]
295 - dev-python/txgithub[${PYTHON_USEDEP}]
296 - dev-python/txrequests[${PYTHON_USEDEP}]
297 - dev-python/lz4[${PYTHON_USEDEP}]
298 - dev-python/treq[${PYTHON_USEDEP}]
299 - dev-python/setuptools_trial[${PYTHON_USEDEP}]
300 - ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
301 - >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
302 - )"
303 -
304 -S=${WORKDIR}/${MY_P}
305 -[[ ${PV} == *9999 ]] && S=${S}/master
306 -
307 -if [[ ${PV} != *9999 ]]; then
308 - PATCHES=(
309 - "${FILESDIR}/Remove-distro-version-test.patch"
310 - )
311 -fi
312 -
313 -pkg_setup() {
314 - enewuser buildbot
315 -
316 - DOC_CONTENTS="The \"buildbot\" user and the \"buildmaster\" init script has been added
317 - to support starting buildbot through Gentoo's init system. To use this,
318 - execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance.
319 - The scripts can run as a different user if desired."
320 -}
321 -
322 -src_install() {
323 - distutils-r1_src_install
324 -
325 - doman docs/buildbot.1
326 -
327 - if use examples; then
328 - insinto /usr/share/doc/${PF}
329 - doins -r docs/examples
330 - fi
331 -
332 - newconfd "${FILESDIR}/buildmaster.confd" buildmaster
333 - newinitd "${FILESDIR}/buildmaster.initd" buildmaster
334 - systemd_dounit "${FILESDIR}/buildmaster.target"
335 - systemd_newunit "${FILESDIR}/buildmaster_at.service" "buildmaster@.service"
336 - systemd_install_serviced "${FILESDIR}/buildmaster_at.service.conf" "buildmaster@.service"
337 -
338 - readme.gentoo_create_doc
339 -}
340 -
341 -python_test() {
342 - distutils_install_for_testing
343 -
344 - esetup.py test || die "Tests failed under ${EPYTHON}"
345 -}
346 -
347 -pkg_postinst() {
348 - readme.gentoo_print_elog
349 -
350 - if [[ -n ${REPLACING_VERSIONS} ]]; then
351 - ewarn
352 - ewarn "Starting with buildbot-0.8.12-r2, more than one instance of buildmaster"
353 - ewarn "can be run simultaneously. Note that \"BASEDIR\" in the buildbot configuration file"
354 - ewarn "is now the common base directory for all instances. If you are migrating from an older"
355 - ewarn "version, make sure that you copy the current contents of \"BASEDIR\" to a subdirectory."
356 - ewarn "The name of the subdirectory corresponds to the name of the buildmaster instance."
357 - ewarn "In order to start the service running OpenRC-based systems need to link to the init file:"
358 - ewarn " ln --symbolic --relative /etc/init.d/buildmaster /etc/init.d/buildmaster.myinstance"
359 - ewarn " rc-update add buildmaster.myinstance default"
360 - ewarn " /etc/init.d/buildmaster.myinstance start"
361 - ewarn "Systems using systemd can do the following:"
362 - ewarn " systemctl enable buildmaster@××××××××××.service"
363 - ewarn " systemctl enable buildmaster.target"
364 - ewarn " systemctl start buildmaster.target"
365 - elog
366 - elog "Upstream recommends the following when upgrading:"
367 - elog "Each time you install a new version of Buildbot, you should run the"
368 - elog "\"buildbot upgrade-master\" command on each of your pre-existing build masters."
369 - elog "This will add files and fix (or at least detect) incompatibilities between"
370 - elog "your old config and the new code."
371 - fi
372 - elog
373 - elog "In order to create a new instance of buildmaster, execute:"
374 - elog " emerge --config =${CATEGORY}/${PF}"
375 -}
376 -
377 -pkg_config() {
378 - local buildmaster_path="/var/lib/buildmaster"
379 - local log_path="/var/log/buildmaster"
380 -
381 - einfo "This will prepare a new buildmaster instance in ${buildmaster_path}."
382 - einfo "Press Control-C to abort."
383 -
384 - einfo "Enter the name for the new instance: "
385 - read instance_name
386 - [[ -z "${instance_name}" ]] && die "Invalid instance name"
387 -
388 - local instance_path="${buildmaster_path}/${instance_name}"
389 - local instance_log_path="${log_path}/${instance_name}"
390 -
391 - if [[ -e "${instance_path}" ]]; then
392 - eerror "The instance with the specified name already exists:"
393 - eerror "${instance_path}"
394 - die "Instance already exists"
395 - fi
396 -
397 - local buildbot="/usr/bin/buildbot"
398 - if [[ ! -d "${buildmaster_path}" ]]; then
399 - mkdir --parents "${buildmaster_path}" || die "Unable to create directory ${buildmaster_path}"
400 - fi
401 - "${buildbot}" create-master "${instance_path}" &>/dev/null || die "Creating instance failed"
402 - chown --recursive buildbot "${instance_path}" || die "Setting permissions for instance failed"
403 - mv "${instance_path}/master.cfg.sample" "${instance_path}/master.cfg" \
404 - || die "Moving sample configuration failed"
405 - ln --symbolic --relative "/etc/init.d/buildmaster" "/etc/init.d/buildmaster.${instance_name}" \
406 - || die "Unable to create link to init file"
407 -
408 - if [[ ! -d "${instance_log_path}" ]]; then
409 - mkdir --parents "${instance_log_path}" || die "Unable to create directory ${instance_log_path}"
410 - fi
411 - ln --symbolic --relative "${instance_log_path}/twistd.log" "${instance_path}/twistd.log" \
412 - || die "Unable to create link to log file"
413 -
414 - einfo "Successfully created a buildmaster instance at ${instance_path}."
415 - einfo "To change the default settings edit the master.cfg file in this directory."
416 -}
417
418 diff --git a/dev-util/buildbot/buildbot-1.3.0.ebuild b/dev-util/buildbot/buildbot-2.8.0.ebuild
419 similarity index 81%
420 rename from dev-util/buildbot/buildbot-1.3.0.ebuild
421 rename to dev-util/buildbot/buildbot-2.8.0.ebuild
422 index d59c41b23e9..1de7b0513a2 100644
423 --- a/dev-util/buildbot/buildbot-1.3.0.ebuild
424 +++ b/dev-util/buildbot/buildbot-2.8.0.ebuild
425 @@ -1,34 +1,32 @@
426 # Copyright 1999-2020 Gentoo Authors
427 # Distributed under the terms of the GNU General Public License v2
428
429 -EAPI="6"
430 +EAPI="7"
431 PYTHON_REQ_USE="sqlite"
432 -PYTHON_COMPAT=( python3_6 )
433 +PYTHON_COMPAT=( python3_{6,7,8} )
434
435 -EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"
436 +DISTUTILS_USE_SETUPTOOLS="rdepend"
437
438 -[[ ${PV} == *9999 ]] && inherit git-r3
439 -inherit readme.gentoo-r1 user systemd distutils-r1
440 +inherit readme.gentoo-r1 systemd distutils-r1
441
442 MY_PV="${PV/_p/.post}"
443 MY_P="${PN}-${MY_PV}"
444
445 DESCRIPTION="BuildBot build automation system"
446 HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pypi.org/project/buildbot/"
447 -[[ ${PV} == *9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
448 +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz
449 + https://dev.gentoo.org/~dolsen/distfiles/buildbot-2.8.0-fakedb.tar.xz
450 +"
451
452 LICENSE="GPL-2"
453 SLOT="0"
454 -if [[ ${PV} == *9999 ]]; then
455 - KEYWORDS=""
456 -else
457 - KEYWORDS="~amd64 ~amd64-linux ~x86-linux"
458 -fi
459 +KEYWORDS="~amd64 ~amd64-linux ~x86-linux"
460
461 IUSE="crypt doc docker examples irc test"
462 RESTRICT="!test? ( test )"
463
464 RDEPEND="
465 + acct-user/buildbot
466 >=dev-python/jinja-2.1[${PYTHON_USEDEP}]
467 >=dev-python/twisted-17.9.0[${PYTHON_USEDEP}]
468 >=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
469 @@ -38,12 +36,13 @@ RDEPEND="
470 >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
471 >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
472 dev-python/pyjwt[${PYTHON_USEDEP}]
473 + dev-python/pyyaml[${PYTHON_USEDEP}]
474 >=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
475 ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
476 crypt? (
477 >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt]
478 >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
479 - dev-python/idna[${PYTHON_USEDEP}]
480 + <dev-python/idna-2.9[${PYTHON_USEDEP}]
481 dev-python/service_identity[${PYTHON_USEDEP}]
482 )
483 irc? (
484 @@ -51,46 +50,51 @@ RDEPEND="
485 )
486 docker? (
487 >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
488 + dev-python/requests[${PYTHON_USEDEP}]
489 )
490 "
491 DEPEND="${RDEPEND}
492 - >=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}]
493 doc? (
494 >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}]
495 + <dev-python/sphinx-2.1.0[${PYTHON_USEDEP}]
496 dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}]
497 dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}]
498 dev-python/pyenchant[${PYTHON_USEDEP}]
499 - >=dev-python/docutils-0.8[${PYTHON_USEDEP}]
500 - <dev-python/docutils-0.13.0[${PYTHON_USEDEP}]
501 + dev-python/docutils[${PYTHON_USEDEP}]
502 dev-python/sphinx-jinja[${PYTHON_USEDEP}]
503 + dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
504 )
505 test? (
506 - >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
507 >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
508 dev-python/moto[${PYTHON_USEDEP}]
509 - dev-python/boto3[${PYTHON_USEDEP}]
510 - dev-python/pyjade[${PYTHON_USEDEP}]
511 - dev-python/txgithub[${PYTHON_USEDEP}]
512 + >=dev-python/boto3-1.12.48[${PYTHON_USEDEP}]
513 + dev-python/parameterized[${PYTHON_USEDEP}]
514 + dev-python/pypugjs[${PYTHON_USEDEP}]
515 dev-python/txrequests[${PYTHON_USEDEP}]
516 dev-python/lz4[${PYTHON_USEDEP}]
517 dev-python/treq[${PYTHON_USEDEP}]
518 dev-python/setuptools_trial[${PYTHON_USEDEP}]
519 + ~dev-util/buildbot-pkg-${PV}[${PYTHON_USEDEP}]
520 ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
521 - >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
522 + ~dev-util/buildbot-www-${PV}[${PYTHON_USEDEP}]
523 + crypt? (
524 + >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt]
525 + >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
526 + <dev-python/idna-2.9[${PYTHON_USEDEP}]
527 + dev-python/service_identity[${PYTHON_USEDEP}]
528 + )
529 )"
530
531 S=${WORKDIR}/${MY_P}
532 -[[ ${PV} == *9999 ]] && S=${S}/master
533
534 -if [[ ${PV} != *9999 ]]; then
535 - PATCHES=(
536 - "${FILESDIR}/Remove-distro-version-test.patch"
537 - )
538 -fi
539 +PATCHES=(
540 + "${FILESDIR}/pypugjs-2.8.0.patch"
541 + "${FILESDIR}/buildbot-2.8.0.fakedb.patch"
542 +)
543
544 -pkg_setup() {
545 - enewuser buildbot
546 +distutils_enable_tests setup.py
547
548 +pkg_setup() {
549 DOC_CONTENTS="The \"buildbot\" user and the \"buildmaster\" init script has been added
550 to support starting buildbot through Gentoo's init system. To use this,
551 execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance.
552 @@ -115,7 +119,7 @@ src_install() {
553 doman docs/buildbot.1
554
555 if use doc; then
556 - dohtml -r docs/_build/html/
557 + HTML_DOCS=( docs/_build/html/ )
558 # TODO: install man pages
559 fi
560
561 @@ -133,12 +137,6 @@ src_install() {
562 readme.gentoo_create_doc
563 }
564
565 -python_test() {
566 - distutils_install_for_testing
567 -
568 - esetup.py test || die "Tests failed under ${EPYTHON}"
569 -}
570 -
571 pkg_postinst() {
572 readme.gentoo_print_elog
573
574 @@ -194,7 +192,7 @@ pkg_config() {
575 mkdir --parents "${buildmaster_path}" || die "Unable to create directory ${buildmaster_path}"
576 fi
577 "${buildbot}" create-master "${instance_path}" &>/dev/null || die "Creating instance failed"
578 - chown --recursive buildbot "${instance_path}" || die "Setting permissions for instance failed"
579 + chown --recursive buildbot:buildbot "${instance_path}" || die "Setting permissions for instance failed"
580 mv "${instance_path}/master.cfg.sample" "${instance_path}/master.cfg" \
581 || die "Moving sample configuration failed"
582 ln --symbolic --relative "/etc/init.d/buildmaster" "/etc/init.d/buildmaster.${instance_name}" \
583 @@ -202,6 +200,8 @@ pkg_config() {
584
585 if [[ ! -d "${instance_log_path}" ]]; then
586 mkdir --parents "${instance_log_path}" || die "Unable to create directory ${instance_log_path}"
587 + chown --recursive buildbot:buildbot "${instance_log_path}" \
588 + || die "Setting permissions for instance failed"
589 fi
590 ln --symbolic --relative "${instance_log_path}/twistd.log" "${instance_path}/twistd.log" \
591 || die "Unable to create link to log file"
592
593 diff --git a/dev-util/buildbot/buildbot-9999.ebuild b/dev-util/buildbot/buildbot-9999.ebuild
594 index 35a2e69c15e..25ce6693e4e 100644
595 --- a/dev-util/buildbot/buildbot-9999.ebuild
596 +++ b/dev-util/buildbot/buildbot-9999.ebuild
597 @@ -9,7 +9,7 @@ EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"
598
599 DISTUTILS_USE_SETUPTOOLS="rdepend"
600
601 -[[ ${PV} == *9999 ]] && inherit git-r3
602 +inherit git-r3
603 inherit readme.gentoo-r1 systemd distutils-r1
604
605 MY_PV="${PV/_p/.post}"
606 @@ -21,11 +21,7 @@ HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pyp
607
608 LICENSE="GPL-2"
609 SLOT="0"
610 -if [[ ${PV} == *9999 ]]; then
611 - KEYWORDS=""
612 -else
613 - KEYWORDS="~amd64 ~amd64-linux ~x86-linux"
614 -fi
615 +KEYWORDS=""
616
617 IUSE="crypt doc docker examples irc test"
618 RESTRICT="!test? ( test )"
619 @@ -79,9 +75,9 @@ DEPEND="${RDEPEND}
620 dev-python/lz4[${PYTHON_USEDEP}]
621 dev-python/treq[${PYTHON_USEDEP}]
622 dev-python/setuptools_trial[${PYTHON_USEDEP}]
623 - ~dev-util/buildbot-pkg-${PV}[${PYTHON_USEDEP}]
624 - ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
625 - ~dev-util/buildbot-www-${PV}[${PYTHON_USEDEP}]
626 + dev-util/buildbot-pkg[${PYTHON_USEDEP}]
627 + dev-util/buildbot-worker[${PYTHON_USEDEP}]
628 + dev-util/buildbot-www[${PYTHON_USEDEP}]
629 crypt? (
630 >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt]
631 >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
632 @@ -89,17 +85,8 @@ DEPEND="${RDEPEND}
633 dev-python/service_identity[${PYTHON_USEDEP}]
634 )
635 )"
636 -# >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
637
638 -S=${WORKDIR}/${MY_P}
639 -[[ ${PV} == *9999 ]] && S=${S}/master
640 -
641 -if [[ ${PV} != *9999 ]]; then
642 - PATCHES=(
643 - "${FILESDIR}/Add-gentoo-to-the-VERSION_ID-check-exclusion.patch"
644 - "${FILESDIR}/pypugjs.patch"
645 - )
646 -fi
647 +S=${S}/master
648
649 distutils_enable_tests setup.py
650
651
652 diff --git a/dev-util/buildbot/files/buildbot-2.8.0.fakedb.patch b/dev-util/buildbot/files/buildbot-2.8.0.fakedb.patch
653 new file mode 100644
654 index 00000000000..2ce217b0d2e
655 --- /dev/null
656 +++ b/dev-util/buildbot/files/buildbot-2.8.0.fakedb.patch
657 @@ -0,0 +1,10 @@
658 +--- a/setup.py 2020-06-01 15:14:03.169026527 -0700
659 ++++ b/setup.py 2020-06-01 15:17:38.619177059 -0700
660 +@@ -194,6 +194,7 @@
661 + "buildbot.test",
662 + "buildbot.test.util",
663 + "buildbot.test.fake",
664 ++ "buildbot.test.fakedb",
665 + "buildbot.test.fuzz",
666 + "buildbot.test.integration",
667 + "buildbot.test.integration.interop",
668
669 diff --git a/dev-util/buildbot/files/pypugjs-2.8.0.patch b/dev-util/buildbot/files/pypugjs-2.8.0.patch
670 new file mode 100644
671 index 00000000000..d34c6fac1af
672 --- /dev/null
673 +++ b/dev-util/buildbot/files/pypugjs-2.8.0.patch
674 @@ -0,0 +1,83 @@
675 +From 26fefa8f8fa7b347e1c86723194de3a4094dc012 Mon Sep 17 00:00:00 2001
676 +From: Brian Dolbec <dolsen@g.o>
677 +Date: Sat, 25 Apr 2020 11:53:06 -0700
678 +Subject: [PATCH] Initial pyjade port to pypugjs
679 +
680 +---
681 + common/code_spelling_ignore_words.txt | 1 +
682 + master/buildbot/test/unit/test_www_config.py | 8 ++++----
683 + master/buildbot/www/config.py | 10 +++++-----
684 + master/docs/manual/configuration/www.rst | 10 ++++++----
685 + master/docs/spelling_wordlist.txt | 2 +-
686 + master/setup.py | 4 ++--
687 + requirements-ci.txt | 2 +-
688 + 7 files changed, 20 insertions(+), 17 deletions(-)
689 +
690 +diff --git a/buildbot/test/unit/test_www_config.py b/buildbot/test/unit/test_www_config.py
691 +index 23a108e..a8c24ec 100644
692 +--- a/buildbot/test/unit/test_www_config.py
693 ++++ b/buildbot/test/unit/test_www_config.py
694 +@@ -107,10 +107,10 @@ class IndexResource(TestReactorMixin, www.WwwTestMixin, unittest.TestCase):
695 + def test_parseCustomTemplateDir(self):
696 + exp = {'views/builds.html': '<div>\n</div>'}
697 + try:
698 +- # we make the test work if pyjade is present or note
699 +- # It is better than just skip if pyjade is not there
700 +- import pyjade # pylint: disable=import-outside-toplevel
701 +- [pyjade]
702 ++ # we make the test work if pypugjs is present or note
703 ++ # It is better than just skip if pypugjs is not there
704 ++ import pypugjs # pylint: disable=import-outside-toplevel
705 ++ [pypugjs]
706 + exp.update({'plugin/views/plugin.html':
707 + '<div class="myclass"><pre>this is customized</pre></div>'})
708 + except ImportError:
709 +diff --git a/buildbot/www/config.py b/buildbot/www/config.py
710 +index a021299..50bae4d 100644
711 +--- config.py 2020-02-27 13:34:10.000000000 -0800
712 ++++ config2.py 2020-05-11 17:26:44.587026761 -0700
713 +@@ -61,11 +61,11 @@
714 + res = {}
715 + allowed_ext = [".html"]
716 + try:
717 +- import pyjade # pylint: disable=import-outside-toplevel
718 ++ import pypugjs # pylint: disable=import-outside-toplevel
719 + allowed_ext.append(".jade")
720 + except ImportError: # pragma: no cover
721 +- log.msg("pyjade not installed. Ignoring .jade files from {}".format(template_dir))
722 ++ log.msg("pypugjs not installed. Ignoring .jade files from {}".format(template_dir))
723 +- pyjade = None
724 ++ pypugjs = None
725 + for root, dirs, files in os.walk(template_dir):
726 + if root == template_dir:
727 + template_name = posixpath.join("views", "%s.html")
728 +@@ -86,9 +86,9 @@
729 + elif ext == ".jade":
730 + with open(fn) as f:
731 + jade = f.read()
732 +- parser = pyjade.parser.Parser(jade)
733 ++ parser = pypugjs.parser.Parser(jade)
734 + block = parser.parse()
735 +- compiler = pyjade.ext.html.Compiler(
736 ++ compiler = pypugjs.ext.html.Compiler(
737 + block, pretty=False)
738 + html = compiler.compile()
739 + res[template_name % (basename,)] = html
740 +diff --git a/setup.py b/master/setup.py
741 +index 8fca506..1f32a74 100755
742 +--- a/setup.py
743 ++++ b/setup.py
744 +@@ -490,8 +490,8 @@ test_deps = [
745 + # http client libraries
746 + 'treq',
747 + 'txrequests',
748 +- # pyjade required for custom templates tests
749 +- 'pyjade',
750 ++ # pypugjs required for custom templates tests
751 ++ 'pypugjs',
752 + # boto3 and moto required for running EC2 tests
753 + 'boto3',
754 + 'moto',
755 +--
756 +libgit2 0.99.0
757 +