diff options
author | Brian Dolbec <dolsen@gentoo.org> | 2017-02-10 13:19:22 -0800 |
---|---|---|
committer | Brian Dolbec <dolsen@gentoo.org> | 2017-02-10 13:49:20 -0800 |
commit | c55e4f15deb6f77dca0240284dd491441e27e9c3 (patch) | |
tree | 2474f2c5d129141fdfb0b000cf2a8e115449b538 /dev-util | |
parent | dev-python/sphinx-jinja: New package, dep of buildot[doc] (diff) | |
download | gentoo-c55e4f15deb6f77dca0240284dd491441e27e9c3.tar.gz gentoo-c55e4f15deb6f77dca0240284dd491441e27e9c3.tar.bz2 gentoo-c55e4f15deb6f77dca0240284dd491441e27e9c3.zip |
dev-util/buildbot: Version bump, enable docs use flag
I now have sphinx docs generation working for this ebuild.
Patches submitted upstream for missing files.
Package-Manager: Portage-2.3.3_p38, Repoman-2.3.1_p31
Signed-off-by: Brian Dolbec <dolsen@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/buildbot/Manifest | 2 | ||||
-rw-r--r-- | dev-util/buildbot/buildbot-0.9.4.ebuild | 216 | ||||
-rw-r--r-- | dev-util/buildbot/buildbot-9999.ebuild | 17 | ||||
-rw-r--r-- | dev-util/buildbot/files/buildbot-0.9.4.docs.patch | 130 |
4 files changed, 357 insertions, 8 deletions
diff --git a/dev-util/buildbot/Manifest b/dev-util/buildbot/Manifest index f8e3b1535788..d8f979ee5dae 100644 --- a/dev-util/buildbot/Manifest +++ b/dev-util/buildbot/Manifest @@ -4,4 +4,6 @@ DIST buildbot-0.9.0.post1.tar.gz 3013406 SHA256 afd8229c9fd33daa6d8227cd665c75b1 DIST buildbot-0.9.1.tar.gz 3051975 SHA256 a9f385f66f5cc3021f4cbfce92496673ebf9171578fa9e5ae4f66732276d64ce SHA512 c3b845a3607c5eaa0a5076755bc0e285ba7c6809f9d7934fab7c6cf8299610e921034656cf3792113961176a821138c6d069122d4d1f1698f16badf3ef9a0dea WHIRLPOOL 6767878665f09ff7b6219ddcda73487b441f3e33ce580fc2df2f16d430217d4ac38b93e22a3f3abd9c8380ac6e6c93de6767faec1aa5615f82fbe8d8e20759e1 DIST buildbot-0.9.2.tar.gz 3026977 SHA256 d33ec059941cf830c8f7b7f336a76e32e7122e2690a27b784efeddc6dbf4564a SHA512 a1c6345bcceb5c8f4ed600542625eee81e59af00a1b12054fe77e3b4ed5536b7004fcbd07cfc96baa3061193eb79e4290e056cf7157b71831370654c057a2c57 WHIRLPOOL 075a00d85df5321180345348a02ac12cc8a1bea36d6e60617ebe54de71ce5a989fcf009822834dad1994a6f83ebb5c6132f350902fd31d5b279c5c13014bb4b9 DIST buildbot-0.9.3.tar.gz 3031033 SHA256 c2bc6a8139b0f97d304bfa047a4c414e42ea12ba94e34d82ae7cb356a69d87fb SHA512 a6f18e88c33fe1eafe0b9b154fb77f0d93db71145faab527ecd5ce53fcbbff48b915de4a02461da87eefbd58a649a56d3a9b16ba759d978e70a70898a15681b7 WHIRLPOOL b62fd5bea0b647b703674024e50731e7713e9488dec570d8e42beabaa2135a81349b955164cf01898b12ab0123d9a8f3b76e3364f65003b8af85a54755b6ad22 +DIST buildbot-0.9.4.docs.tar.xz 69224 SHA256 69fc33762a885568b02c42954a64d62d28bcb750b3aed011c3da8a9f84c13371 SHA512 906e551e0db32c8a0b4010b3b8b00c4776e3d1b7d7381e4dc0ccf01d361184e4605c3ab0ecaf4e42207bd73c3e72f8a570a4d4c29db72f4d68241abf48741d7e WHIRLPOOL 95f263e0b9ab22a649118f362d866b08cbdf62511f2a1f9bd6a7265103f174e35d0c8d86ad6a3b7dd5fd0b4277d60dbd25801c5e6f7e414e7fa634c241dae987 +DIST buildbot-0.9.4.tar.gz 3020851 SHA256 068161cd9ada10b87f40117c768a37ce796ebf5e7bf08f224f4c7ded88cd7472 SHA512 938a94192560b989a277d9650c50781d7e7c116bc5e2010ccb2e655df757de0ee254369531b2f432c835c0285c724e52d999a393d0ce1b104d4b9dcc5c6687da WHIRLPOOL 0ffe61b82ee93b78cdb3cb74ef96d5a3547e0fcab9ec8093b59a7212c5e2a1ad16eff046306bffcc0ea63b2e0bf2df1e54b5a0874dc78e27744db2088ccac804 DIST buildbot-test_templates.tar.xz 304 SHA256 3d581b74c21f88119f7e5f93f381f2004662ca7219aae9a05f0bd3f8cae48317 SHA512 87ba914896d86f70e2e4b24a51248c475bf24fad4c02e3a99d6d7fa41b5a57f369865b20a7c30dafa3162ba50ccb04de1809b0cf9d53e45537738e4821229866 WHIRLPOOL 151dc42ceed8e90c96cdd0b6e937f13019c0d6cd5e2e878ee971cbc69ce4ea56b240b58fa743766bd0d71cafa38279e37be077324eb5ece7b99df46eaf566dfe diff --git a/dev-util/buildbot/buildbot-0.9.4.ebuild b/dev-util/buildbot/buildbot-0.9.4.ebuild new file mode 100644 index 000000000000..81e30b0d72f3 --- /dev/null +++ b/dev-util/buildbot/buildbot-0.9.4.ebuild @@ -0,0 +1,216 @@ +# Copyright 1999-2017 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" + +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://github.com/buildbot/buildbot https://pypi.python.org/pypi/buildbot" +SRC_URI=" + mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz + http://dev.gentoo.org/~dolsen/distfiles/buildbot-0.9.4.docs.tar.xz +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="crypt doc examples irc mail manhole test" + +RDEPEND=">=dev-python/jinja-2.1[${PYTHON_USEDEP}] + || ( + >=dev-python/twisted-16.0.0[${PYTHON_USEDEP}] + >=dev-python/twisted-web-14.0.1[${PYTHON_USEDEP}] + ) + >=dev-python/autobahn-0.16.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/txrequests[${PYTHON_USEDEP}] + || ( >=dev-python/twisted-16.0.0[${PYTHON_USEDEP}] + >=dev-python/twisted-words-14.0.1[${PYTHON_USEDEP}] + ) + ) + mail? ( + || ( >=dev-python/twisted-16.0.0[${PYTHON_USEDEP}] + >=dev-python/twisted-mail-14.0.1[${PYTHON_USEDEP}] + ) + ) + manhole? ( + || ( >=dev-python/twisted-16.0.0[${PYTHON_USEDEP}] + >=dev-python/twisted-conch-14.0.1[${PYTHON_USEDEP}] + ) + ) + dev-python/future[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}] + >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}] + dev-python/pyjwt[${PYTHON_USEDEP}] + " +DEPEND="${RDEPEND} + >=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}] + doc? ( + >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}] + dev-python/pyenchant[${PYTHON_USEDEP}] + >=dev-python/docutils-0.8[${PYTHON_USEDEP}] + dev-python/sphinx-jinja[${PYTHON_USEDEP}] + dev-python/ramlfications[${PYTHON_USEDEP}] + ) + test? ( + >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}] + >=dev-python/mock-2.0.0[${PYTHON_USEDEP}] + || ( + >=dev-python/twisted-16.0.0[${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/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} + +src_unpack() { + unpack ${MY_P}.tar.gz + cd ${MY_P} + unpack buildbot-0.9.4.docs.tar.xz +} + +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, + execute \"emerge --config =${CATEGORY}/${PF}\" to create a new instance. + The scripts can run as a different user if desired." +} + +python_prepare_all() { + if use doc; then + epatch "${FILESDIR}/buildbot-0.9.4.docs.patch" + fi +} + +src_compile() { + distutils-r1_src_compile + + if use doc; then + einfo "Generation of documentation" + pushd docs > /dev/null + EPYTHON="python2.7" emake html + popd > /dev/null + fi +} + +src_install() { + distutils-r1_src_install + + 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" 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 +} + +python_test() { + distutils_install_for_testing + + esetup.py test || die "Tests failed under ${EPYTHON}" +} + +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" + 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}" + 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 "${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" + + 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 482ec749cc2e..51ba7e267f24 100644 --- a/dev-util/buildbot/buildbot-9999.ebuild +++ b/dev-util/buildbot/buildbot-9999.ebuild @@ -60,10 +60,18 @@ RDEPEND=">=dev-python/jinja-2.1[${PYTHON_USEDEP}] dev-python/future[${PYTHON_USEDEP}] >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}] >=dev-python/txaio-2.2.2[${PYTHON_USEDEP}] + dev-python/pyjwt[${PYTHON_USEDEP}] " DEPEND="${RDEPEND} >=dev-python/setuptools-21.2.1[${PYTHON_USEDEP}] - doc? ( >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}] ) + doc? ( + >=dev-python/sphinx-1.4.3[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}] + dev-python/pyenchant[${PYTHON_USEDEP}] + >=dev-python/docutils-0.8[${PYTHON_USEDEP}] + dev-python/sphinx-jinja[${PYTHON_USEDEP}] + ) test? ( >=dev-python/python-dateutil-1.5[${PYTHON_USEDEP}] >=dev-python/mock-2.0.0[${PYTHON_USEDEP}] @@ -83,13 +91,6 @@ DEPEND="${RDEPEND} 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 diff --git a/dev-util/buildbot/files/buildbot-0.9.4.docs.patch b/dev-util/buildbot/files/buildbot-0.9.4.docs.patch new file mode 100644 index 000000000000..1a27713cb939 --- /dev/null +++ b/dev-util/buildbot/files/buildbot-0.9.4.docs.patch @@ -0,0 +1,130 @@ +diff --git a/docs/Makefile b/docs/Makefile +index 55637302d..c4fde481e 100644 +--- a/docs/Makefile ++++ b/docs/Makefile +@@ -24,7 +24,7 @@ PAPEROPT_a4 = -D latex_paper_size=a4 + PAPEROPT_letter = -D latex_paper_size=letter + ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +-.PHONY: help clean towncrier html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest ++.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest + + help: + @echo "Please use \`make <target>' where <target> is one of" +@@ -51,38 +51,38 @@ clean: + towncrier: + cd ../../; towncrier --draft |grep 'No significant changes.' || yes n | towncrier + +-html: conf.py towncrier ++html: conf.py + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +-dirhtml: conf.py towncrier ++dirhtml: conf.py + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +-singlehtml: conf.py towncrier ++singlehtml: conf.py + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +-pickle: conf.py towncrier ++pickle: conf.py + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +-json: conf.py towncrier ++json: conf.py + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +-htmlhelp: conf.py towncrier ++htmlhelp: conf.py + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +-qthelp: conf.py towncrier ++qthelp: conf.py + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ +@@ -91,7 +91,7 @@ qthelp: conf.py towncrier + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/BuildbotTutorial.qhc" + +-devhelp: conf.py towncrier ++devhelp: conf.py + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." +@@ -100,52 +100,52 @@ devhelp: conf.py towncrier + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/BuildbotTutorial" + @echo "# devhelp" + +-epub: conf.py towncrier ++epub: conf.py + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +-latex: conf.py towncrier ++latex: conf.py + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +-latexpdf: conf.py towncrier ++latexpdf: conf.py + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + make -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +-text: conf.py towncrier ++text: conf.py + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +-man: conf.py towncrier ++man: conf.py + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +-changes: conf.py towncrier ++changes: conf.py + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +-linkcheck: conf.py towncrier ++linkcheck: conf.py + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +-spelling: conf.py towncrier ++spelling: conf.py + $(SPHINXBUILD) -b spelling $(ALLSPHINXOPTS) $(BUILDDIR)/spelling + @echo + @echo "Spelling check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/spelling/output.txt." + +-doctest: conf.py towncrier ++doctest: conf.py + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." |