summaryrefslogtreecommitdiff
path: root/dev-util/buildbot
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/buildbot')
-rw-r--r--dev-util/buildbot/Manifest14
-rw-r--r--dev-util/buildbot/buildbot-2.10.0.ebuild6
-rw-r--r--dev-util/buildbot/buildbot-2.10.1.ebuild6
-rw-r--r--dev-util/buildbot/buildbot-2.8.2-r1.ebuild6
-rw-r--r--dev-util/buildbot/buildbot-2.8.4.ebuild8
-rw-r--r--dev-util/buildbot/buildbot-3.0.2.ebuild200
-rw-r--r--dev-util/buildbot/buildbot-3.1.0.ebuild201
-rw-r--r--dev-util/buildbot/buildbot-9999.ebuild9
8 files changed, 429 insertions, 21 deletions
diff --git a/dev-util/buildbot/Manifest b/dev-util/buildbot/Manifest
index 11144480adf2..84ba1e860f7b 100644
--- a/dev-util/buildbot/Manifest
+++ b/dev-util/buildbot/Manifest
@@ -9,9 +9,13 @@ DIST buildbot-2.10.1.tar.gz 2271357 BLAKE2B 8320f12137b938b1a795857c2cc1e7427a19
DIST buildbot-2.8.0-fakedb.tar.xz 16204 BLAKE2B 741676e2c9117b1ab174ce49747bdfcd07766ad3e471e308398dff476f167fd231b7772c2f02002cbafb27e2ef535242d84d5aa84f4bc8942d4d216b2d5bf1f6 SHA512 c2b00d8621b3a1e521f6c17e902ae331b606dda3d319187895f26629dbdaf50caefc5d49fb150fb780e682ae431515c7ded4950d62448e8a73b8efba821c0fa1
DIST buildbot-2.8.2.tar.gz 3181035 BLAKE2B 40a3e424cc03c982549f25993a4abd2fe04bdc089ad22288af4d25724972f9f3541ef32549d2761c808845df44a972b00cf631adfc564bf4852c4b6b6ab14404 SHA512 7d7f15becc7fc1803ae4e9f1906d547c89dfe1efaa51e8fda0674a3d9b060bafbaae4cb671ec844750313247edb73f17c9014c545bce58070df0ca322a0fd9a2
DIST buildbot-2.8.4.tar.gz 3134447 BLAKE2B 67052a060c9951e584a5e94f36b92262b9a1956c22efbce7ac17d83f93edde3d9443b00a7bc3afc5918006d68cc023ea0ae913e7bbf0e7cede0d9345992f83ae SHA512 45a6e6116ab5fec18b9b3a6d54886bcf86d3a821a79fd151f9311c8c3646c61051a194250395e203f02b9aa0161e12a9ca54b623897c74eee6133df752f1742c
-EBUILD buildbot-2.10.0.ebuild 7115 BLAKE2B 3416dc7d89dbf31d716d2252518edc7f5babc6c4ee7c6371d3eb04ec3d237f0a3c0a9ff115daf34fd51ca3bbcbf405a26149fcadd77541c8ef78453a42bff2a2 SHA512 dbf258c61e4f13bcd058d7d3ade73ddb599f816d2f424af19f33dfb112be4290a313ba7fdfaaa17a5cf5ac7e06a74413ed5545085b5d90d7eb433abbb543d8a0
-EBUILD buildbot-2.10.1.ebuild 7115 BLAKE2B 3416dc7d89dbf31d716d2252518edc7f5babc6c4ee7c6371d3eb04ec3d237f0a3c0a9ff115daf34fd51ca3bbcbf405a26149fcadd77541c8ef78453a42bff2a2 SHA512 dbf258c61e4f13bcd058d7d3ade73ddb599f816d2f424af19f33dfb112be4290a313ba7fdfaaa17a5cf5ac7e06a74413ed5545085b5d90d7eb433abbb543d8a0
-EBUILD buildbot-2.8.2-r1.ebuild 7148 BLAKE2B b534d558b14a65d48430cbc9762c7a98d1398fc27001ca91cc4f59b5bd29f994e0e169084962a53108235b09ded1d2647b2556282479dba988ab5601fa53b560 SHA512 ad7543a6bc68724ff9992b4fccd614e19d4e90e2b21147b28d5f2ab5f21c10c124014b62da9af914eb8a02d2ce80fd95f2e7b7876d1e671dce8e3af65018074e
-EBUILD buildbot-2.8.4.ebuild 7243 BLAKE2B dc4216d425802900e6938804ae385d052d723263251982720a82dc064781394a81735e2b14ebac778c9dee0ba70d7fce44ec999e96ea0f45b0785b6568ad03b2 SHA512 4cd3a9d1d8b570358a6c0e0a477e574573fd93ffda53ccc0af4c43a404c2f32740df9f92b130a75e038e88e4cf256f00a918e99ac781d6446055a4938d558c34
-EBUILD buildbot-9999.ebuild 7040 BLAKE2B 1769ea943685d216e5032bc5c1f6ac994c9b4d50270d61246a89bba865d447733dce191c903267705dbe0b7f278f39acf601c6df04105240437f517b7fdc6cc4 SHA512 12ef0751db8c8587e5a81374b270a45a1062e9f20b7956c48d5cfc74a39f812ecb2f73d50c8ddb3644a225363fe3c78ed692005620500c02fb873d2b5377b23a
+DIST buildbot-3.0.2.tar.gz 2221373 BLAKE2B 7f7e08375f0eb6eb0187dc734f0eefda5bc24c9bdce543cc6d094d67a211e909bff93d3a956b57cb14e800c52b7f05a2f823173becac37bd0a52790dfe158e1a SHA512 137ac6fdb7e1b67542c0a5b1d5c4736ebf9b6b7ffd5a2c18795eeec3a132abcad972252baabbf585efc3ed4bb14e61d8552c4d21ceff9c71823cca42613c6f5b
+DIST buildbot-3.1.0.tar.gz 2229027 BLAKE2B 27eaed470f18c4fe8cae1730ca92918352518263a5cc7c3affea070dc3c9890e88db81e2f0d70b1071da89a4df7fd34091ac9dd08b8d6933e568365859640c4e SHA512 2eb08af4c59b5268fb9d5dd3e5c6c4889542c39b7034aee7bb6151d4e24ce99a9c0a83ec303ca4110a55e8f7daa562ddc0debee83499984a3d9fa0fad965740c
+EBUILD buildbot-2.10.0.ebuild 7097 BLAKE2B ec93bddfc15ff763693dfc1602e4e6687fd28b00aa2e69bce95ea37a7efeedc828958d55c2995e5b7f522909bc4894bf06f6133e14a108fcb1ca8823f304a7a1 SHA512 39e7cb03d27b32432d45637d3a976c49f4fc01f5ed8e2c104329acf52b2763bc3f5cba9dd86317f031b0bee654a80bd3b3a52a0b7407ce6e394821f2ff4d9a1b
+EBUILD buildbot-2.10.1.ebuild 7097 BLAKE2B ec93bddfc15ff763693dfc1602e4e6687fd28b00aa2e69bce95ea37a7efeedc828958d55c2995e5b7f522909bc4894bf06f6133e14a108fcb1ca8823f304a7a1 SHA512 39e7cb03d27b32432d45637d3a976c49f4fc01f5ed8e2c104329acf52b2763bc3f5cba9dd86317f031b0bee654a80bd3b3a52a0b7407ce6e394821f2ff4d9a1b
+EBUILD buildbot-2.8.2-r1.ebuild 7162 BLAKE2B d01e229b6927cd16b5b852db5758146e4a284e21a915459c140c023da215e5ab40da1cfb9a7f78baaa0d0c792cdd0bfd9caae5ccab408c6ca5caf70218a3bef5 SHA512 767eab00ef736e04bde1ca898b3f21224b89bc756175d1ca769bd947872fa90c204258d4a9dae4ec69bfd623e74533107c1ab14232940471e4901983039b6f37
+EBUILD buildbot-2.8.4.ebuild 7225 BLAKE2B 2b549d7cb6e8e7d90356fc9d648a0dd466f04909944beeeda8aed4a4a2c8df13d87fa2e316d791bbc614893948b906c96c4e5b06ff1bd715aa0bc11a308473d9 SHA512 551fe27d6b28ea82842b314be4182d9ec608551e87095db9ef4de4522a7499f2fe97ed1d626c718ef20e8c8cad6609b4a9de74e6c176ad14e0f9ef703ff7d037
+EBUILD buildbot-3.0.2.ebuild 7184 BLAKE2B 8b980199ed250d0675e3d99b93bc685466090841702af32277275e5a816d124d41636a6cb3ee319e8dd03c641f2880233b7bc9bb438b6f72b2008c99eb9c98a0 SHA512 6de57aec13afb5b5174851f25098b49d21a935244bde5960c2fc45c215fbacbc31816f485cec5fca6f2734241fe5eb5500effa8f06d0263d5a1428ac30a03e12
+EBUILD buildbot-3.1.0.ebuild 7229 BLAKE2B 4bb723ce898a5718529a171fa2391223b57b6713e0b20a44bd852f45aeac959367f4013d2bd59563a5b3d639f8ac8bbd57ecc4f4643cbbaf9953eba986fe0aff SHA512 d72650d98d9690d5012681eb78437030963987791d891eeaf80b444c5cde34148771d023d342fde63178f9cfc594bff1af3721911b7b6f1db518dd945857de57
+EBUILD buildbot-9999.ebuild 7179 BLAKE2B b82966f31a9783597485fc92271a916762bb2bbcf2af5a5c1bfbf48e321b90d2e10b1a4e4575086454b194083f59402eb73bf859cf2ce3e641dfecfa29ea157a SHA512 e979841f2dd909452ec11cf6723d74728a2fcb8bf9b87bd2aeef3381674930dde15e23454622069fd482e65c6f7933a5087333ec3c2072195034621d053be8ad
MISC metadata.xml 1359 BLAKE2B 33a6b0f21ad4255f28bc527fb18a384889eb34b2ddc5df5cfa03cc4b1960712b91c787706b95913154300b8e82a5879703dd90d0bf4d796cd6b8bb2a7c4b71cd SHA512 ded6f9cd25bef2df1431b71d5ffc9f0aa3efe9d2f7433cee7800fc27e1f6f76ad64cda9bbc4d3eb3fe0f44dbd7414c75b029f78307925dab5ed06df3d52d86e7
diff --git a/dev-util/buildbot/buildbot-2.10.0.ebuild b/dev-util/buildbot/buildbot-2.10.0.ebuild
index eb906ec82e1f..c7c1f74b4a1c 100644
--- a/dev-util/buildbot/buildbot-2.10.0.ebuild
+++ b/dev-util/buildbot/buildbot-2.10.0.ebuild
@@ -94,10 +94,10 @@ src_compile() {
# missing files, so skip building
if use doc; then
einfo "Generation of documentation"
- pushd docs > /dev/null
+ pushd docs > /dev/null || die
#'man' target is currently broken
- emake html || die "Docs generation failed"
- popd > /dev/null
+ emake html
+ popd > /dev/null || die
fi
}
diff --git a/dev-util/buildbot/buildbot-2.10.1.ebuild b/dev-util/buildbot/buildbot-2.10.1.ebuild
index eb906ec82e1f..c7c1f74b4a1c 100644
--- a/dev-util/buildbot/buildbot-2.10.1.ebuild
+++ b/dev-util/buildbot/buildbot-2.10.1.ebuild
@@ -94,10 +94,10 @@ src_compile() {
# missing files, so skip building
if use doc; then
einfo "Generation of documentation"
- pushd docs > /dev/null
+ pushd docs > /dev/null || die
#'man' target is currently broken
- emake html || die "Docs generation failed"
- popd > /dev/null
+ emake html
+ popd > /dev/null || die
fi
}
diff --git a/dev-util/buildbot/buildbot-2.8.2-r1.ebuild b/dev-util/buildbot/buildbot-2.8.2-r1.ebuild
index 293a54f89f28..b0700a3d10e5 100644
--- a/dev-util/buildbot/buildbot-2.8.2-r1.ebuild
+++ b/dev-util/buildbot/buildbot-2.8.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -98,10 +98,10 @@ src_compile() {
if use doc; then
einfo "Generation of documentation"
- pushd docs > /dev/null
+ pushd docs > /dev/null || die
#'man' target is currently broken
emake html
- popd > /dev/null
+ popd > /dev/null || die
fi
}
diff --git a/dev-util/buildbot/buildbot-2.8.4.ebuild b/dev-util/buildbot/buildbot-2.8.4.ebuild
index a36c9bb8123c..e9d0a330e1ec 100644
--- a/dev-util/buildbot/buildbot-2.8.4.ebuild
+++ b/dev-util/buildbot/buildbot-2.8.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -100,10 +100,10 @@ src_compile() {
# missing files, so skip building
if use doc; then
einfo "Generation of documentation"
- pushd docs > /dev/null
+ pushd docs > /dev/null || die
#'man' target is currently broken
- emake html || die "Docs generation failed"
- popd > /dev/null
+ emake html
+ popd > /dev/null || die
fi
}
diff --git a/dev-util/buildbot/buildbot-3.0.2.ebuild b/dev-util/buildbot/buildbot-3.0.2.ebuild
new file mode 100644
index 000000000000..36fb6b16cb7b
--- /dev/null
+++ b/dev-util/buildbot/buildbot-3.0.2.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_REQ_USE="sqlite"
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+DISTUTILS_USE_SETUPTOOLS="rdepend"
+
+inherit readme.gentoo-r1 systemd distutils-r1
+
+MY_PV="${PV/_p/.post}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="BuildBot build automation system"
+HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pypi.org/project/buildbot/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz
+ https://dev.gentoo.org/~dolsen/distfiles/buildbot-2.8.0-fakedb.tar.xz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~amd64-linux ~x86-linux"
+
+IUSE="crypt doc docker examples irc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-user/buildbot
+ >=dev-python/jinja-2.1[${PYTHON_USEDEP}]
+ >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt?]
+ >=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-migrate-0.13[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
+ >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
+ dev-python/pyjwt[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
+ crypt? (
+ >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/service_identity[${PYTHON_USEDEP}]
+ )
+ irc? (
+ dev-python/txrequests[${PYTHON_USEDEP}]
+ )
+ docker? (
+ >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}
+ doc? (
+ >=dev-python/sphinx-3.2.0[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ dev-python/pyenchant[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/sphinx-jinja[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/ldap3[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ dev-python/moto[${PYTHON_USEDEP}]
+ >=dev-python/boto3-1.12.48[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pypugjs[${PYTHON_USEDEP}]
+ dev-python/txrequests[${PYTHON_USEDEP}]
+ dev-python/lz4[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/setuptools_trial[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-pkg-${PV}[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-www-${PV}[${PYTHON_USEDEP}]
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+distutils_enable_tests setup.py
+
+pkg_setup() {
+ DOC_CONTENTS="The \"buildbot\" user and the \"buildmaster\" init script has been added
+ to support starting buildbot through Gentoo's init system. To use this,
+ execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance.
+ The scripts can run as a different user if desired."
+}
+
+src_compile() {
+ distutils-r1_src_compile
+
+ # missing files, so skip building
+ if use doc; then
+ einfo "Generation of documentation"
+ pushd docs > /dev/null || die
+ #'man' target is currently broken
+ emake html
+ popd > /dev/null || die
+ fi
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ doman docs/buildbot.1
+
+ if use doc; then
+ HTML_DOCS=( docs/_build/html/ )
+ fi
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r docs/examples
+ fi
+
+ newconfd "${FILESDIR}/buildmaster.confd" buildmaster
+ newinitd "${FILESDIR}/buildmaster.initd" buildmaster
+ systemd_dounit "${FILESDIR}/buildmaster.target"
+ systemd_newunit "${FILESDIR}/buildmaster_at.service" "buildmaster@.service"
+ systemd_install_serviced "${FILESDIR}/buildmaster_at.service.conf" "buildmaster@.service"
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ ewarn
+ ewarn "Starting with buildbot-0.8.12-r2, more than one instance of buildmaster"
+ ewarn "can be run simultaneously. Note that \"BASEDIR\" in the buildbot configuration file"
+ ewarn "is now the common base directory for all instances. If you are migrating from an older"
+ ewarn "version, make sure that you copy the current contents of \"BASEDIR\" to a subdirectory."
+ ewarn "The name of the subdirectory corresponds to the name of the buildmaster instance."
+ ewarn "In order to start the service running OpenRC-based systems need to link to the init file:"
+ ewarn " ln --symbolic --relative /etc/init.d/buildmaster /etc/init.d/buildmaster.myinstance"
+ ewarn " rc-update add buildmaster.myinstance default"
+ ewarn " /etc/init.d/buildmaster.myinstance start"
+ ewarn "Systems using systemd can do the following:"
+ ewarn " systemctl enable buildmaster@myinstance.service"
+ ewarn " systemctl enable buildmaster.target"
+ ewarn " systemctl start buildmaster.target"
+ elog
+ elog "Upstream recommends the following when upgrading:"
+ elog "Each time you install a new version of Buildbot, you should run the"
+ elog "\"buildbot upgrade-master\" command on each of your pre-existing build masters."
+ elog "This will add files and fix (or at least detect) incompatibilities between"
+ elog "your old config and the new code."
+ fi
+ elog
+ elog "In order to create a new instance of buildmaster, execute:"
+ elog " emerge --config =${CATEGORY}/${PF}"
+}
+
+pkg_config() {
+ local buildmaster_path="/var/lib/buildmaster"
+ local log_path="/var/log/buildmaster"
+
+ einfo "This will prepare a new buildmaster instance in ${buildmaster_path}."
+ einfo "Press Control-C to abort."
+
+ einfo "Enter the name for the new instance: "
+ read instance_name
+ [[ -z "${instance_name}" ]] && die "Invalid instance name"
+
+ local instance_path="${buildmaster_path}/${instance_name}"
+ local instance_log_path="${log_path}/${instance_name}"
+
+ if [[ -e "${instance_path}" ]]; then
+ eerror "The instance with the specified name already exists:"
+ eerror "${instance_path}"
+ die "Instance already exists"
+ fi
+
+ local buildbot="/usr/bin/buildbot"
+ if [[ ! -d "${buildmaster_path}" ]]; then
+ mkdir --parents "${buildmaster_path}" || die "Unable to create directory ${buildmaster_path}"
+ fi
+ "${buildbot}" create-master "${instance_path}" &>/dev/null || die "Creating instance failed"
+ chown --recursive buildbot:buildbot "${instance_path}" || die "Setting permissions for instance failed"
+ mv "${instance_path}/master.cfg.sample" "${instance_path}/master.cfg" \
+ || die "Moving sample configuration failed"
+ ln --symbolic --relative "/etc/init.d/buildmaster" "/etc/init.d/buildmaster.${instance_name}" \
+ || die "Unable to create link to init file"
+
+ if [[ ! -d "${instance_log_path}" ]]; then
+ mkdir --parents "${instance_log_path}" || die "Unable to create directory ${instance_log_path}"
+ chown --recursive buildbot:buildbot "${instance_log_path}" \
+ || die "Setting permissions for instance failed"
+ fi
+ ln --symbolic --relative "${instance_log_path}/twistd.log" "${instance_path}/twistd.log" \
+ || die "Unable to create link to log file"
+
+ einfo "Successfully created a buildmaster instance at ${instance_path}."
+ einfo "To change the default settings edit the master.cfg file in this directory."
+}
diff --git a/dev-util/buildbot/buildbot-3.1.0.ebuild b/dev-util/buildbot/buildbot-3.1.0.ebuild
new file mode 100644
index 000000000000..01cb4bce9603
--- /dev/null
+++ b/dev-util/buildbot/buildbot-3.1.0.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_REQ_USE="sqlite"
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+DISTUTILS_USE_SETUPTOOLS="rdepend"
+
+inherit readme.gentoo-r1 systemd distutils-r1
+
+MY_PV="${PV/_p/.post}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="BuildBot build automation system"
+HOMEPAGE="https://buildbot.net/ https://github.com/buildbot/buildbot https://pypi.org/project/buildbot/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz
+ https://dev.gentoo.org/~dolsen/distfiles/buildbot-2.8.0-fakedb.tar.xz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~amd64-linux ~x86-linux"
+
+IUSE="crypt doc docker examples irc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-user/buildbot
+ >=dev-python/jinja-2.1[${PYTHON_USEDEP}]
+ >=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt?]
+ >=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-migrate-0.13[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
+ >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
+ dev-python/pyjwt[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/unidiff[${PYTHON_USEDEP}]
+ >=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
+ crypt? (
+ >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/service_identity[${PYTHON_USEDEP}]
+ )
+ irc? (
+ dev-python/txrequests[${PYTHON_USEDEP}]
+ )
+ docker? (
+ >=dev-python/docker-py-2.2.0[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}
+ doc? (
+ >=dev-python/sphinx-3.2.0[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ dev-python/pyenchant[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/sphinx-jinja[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/ldap3[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ dev-python/moto[${PYTHON_USEDEP}]
+ >=dev-python/boto3-1.12.48[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pypugjs[${PYTHON_USEDEP}]
+ dev-python/txrequests[${PYTHON_USEDEP}]
+ dev-python/lz4[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/setuptools_trial[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-pkg-${PV}[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
+ ~dev-util/buildbot-www-${PV}[${PYTHON_USEDEP}]
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+distutils_enable_tests setup.py
+
+pkg_setup() {
+ DOC_CONTENTS="The \"buildbot\" user and the \"buildmaster\" init script has been added
+ to support starting buildbot through Gentoo's init system. To use this,
+ execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance.
+ The scripts can run as a different user if desired."
+}
+
+src_compile() {
+ distutils-r1_src_compile
+
+ # missing files, so skip building
+ if use doc; then
+ einfo "Generation of documentation"
+ pushd docs > /dev/null || die
+ #'man' target is currently broken
+ emake html
+ popd > /dev/null || die
+ fi
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ doman docs/buildbot.1
+
+ if use doc; then
+ HTML_DOCS=( docs/_build/html/ )
+ fi
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r docs/examples
+ fi
+
+ newconfd "${FILESDIR}/buildmaster.confd" buildmaster
+ newinitd "${FILESDIR}/buildmaster.initd" buildmaster
+ systemd_dounit "${FILESDIR}/buildmaster.target"
+ systemd_newunit "${FILESDIR}/buildmaster_at.service" "buildmaster@.service"
+ systemd_install_serviced "${FILESDIR}/buildmaster_at.service.conf" "buildmaster@.service"
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ ewarn
+ ewarn "Starting with buildbot-0.8.12-r2, more than one instance of buildmaster"
+ ewarn "can be run simultaneously. Note that \"BASEDIR\" in the buildbot configuration file"
+ ewarn "is now the common base directory for all instances. If you are migrating from an older"
+ ewarn "version, make sure that you copy the current contents of \"BASEDIR\" to a subdirectory."
+ ewarn "The name of the subdirectory corresponds to the name of the buildmaster instance."
+ ewarn "In order to start the service running OpenRC-based systems need to link to the init file:"
+ ewarn " ln --symbolic --relative /etc/init.d/buildmaster /etc/init.d/buildmaster.myinstance"
+ ewarn " rc-update add buildmaster.myinstance default"
+ ewarn " /etc/init.d/buildmaster.myinstance start"
+ ewarn "Systems using systemd can do the following:"
+ ewarn " systemctl enable buildmaster@myinstance.service"
+ ewarn " systemctl enable buildmaster.target"
+ ewarn " systemctl start buildmaster.target"
+ elog
+ elog "Upstream recommends the following when upgrading:"
+ elog "Each time you install a new version of Buildbot, you should run the"
+ elog "\"buildbot upgrade-master\" command on each of your pre-existing build masters."
+ elog "This will add files and fix (or at least detect) incompatibilities between"
+ elog "your old config and the new code."
+ fi
+ elog
+ elog "In order to create a new instance of buildmaster, execute:"
+ elog " emerge --config =${CATEGORY}/${PF}"
+}
+
+pkg_config() {
+ local buildmaster_path="/var/lib/buildmaster"
+ local log_path="/var/log/buildmaster"
+
+ einfo "This will prepare a new buildmaster instance in ${buildmaster_path}."
+ einfo "Press Control-C to abort."
+
+ einfo "Enter the name for the new instance: "
+ read instance_name
+ [[ -z "${instance_name}" ]] && die "Invalid instance name"
+
+ local instance_path="${buildmaster_path}/${instance_name}"
+ local instance_log_path="${log_path}/${instance_name}"
+
+ if [[ -e "${instance_path}" ]]; then
+ eerror "The instance with the specified name already exists:"
+ eerror "${instance_path}"
+ die "Instance already exists"
+ fi
+
+ local buildbot="/usr/bin/buildbot"
+ if [[ ! -d "${buildmaster_path}" ]]; then
+ mkdir --parents "${buildmaster_path}" || die "Unable to create directory ${buildmaster_path}"
+ fi
+ "${buildbot}" create-master "${instance_path}" &>/dev/null || die "Creating instance failed"
+ chown --recursive buildbot:buildbot "${instance_path}" || die "Setting permissions for instance failed"
+ mv "${instance_path}/master.cfg.sample" "${instance_path}/master.cfg" \
+ || die "Moving sample configuration failed"
+ ln --symbolic --relative "/etc/init.d/buildmaster" "/etc/init.d/buildmaster.${instance_name}" \
+ || die "Unable to create link to init file"
+
+ if [[ ! -d "${instance_log_path}" ]]; then
+ mkdir --parents "${instance_log_path}" || die "Unable to create directory ${instance_log_path}"
+ chown --recursive buildbot:buildbot "${instance_log_path}" \
+ || die "Setting permissions for instance failed"
+ fi
+ ln --symbolic --relative "${instance_log_path}/twistd.log" "${instance_path}/twistd.log" \
+ || die "Unable to create link to log file"
+
+ einfo "Successfully created a buildmaster instance at ${instance_path}."
+ einfo "To change the default settings edit the master.cfg file in this directory."
+}
diff --git a/dev-util/buildbot/buildbot-9999.ebuild b/dev-util/buildbot/buildbot-9999.ebuild
index bb6920d8ce96..dcf36e3727e7 100644
--- a/dev-util/buildbot/buildbot-9999.ebuild
+++ b/dev-util/buildbot/buildbot-9999.ebuild
@@ -3,7 +3,7 @@
EAPI="7"
PYTHON_REQ_USE="sqlite"
-PYTHON_COMPAT=( python3_{7,8} )
+PYTHON_COMPAT=( python3_{7,8,9} )
EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"
@@ -32,11 +32,13 @@ RDEPEND="
>=dev-python/twisted-17.9.0[${PYTHON_USEDEP},crypt?]
>=dev-python/autobahn-0.16.0[${PYTHON_USEDEP}]
>=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.4.0[${PYTHON_USEDEP}]
>=dev-python/sqlalchemy-migrate-0.13[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
>=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
dev-python/pyjwt[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/unidiff[${PYTHON_USEDEP}]
>=dev-python/zope-interface-4.1.1[${PYTHON_USEDEP}]
~dev-util/buildbot-worker-${PV}[${PYTHON_USEDEP}]
crypt? (
@@ -64,6 +66,7 @@ DEPEND="${RDEPEND}
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
)
test? (
+ dev-python/ldap3[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
dev-python/moto[${PYTHON_USEDEP}]
>=dev-python/boto3-1.12.48[${PYTHON_USEDEP}]
@@ -94,10 +97,10 @@ src_compile() {
if use doc; then
einfo "Generation of documentation"
- pushd docs > /dev/null
+ pushd docs > /dev/null || die
#'man' target is currently broken
emake html
- popd > /dev/null
+ popd > /dev/null || die
fi
}