public inbox for buildbot@sourceware.org
 help / color / mirror / Atom feed
From: Mark Wielaard <mark@klomp.org>
To: buildbot@sourceware.org
Cc: Dodji Seketeli <dodji@seketeli.org>, Mark Wielaard <mark@klomp.org>
Subject: [PATCH] Add libabigail html-doc snapshot builder
Date: Sun,  9 Apr 2023 22:19:37 +0200	[thread overview]
Message-ID: <20230409201937.2987322-1-mark@klomp.org> (raw)

Add doxygen and python3-sphinx to Containerfile-debian-stable.
Add a libabigail snapshots scheduler, buildfactory and builder.
---
 .../containers/Containerfile-debian-stable    |  1 +
 builder/master.cfg                            | 40 +++++++++++++++++++
 2 files changed, 41 insertions(+)

diff --git a/builder/containers/Containerfile-debian-stable b/builder/containers/Containerfile-debian-stable
index 37f11f7..837564e 100644
--- a/builder/containers/Containerfile-debian-stable
+++ b/builder/containers/Containerfile-debian-stable
@@ -15,6 +15,7 @@ RUN apt-get update && \
       libdebuginfod-dev \
       texinfo \
       xmlto xsltproc docbook-xsl docbook-xml \
+      doxygen python3-sphinx \
       libxml2-dev dos2unix python3-dev python3-mock \
       python3-rpm python3-xdg mime-support libopenmpi-dev gdb help2man wget libxxhash-dev \
       libjson-c-dev jq socat \
diff --git a/builder/master.cfg b/builder/master.cfg
index ccf1745..57d7fb8 100644
--- a/builder/master.cfg
+++ b/builder/master.cfg
@@ -578,6 +578,17 @@ libabigail_try_scheduler = schedulers.AnyBranchScheduler(
                       "libabigail-try-opensuseleap-x86_64"])
 c['schedulers'].append(libabigail_try_scheduler)
 
+libabigail_snapshot_scheduler = schedulers.Periodic(
+        name="libabigail-snapshots",
+        change_filter=util.ChangeFilter(project="libabigail",
+                                        branch="master"),
+        branch="master",
+        periodicBuildTimer=15*60, # 15 minutes in seconds
+        onlyIfChanged=True,
+        reason="libabigail periodic project master branch snapshot",
+        builderNames=["libabigail-snapshots-html-doc"])
+c['schedulers'].append(libabigail_snapshot_scheduler)
+
 dwz_scheduler = schedulers.SingleBranchScheduler(
         name="dwz",
         change_filter=util.ChangeFilter(project="dwz",
@@ -3591,6 +3602,15 @@ libabigail_rm_dist = steps.ShellCommand(
         command=["rm", "-rf", "libabigail-*"],
         name= "rm -rf libabigail-*")
 
+libabigail_make_html_doc_step = steps.Compile(
+        name="make html-doc",
+        command=["make", "html-doc"])
+libabigail_create_output_step = steps.ShellCommand(
+        name="create output",
+        command="mkdir /home/builder/shared/output && mv ./doc/manuals/html /home/builder/shared/output/manuals && mv ./doc/api/html /home/builder/shared/output/api && mv ./doc/website/html /home/builder/shared/output/website")
+libabigail_create_publish_file_step = steps.ShellCommand(
+        name="create publish file",
+        command="echo libabigail/html-doc > /home/builder/shared/publish")
 
 libabigail_upload_to_bunsen = bunsen_logfile_upload_cpio_steps(
         ["*.trs", "*.log"])
@@ -3618,6 +3638,16 @@ libabigail_factory_checkonly.addStep(libabigail_make_check_test_suite_step)
 libabigail_factory_checkonly.addSteps(libabigail_upload_to_bunsen)
 libabigail_factory_checkonly.addStep(make_distclean_step)
 
+# libabigail snapshot html-doc factory
+libabigail_factory_snapshot_html_doc = util.BuildFactory()
+libabigail_factory_snapshot_html_doc.addStep(libabigail_git_step)
+libabigail_factory_snapshot_html_doc.addStep(autoreconf_step)
+libabigail_factory_snapshot_html_doc.addStep(configure_step)
+libabigail_factory_snapshot_html_doc.addStep(libabigail_make_html_doc_step)
+libabigail_factory_snapshot_html_doc.addStep(wait_snapshots_output_ready_step)
+libabigail_factory_snapshot_html_doc.addStep(libabigail_create_output_step)
+libabigail_factory_snapshot_html_doc.addStep(libabigail_create_publish_file_step)
+
 libabigail_centos_x86_64_builder = util.BuilderConfig(
         name="libabigail-centos-x86_64",
         workernames=["centos-x86_64"],
@@ -3888,6 +3918,16 @@ valgrind_auxchecks_step = steps.Test(
         name="make auxchecks",
         haltOnFailure=True)
 
+libabigail_snapshots_html_doc_builder = util.BuilderConfig(
+        name="libabigail-snapshots-html-doc",
+        collapseRequests=True,
+        properties={'container-file':
+                    readContainerFile('debian-stable')},
+        workernames="snapshots",
+        tags=["libabigail-snapshots", "html-doc"],
+        factory=libabigail_factory_snapshot_html_doc)
+c['builders'].append(libabigail_snapshots_html_doc_builder)
+
 valgrind_dist_aux_factory = util.BuildFactory()
 valgrind_dist_aux_factory.addStep(valgrind_git_step)
 valgrind_dist_aux_factory.addStep(valgrind_autogen_step)
-- 
2.31.1


                 reply	other threads:[~2023-04-09 20:19 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230409201937.2987322-1-mark@klomp.org \
    --to=mark@klomp.org \
    --cc=buildbot@sourceware.org \
    --cc=dodji@seketeli.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).