Skip to content

Commit

Permalink
dev-util/buildbot: Version bump, update live ebuild
Browse files Browse the repository at this point in the history
This version is a major change from previous version.
  • Loading branch information
dol-sen committed Aug 9, 2016
1 parent 78e6f61 commit 6876c4d
Show file tree
Hide file tree
Showing 7 changed files with 345 additions and 48 deletions.
1 change: 1 addition & 0 deletions dev-util/buildbot/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
DIST buildbot-0.8.10.tar.gz 4822307 SHA256 c4964d2ebd81cb80a14cb058fb2aab0572a1d8d86672d514e775b42deb08a5f4 SHA512 e148a1670a56837587d858d1697fe117661cbbfedab42bf7be905f9e8e4266e4ff0170b0cd81aed61234d30497a05427061c3084033f09811d0bc306b200661b WHIRLPOOL 26397b6f914266201aba4feb4df7353facad4fd0f51bdf7e35cf25205c45eadcf83f24c265e540b13d327750ce9561362be6a5aa237152cf1298d970c504f76c
DIST buildbot-0.8.12.tar.gz 4834352 SHA256 c6b66976dff712268566574d57131ec15e5682f6d4390cd5c8559bab0980c4d6 SHA512 18c5144132fb033f3581d3c494d5e8ff35d3e8b1548764452ce9ae543d710e58a2c6e3e8e46a0ef237804f9a6a45485890ae4616ab655fb00d4ccf328d6f6645 WHIRLPOOL 5754b7c0278fb5e7da8a7dd66253f6f4d12f54c125f6a78aa9018a2b6b22fd88a27e79e6821ab05e4cd9e87bf0dd08c3c73c7914d4c499ac13c48ca232ed21c8
DIST buildbot-0.9.0rc1.tar.gz 3004783 SHA256 f089c4c6494c82ad8d42bf80a356eef62580054d864a9c8b2217adeeec53ba27 SHA512 4ec664f24f001c172d378d378ced95ad4507893a0f989178b078f4364fc9e52b2fb79196fc6f440f94f36cb14fd7b9e53530b4f5ee21fb81a0698789676be778 WHIRLPOOL 049f9c4efa37658bb2d5c9b04017f260c3d04e5b2df4a66eb3b3d99d6119343dcb5f78f50c8b00959932c323acf512729dbc5acd76d46eb418c6f120a8cba4b6
161 changes: 161 additions & 0 deletions dev-util/buildbot/buildbot-0.9.0_rc1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="5"
PYTHON_REQ_USE="sqlite"
PYTHON_COMPAT=( python2_7 )

EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"

[[ ${PV} == *9999 ]] && inherit git-r3
inherit readme.gentoo-r1 user systemd distutils-r1

MY_PV="${PV/_p/p}"
MY_V="0.9.0rc1"
MY_P="${PN}-${MY_V}"

