public inbox for buildbot@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] Add annobin builders
@ 2023-04-12 16:21 Mark Wielaard
  2023-04-13  9:00 ` Nick Clifton
  0 siblings, 1 reply; 2+ messages in thread
From: Mark Wielaard @ 2023-04-12 16:21 UTC (permalink / raw)
  To: buildbot; +Cc: Nick Clifton, Mark Wielaard

Add development requirements to fedora Containerfiles. Add annobin
gitpoller scheduler factory and fedora x86_64, arm64, ppc64le and
s390x builders.
---
 .../containers/Containerfile-fedora-latest    |  3 +-
 .../containers/Containerfile-fedora-rawhide   |  3 +-
 builder/master.cfg                            | 81 +++++++++++++++++++
 3 files changed, 85 insertions(+), 2 deletions(-)

diff --git a/builder/containers/Containerfile-fedora-latest b/builder/containers/Containerfile-fedora-latest
index df7b4ff..e4016af 100644
--- a/builder/containers/Containerfile-fedora-latest
+++ b/builder/containers/Containerfile-fedora-latest
@@ -11,7 +11,8 @@ RUN dnf upgrade -y && \
         findutils file tar curl libarchive-devel libcurl-devel \
         libmicrohttpd-devel sqlite-devel elfutils elfutils-devel ncurses-devel \
         jq json-c-devel socat \
-        texinfo \
+        texinfo elfutils-debuginfod elfutils-debuginfod-client-devel \
+        gcc-plugin-devel binutils-devel \
         xmlto xmlto-tex fop poppler-utils libxslt docbook-dtds docbook-style-xsl \
         libxml2-devel dos2unix dpkg koji python3-devel python3-koji python3-mock \
         python3-rpm python3-pyxdg mailcap openmpi-devel gdb help2man wget xxhash-devel \
diff --git a/builder/containers/Containerfile-fedora-rawhide b/builder/containers/Containerfile-fedora-rawhide
index 3dc6302..5e7719f 100644
--- a/builder/containers/Containerfile-fedora-rawhide
+++ b/builder/containers/Containerfile-fedora-rawhide
@@ -11,7 +11,8 @@ RUN dnf upgrade -y && \
         findutils file tar curl libarchive-devel libcurl-devel \
         libmicrohttpd-devel sqlite-devel elfutils elfutils-devel ncurses-devel \
         jq json-c-devel socat \
-        texinfo \
+        texinfo elfutils-debuginfod elfutils-debuginfod-client-devel \
+        gcc-plugin-devel binutils-devel \
         xmlto xmlto-tex fop poppler-utils libxslt docbook-dtds docbook-style-xsl \
         libxml2-devel dos2unix dpkg koji python3-devel python3-koji python3-mock \
         python3-rpm python3-pyxdg mailcap openmpi-devel gdb help2man wget xxhash-devel \
diff --git a/builder/master.cfg b/builder/master.cfg
index 04f025c..5f4eb0a 100644
--- a/builder/master.cfg
+++ b/builder/master.cfg
@@ -458,6 +458,14 @@ gnupoke_gitpoller = changes.GitPoller(repourl=gnupoke_repourl,
                                       project='gnupoke')
 c['change_source'].append(gnupoke_gitpoller)
 
+annobin_repourl='https://sourceware.org/git/annobin.git'
+annobin_gitpoller = changes.GitPoller(repourl=annobin_repourl,
+                                      branches=['master'],
+                                      pollInterval=3*60,
+                                      pollRandomDelayMax=2*60,
+                                      project='annobin')
+c['change_source'].append(annobin_gitpoller)
+
 
 
 ####### SCHEDULERS
@@ -974,6 +982,17 @@ gnupoke_scheduler = schedulers.SingleBranchScheduler(
                       "gnupoke-gentoo-sparc"])
 c['schedulers'].append(gnupoke_scheduler)
 
+annobin_scheduler = schedulers.SingleBranchScheduler(
+        name="annobin",
+        change_filter=util.ChangeFilter(project="annobin",
+                                        branch="master"),
+        builderNames=["annobin-fedora-x86_64",
+                      "annobin-rawhide-x86_64",
+                      "annobin-fedora-arm64",
+                      "annobin-fedora-ppc64le",
+                      "annobin-fedora-s390x"])
+c['schedulers'].append(annobin_scheduler)
+
 ####### BUILDERS
 
 # The 'builders' list defines the Builders, which tell Buildbot how to perform a build:
@@ -4295,6 +4314,68 @@ gnupoke_gentoo_space_builder = util.BuilderConfig(
         factory=gnupoke_factory)
 c['builders'].append(gnupoke_gentoo_space_builder)
 
+# annobin steps, builders and factories
+
+# annobin checkouts have generated config files included, but might
+# have odd time stamps causing them to be re-autoconfed, which need
+# very specific auto* versions. Touch the generated files to prevent
+# regeneration.
+annobin_touch_configs_step = steps.ShellCommand(
+        command="touch aclocal.m4 gcc-plugin/config.h.in configure */configure Makefile.in */Makefile.in",
+        name= "touch config files")
+
+annobin_factory = util.BuildFactory()
+annobin_factory.addStep(steps.Git(
+        repourl=annobin_repourl,
+        mode='full', method='fresh',
+        name="git checkout",
+        getDescription={'tags':True, 'always':True},
+        haltOnFailure=True))
+annobin_factory.addStep(annobin_touch_configs_step)
+annobin_factory.addStep(configure_step)
+annobin_factory.addStep(make_step)
+annobin_factory.addStep(make_check_step)
+annobin_factory.addSteps(bunsen_logfile_upload_cpio_steps(["*.log"]))
+
+annobin_fedora_x86_64_builder = util.BuilderConfig(
+        name="annobin-fedora-x86_64",
+        tags=["annobin", "fedora", "x86_64"],
+        properties={'container-file':
+                    readContainerFile('fedora-latest')},
+        workernames=vm_workers,
+        factory=annobin_factory)
+c['builders'].append(annobin_fedora_x86_64_builder)
+
+annobin_rawhide_x86_64_builder = util.BuilderConfig(
+        name="annobin-rawhide-x86_64",
+        tags=["annobin", "rawhide", "x86_64"],
+        properties={'container-file':
+                    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        factory=annobin_factory)
+c['builders'].append(annobin_rawhide_x86_64_builder)
+
+annobin_fedora_arm64_builder = util.BuilderConfig(
+        name="annobin-fedora-arm64",
+        workernames=["fedora-arm64"],
+        tags=["annobin", "fedora", "arm64"],
+        factory=annobin_factory)
+c['builders'].append(annobin_fedora_arm64_builder)
+
+annobin_fedora_ppc64le_builder = util.BuilderConfig(
+        name="annobin-fedora-ppc64le",
+        workernames=["fedora-ppc64le"],
+        tags=["annobin", "fedora", "ppc64le"],
+        factory=annobin_factory)
+c['builders'].append(annobin_fedora_ppc64le_builder)
+
+annobin_fedora_s390x_builder = util.BuilderConfig(
+        name="annobin-fedora-s390x",
+        workernames=["fedora-s390x"],
+        tags=["annobin", "fedora", "s390x"],
+        factory=annobin_factory)
+c['builders'].append(annobin_fedora_s390x_builder)
+
 ####### BUILDBOT SERVICES
 
 # 'services' is a list of BuildbotService items like reporter targets. The
-- 
2.39.2


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] Add annobin builders
  2023-04-12 16:21 [PATCH] Add annobin builders Mark Wielaard
@ 2023-04-13  9:00 ` Nick Clifton
  0 siblings, 0 replies; 2+ messages in thread
From: Nick Clifton @ 2023-04-13  9:00 UTC (permalink / raw)
  To: Mark Wielaard, buildbot

Hi Mark,

> Add development requirements to fedora Containerfiles. Add annobin
> gitpoller scheduler factory and fedora x86_64, arm64, ppc64le and
> s390x builders.

Thanks very much for implementing this!

Cheers
   Nick



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-04-13  9:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-12 16:21 [PATCH] Add annobin builders Mark Wielaard
2023-04-13  9:00 ` Nick Clifton

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).