DESCRIPTION="BuildBot build automation system"
HOMEPAGE="http://trac.buildbot.net/ https://github.com/buildbot/buildbot http://pypi.python.org/pypi/buildbot"
[[ ${PV} == *9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
if [[ ${PV} == *9999 ]]; then
KEYWORDS=""
else
KEYWORDS="~amd64"
fi

IUSE="crypt doc examples irc mail manhole test"

RDEPEND=">=dev-python/jinja-2.1[${PYTHON_USEDEP}]
|| (
>=dev-python/twisted-web-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
)
>=dev-python/sqlalchemy-0.8[${PYTHON_USEDEP}]
>=dev-python/sqlalchemy-migrate-0.9[${PYTHON_USEDEP}]
crypt? (
>=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
dev-python/idna[${PYTHON_USEDEP}]
dev-python/service_identity[${PYTHON_USEDEP}]
)
irc? (
|| ( >=dev-python/twisted-words-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
mail? (
|| ( >=dev-python/twisted-mail-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
manhole? (
|| ( >=dev-python/twisted-conch-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
dev-python/future[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
>=dev-python/autobahn-0.10.2[${PYTHON_USEDEP}]
<dev-python/autobahn-0.13.0[${PYTHON_USEDEP}]
>=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}
>=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}]
doc? ( >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}] )
test? (
>=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
|| (
(
>=dev-python/twisted-mail-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-web-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-words-14.0.1[${PYTHON_USEDEP}]
)
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
dev-python/moto[${PYTHON_USEDEP}]
dev-python/boto3[${PYTHON_USEDEP}]
dev-python/ramlfications[${PYTHON_USEDEP}]
dev-python/pyjade[${PYTHON_USEDEP}]
dev-python/txgithub[${PYTHON_USEDEP}]
dev-python/txrequests[${PYTHON_USEDEP}]
)"

# still yet to be added deps
# doc? ( 'sphinxcontrib-blockdiag',
# 'sphinxcontrib-spelling',
# 'pyenchant',
# 'docutils>=0.8',
# 'sphinx-jinja',)

S=${WORKDIR}/${MY_P}
[[ ${PV} == *9999 ]] && S=${S}/master

pkg_setup() {
enewuser buildbot

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,
set up your build master following the documentation, make sure the
resulting directories are owned by the \"buildbot\" user and point
\"${EROOT}etc/conf.d/buildmaster\" at the right location. The scripts can
run as a different user if desired. If you need to run more than one
build master, just copy the scripts."
}

# docs generation is broken might need a separate ebuild
#python_compile_all() {
#if use doc; then
#einfo "Generation of documentation"
##'man' target is currently broken
#emake -C docs html
#fi
#}

python_install_all() {
distutils-r1_python_install_all

doman docs/buildbot.1

#if use doc; then
# dohtml -r docs/_build/html/
# # TODO: install man pages
#fi

if use examples; then
insinto /usr/share/doc/${PF}
doins -r contrib docs/examples
fi

newconfd "${FILESDIR}"/buildmaster.confd.9 buildmaster
newinitd "${FILESDIR}"/buildmaster.initd.9 buildmaster
systemd_dounit "${FILESDIR}/${PN}9".service

# In case of multiple masters, it's possible to edit web files
# so all master can share the changes. So protect them!
# If something else need to be protected, please open a bug
# on http://bugs.gentoo.org
local cp
add_config_protect() {
cp+=" $(python_get_sitedir)/${PN}/status/web"
}
python_foreach_impl add_config_protect
echo "CONFIG_PROTECT=\"${cp}\"" \
> 85${PN} || die
doenvd 85${PN}

readme.gentoo_create_doc
}

pkg_postinst() {
readme.gentoo_print_elog
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."
}
145 changes: 99 additions & 46 deletions dev-util/buildbot/buildbot-9999.ebuild
Original file line number Diff line number Diff line change
@@ -1,52 +1,97 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="5"
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE="sqlite"
PYTHON_COMPAT=( python2_7 )

EGIT_REPO_URI="https://github.com/buildbot/${PN}.git"

[[ ${PV} = 9999 ]] && inherit git-2
inherit distutils-r1 readme.gentoo systemd user
[[ ${PV} == *9999 ]] && inherit git-r3
inherit readme.gentoo-r1 user systemd distutils-r1

MY_PV="${PV/_p/p}"
MY_P="${PN}-${MY_PV}"

DESCRIPTION="BuildBot build automation system"
HOMEPAGE="http://buildbot.net/ https://pypi.python.org/pypi/buildbot"
[[ ${PV} = 9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
HOMEPAGE="http://trac.buildbot.net/ https://github.com/buildbot/buildbot http://pypi.python.org/pypi/buildbot"
[[ ${PV} == *9999 ]] || SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
if [[ ${PV} == 9999 ]]; then
if [[ ${PV} == *9999 ]]; then
KEYWORDS=""
else
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-interix ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris"
KEYWORDS="~amd64"
fi
IUSE="doc examples irc mail manhole test"

IUSE="crypt doc examples irc mail manhole test"

RDEPEND=">=dev-python/jinja-2.1[${PYTHON_USEDEP}]
dev-python/twisted-core[${PYTHON_USEDEP}]
dev-python/twisted-web[${PYTHON_USEDEP}]
<=dev-python/sqlalchemy-0.7.10-r999[${PYTHON_USEDEP}]
~dev-python/sqlalchemy-migrate-0.7.2[${PYTHON_USEDEP}]
irc? ( dev-python/twisted-words[${PYTHON_USEDEP}] )
mail? ( dev-python/twisted-mail[${PYTHON_USEDEP}] )
manhole? ( dev-python/twisted-conch[${PYTHON_USEDEP}] )"
DEPEND="${DEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
|| (
>=dev-python/twisted-web-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-16.0.0[${PYTHON_USEDEP}]
)
>=dev-python/sqlalchemy-0.8[${PYTHON_USEDEP}]
>=dev-python/sqlalchemy-migrate-0.9[${PYTHON_USEDEP}]
crypt? (
>=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
dev-python/idna[${PYTHON_USEDEP}]
dev-python/service_identity[${PYTHON_USEDEP}]
)
irc? (
|| ( >=dev-python/twisted-words-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
mail? (
|| ( >=dev-python/twisted-mail-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
manhole? (
|| ( >=dev-python/twisted-conch-14.0.1[${PYTHON_USEDEP}]
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
)
dev-python/future[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
>=dev-python/autobahn-0.10.2[${PYTHON_USEDEP}]
<dev-python/autobahn-0.13.0[${PYTHON_USEDEP}]
>=dev-python/txaio-2.2.2[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}
>=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}]
doc? ( >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}] )
test? (
dev-python/python-dateutil[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/twisted-mail[${PYTHON_USEDEP}]
dev-python/twisted-web[${PYTHON_USEDEP}]
dev-python/twisted-words[${PYTHON_USEDEP}]
|| (
(
>=dev-python/twisted-mail-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-web-14.0.1[${PYTHON_USEDEP}]
>=dev-python/twisted-words-14.0.1[${PYTHON_USEDEP}]
)
<dev-python/twisted-16.3.0[${PYTHON_USEDEP}]
)
dev-python/moto[${PYTHON_USEDEP}]
dev-python/boto3[${PYTHON_USEDEP}]
dev-python/ramlfications[${PYTHON_USEDEP}]
dev-python/pyjade[${PYTHON_USEDEP}]
dev-python/txgithub[${PYTHON_USEDEP}]
dev-python/txrequests[${PYTHON_USEDEP}]
)"

S="${WORKDIR}/${MY_P}"
# still yet to be added deps
# doc? ( 'sphinxcontrib-blockdiag',
# 'sphinxcontrib-spelling',
# 'pyenchant',
# 'docutils>=0.8',
# 'sphinx-jinja',)

S=${WORKDIR}/${MY_P}
[[ ${PV} == *9999 ]] && S=${S}/master

pkg_setup() {
enewuser buildbot
Expand All @@ -60,38 +105,46 @@ pkg_setup() {
build master, just copy the scripts."
}

src_compile() {
[[ ${PV} = 9999 ]] && cd master/
distutils-r1_src_compile
# docs generation is broken might need a separate ebuild
#python_compile_all() {
#if use doc; then
#einfo "Generation of documentation"
##'man' target is currently broken
#emake -C docs html
#fi
#}

if use doc; then
einfo "Generation of documentation"
pushd docs > /dev/null
#'man' target is currently broken
emake html
popd > /dev/null
fi
}

src_install() {
[[ ${PV} = 9999 ]] && cd master/
distutils-r1_src_install
python_install_all() {
distutils-r1_python_install_all

doman docs/buildbot.1

if use doc; then
dohtml -r docs/_build/html/
# TODO: install man pages
fi
#if use doc; then
# dohtml -r docs/_build/html/
# # TODO: install man pages
#fi

if use examples; then
insinto /usr/share/doc/${PF}
doins -r contrib docs/examples
fi

newconfd "${FILESDIR}/buildmaster.confd" buildmaster
newinitd "${FILESDIR}/buildmaster.initd" buildmaster
systemd_dounit "${FILESDIR}"/${PN}.service
newconfd "${FILESDIR}"/buildmaster.confd.9 buildmaster
newinitd "${FILESDIR}"/buildmaster.initd.9 buildmaster
systemd_dounit "${FILESDIR}/${PN}9".service

# In case of multiple masters, it's possible to edit web files
# so all master can share the changes. So protect them!
# If something else need to be protected, please open a bug
# on http://bugs.gentoo.org
local cp
add_config_protect() {
cp+=" $(python_get_sitedir)/${PN}/status/web"
}
python_foreach_impl add_config_protect
echo "CONFIG_PROTECT=\"${cp}\"" \
> 85${PN} || die
doenvd 85${PN}

readme.gentoo_create_doc
}
Expand Down
14 changes: 14 additions & 0 deletions dev-util/buildbot/files/buildbot9..service
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[Unit]
Description=buildbot master daemon
After=local-fs.target network.target

[Service]
Type=forking
User=buildbot
WorkingDirectory=/var/lib/buildmaster
ExecStartPre=/usr/bin/buildbot checkconfig /var/lib/buildmaster
ExecStart=/usr/bin/buildbot start /var/lib/buildmaster
ExecStop=/usr/bin/buildbot stop /var/lib/buildmaster

[Install]
WantedBy=multi-user.target
10 changes: 10 additions & 0 deletions dev-util/buildbot/files/buildmaster.confd.9
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

# Path to the build master's basedir.
BASEDIR=/var/lib/buildmaster

# User account for the buildmaster.
# The basedir should be owned by this user.
USERNAME=buildbot

# Extra options to pass to twistd.
TWISTD_OPTS=""
Loading

0 comments on commit 6876c4d

Please sign in to comment.