public inbox for buildbot@sourceware.org
 help / color / mirror / Atom feed
From: Mark Wielaard <mark@klomp.org>
To: buildbot@sourceware.org
Cc: Mark Wielaard <mark@klomp.org>
Subject: [COMMITTED] Add fedora-rawhide container and builders
Date: Thu, 30 Jun 2022 00:32:35 +0200	[thread overview]
Message-ID: <20220629223235.56960-1-mark@klomp.org> (raw)

Based on fedora-latest, but using pip to get a buildbot-worker.
Adds rawhide builders for bzip2, debugedit, dwz, elfutils, gccrust,
binutils, binutils-try, gdb, gdb-try, glibc, libabigail and valgrind.
---
 .../containers/Containerfile-fedora-rawhide   |  34 +++++
 builder/master.cfg                            | 121 ++++++++++++++++++
 2 files changed, 155 insertions(+)
 create mode 100644 builder/containers/Containerfile-fedora-rawhide

diff --git a/builder/containers/Containerfile-fedora-rawhide b/builder/containers/Containerfile-fedora-rawhide
new file mode 100644
index 0000000..40a95f0
--- /dev/null
+++ b/builder/containers/Containerfile-fedora-rawhide
@@ -0,0 +1,34 @@
+# Setup the (minimal) image, upgrade and install all devel packages
+FROM registry.fedoraproject.org/fedora:rawhide
+RUN dnf upgrade -y && \
+    dnf install -y \
+        gcc gcc-c++ libubsan libasan libtool ccache valgrind \
+	isl-devel libmpc-devel mpfr-devel gmp-devel \
+        patch util-linux diffutils iproute bsdtar cpio procps \
+        coreutils make git autoconf dejagnu automake gettext-devel bison flex \
+        bzip2 bzip2-devel xz xz-devel gzip zlib-devel zstd libzstd-devel \
+        findutils file tar curl libarchive-devel libcurl-devel \
+        libmicrohttpd-devel sqlite-devel elfutils elfutils-devel ncurses-devel \
+        texinfo \
+        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 \
+        libffi-devel pip && pip install buildbot-worker && \
+   dnf clean all
+
+# Setup user with same id as host user id.
+RUN adduser -u 1001 -U -d /home/builder -m builder
+
+# Set image specific environment variables used by bb-start.sh
+ENV IMAGE_NAME=fedora-rawhide
+ENV CCACHE_LIBDIR=/usr/lib64/ccache
+
+# Put bb-start.sh script in homedir and make it executable
+RUN wget -O /home/builder/bb-start.sh \
+    'https://sourceware.org/git/?p=builder.git;a=blob_plain;f=builder/containers/bb-start.sh' \
+    && chmod 755 /home/builder/bb-start.sh
+
+# And now run the script
+USER builder
+WORKDIR /home/builder
+ENTRYPOINT /home/builder/bb-start.sh
diff --git a/builder/master.cfg b/builder/master.cfg
index 7e97ae5..219f88d 100644
--- a/builder/master.cfg
+++ b/builder/master.cfg
@@ -313,6 +313,7 @@ elfutils_scheduler = schedulers.SingleBranchScheduler(
         builderNames=["elfutils-centos-x86_64",
                       "elfutils-debian-arm64",
                       "elfutils-fedora-x86_64",
+                      "elfutils-rawhide-x86_64",
                       "elfutils-debian-amd64",
                       "elfutils-debian-i386",
                       "elfutils-debian-armhf",
@@ -331,6 +332,7 @@ libabigail_scheduler = schedulers.SingleBranchScheduler(
         builderNames=["libabigail-centos-x86_64",
                       "libabigail-debian-arm64",
                       "libabigail-fedora-x86_64",
+                      "libabigail-rawhide-x86_64",
                       "libabigail-debian-amd64",
                       "libabigail-debian-i386",
                       "libabigail-debian-armhf",
@@ -349,6 +351,7 @@ dwz_scheduler = schedulers.SingleBranchScheduler(
         builderNames=["dwz-centos-x86_64",
                       "dwz-debian-arm64",
                       "dwz-fedora-x86_64",
+                      "dwz-rawhide-x86_64",
                       "dwz-debian-amd64",
                       "dwz-debian-i386",
                       "dwz-debian-armhf",
@@ -367,6 +370,7 @@ bzip2_scheduler = schedulers.SingleBranchScheduler(
         builderNames=["bzip2-centos-x86_64",
                       "bzip2-debian-arm64",
                       "bzip2-fedora-x86_64",
+                      "bzip2-rawhide-x86_64",
                       "bzip2-debian-amd64",
                       "bzip2-debian-i386",
                       "bzip2-debian-armhf",
@@ -383,6 +387,7 @@ valgrind_scheduler = schedulers.SingleBranchScheduler(
                                         branch="master"),
         reason="valgrind project master branch update",
         builderNames=["valgrind-fedora-x86_64",
+                      "valgrind-rawhide-x86_64",
                       "valgrind-debian-armhf",
                       "valgrind-debian-i386",
                       "valgrind-fedora-ppc64le",
@@ -401,6 +406,7 @@ debugedit_scheduler = schedulers.SingleBranchScheduler(
         builderNames=["debugedit-centos-x86_64",
                       "debugedit-debian-arm64",
                       "debugedit-fedora-x86_64",
+                      "debugedit-rawhide-x86_64",
                       "debugedit-debian-amd64",
                       "debugedit-debian-i386",
                       "debugedit-debian-armhf",
@@ -432,6 +438,7 @@ gccrust_scheduler = schedulers.SingleBranchScheduler(
         onlyImportant=True,
         reason="gccrust project master branch gccrs files update",
         builderNames=["gccrust-fedora-x86_64",
+                      "gccrust-rawhide-x86_64",
                       "gccrust-debian-i386",
 #                      "gccrust-debian-arm64",
                       "gccrust-fedora-ppc64le",
@@ -477,6 +484,7 @@ binutils_scheduler = schedulers.SingleBranchScheduler(
         reason="binutils-gdb project master branch binutils files update",
         builderNames=["binutils-debian-amd64",
                       "binutils-fedora-x86_64",
+                      "binutils-rawhide-x86_64",
                       "binutils-fedora-s390x",
                       "binutils-debian-ppc64",
                       "binutils-debian-armhf",
@@ -497,6 +505,7 @@ binutils_try_scheduler = schedulers.AnyBranchScheduler(
         reason="binutils-gdb project users try branch binutils files update",
         builderNames=["binutils-try-debian-amd64",
                       "binutils-try-fedora-x86_64",
+                      "binutils-try-rawhide-x86_64",
                       "binutils-try-fedora-s390x",
                       "binutils-try-debian-i386",
                       "binutils-try-fedora-ppc64le",
@@ -540,6 +549,7 @@ gdb_scheduler = schedulers.SingleBranchScheduler(
         reason="binutils-gdb project master branch gdb files update",
         builderNames=["gdb-centos-x86_64",
                       "gdb-fedora-x86_64",
+                      "gdb-rawhide-x86_64",
                       "gdb-debian-armhf",
                       "gdb-debian-arm64",
                       "gdb-debian-i386",
@@ -560,6 +570,7 @@ gdb_try_scheduler = schedulers.AnyBranchScheduler(
         reason="binutils-gdb project users try branch gdb files update",
         builderNames=["gdb-try-centos-x86_64",
                       "gdb-try-fedora-x86_64",
+                      "gdb-try-rawhide-x86_64",
                       "gdb-try-debian-i386",
                       "gdb-try-fedora-s390x",
                       "gdb-try-fedora-ppc64le",
@@ -602,6 +613,7 @@ glibc_build_scheduler = schedulers.SingleBranchScheduler(
                                         branch="master"),
         reason="glibc project master branch update",
         builderNames=["glibc-debian-i386",
+                      "glibc-rawhide-x86_64",
                       "glibc-fedora-s390x",
                       "glibc-debian-ppc64",
                       "glibc-fedora-ppc64le",
@@ -893,6 +905,15 @@ bzip2_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=bzip2_factory)
 c['builders'].append(bzip2_opensuseleap_x86_64_builder)
 
+bzip2_rawhide_x86_64_builder = util.BuilderConfig(
+        name="bzip2-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["bzip2", "fedora", "x86_64"],
+        factory=bzip2_factory)
+c['builders'].append(bzip2_rawhide_x86_64_builder)
+
 # debugedit build steps, factory and builders
 
 debugedit_factory = util.BuildFactory()
@@ -1004,6 +1025,15 @@ debugedit_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=debugedit_factory)
 c['builders'].append(debugedit_opensuseleap_x86_64_builder)
 
+debugedit_rawhide_x86_64_builder = util.BuilderConfig(
+        name="debugedit-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["debugedit", "fedora", "x86_64"],
+        factory=debugedit_factory)
+c['builders'].append(debugedit_rawhide_x86_64_builder)
+
 # dwz build steps, factory and builders
 
 # Not parallel and special named log files
@@ -1113,6 +1143,15 @@ dwz_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=dwz_factory)
 c['builders'].append(dwz_opensuseleap_x86_64_builder)
 
+dwz_rawhide_x86_64_builder = util.BuilderConfig(
+        name="dwz-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["dwz", "fedora", "x86_64"],
+        factory=dwz_factory)
+c['builders'].append(dwz_rawhide_x86_64_builder)
+
 # elfutils build steps, factory and builders
 
 elfutils_set_package_step = steps.SetProperty(
@@ -1314,6 +1353,15 @@ elfutils_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=elfutils_factory_distcheck)
 c['builders'].append(elfutils_opensuseleap_x86_64_builder)
 
+elfutils_rawhide_x86_64_builder = util.BuilderConfig(
+        name="elfutils-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["elfutils", "fedora", "x86_64"],
+        factory=elfutils_factory_distcheck)
+c['builders'].append(elfutils_rawhide_x86_64_builder)
+
 # gccrust build steps, factory and builders
 # All steps are custom because of the workdir settings
 
@@ -1481,6 +1529,15 @@ gccrust_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=gccrust_factory)
 c['builders'].append(gccrust_opensuseleap_x86_64_builder)
 
+gccrust_rawhide_x86_64_builder = util.BuilderConfig(
+        name="gccrust-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["gccrust", "fedora", "x86_64"],
+        factory=gccrust_factory)
+c['builders'].append(gccrust_rawhide_x86_64_builder)
+
 gccrust_bootstrap_debian_amd64_builder = util.BuilderConfig(
         name="gccrust-bootstrap-debian-amd64",
 	properties={'container-file':
@@ -1695,6 +1752,15 @@ binutils_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=binutils_factory)
 c['builders'].append(binutils_opensuseleap_x86_64_builder)
 
+binutils_rawhide_x86_64_builder = util.BuilderConfig(
+	name="binutils-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        tags=["binutils", "fedora", "x86_64"],
+        factory=binutils_factory)
+c['builders'].append(binutils_rawhide_x86_64_builder)
+
 binutils_try_opensuseleap_x86_64_builder = util.BuilderConfig(
 	name="binutils-try-opensuseleap-x86_64",
         collapseRequests=True,
@@ -1705,6 +1771,16 @@ binutils_try_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=binutils_factory)
 c['builders'].append(binutils_try_opensuseleap_x86_64_builder)
 
+binutils_try_rawhide_x86_64_builder = util.BuilderConfig(
+	name="binutils-try-rawhide-x86_64",
+        collapseRequests=True,
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        tags=["binutils-try", "fedora", "x86_64"],
+        factory=binutils_factory)
+c['builders'].append(binutils_try_rawhide_x86_64_builder)
+
 # gdb build steps, factory and builders
 
 gdb_git_step = steps.Git(
@@ -1970,6 +2046,15 @@ gdb_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=gdb_factory)
 c['builders'].append(gdb_opensuseleap_x86_64_builder)
 
+gdb_rawhide_x86_64_builder = util.BuilderConfig(
+	name="gdb-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        tags=["gdb", "fedora", "x86_64"],
+        factory=gdb_factory)
+c['builders'].append(gdb_rawhide_x86_64_builder)
+
 gdb_try_opensuseleap_x86_64_builder = util.BuilderConfig(
 	name="gdb-try-opensuseleap-x86_64",
         collapseRequests=True,
@@ -1980,6 +2065,16 @@ gdb_try_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=gdb_factory)
 c['builders'].append(gdb_try_opensuseleap_x86_64_builder)
 
+gdb_try_rawhide_x86_64_builder = util.BuilderConfig(
+	name="gdb-try-rawhide-x86_64",
+        collapseRequests=True,
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        tags=["gdb-try", "fedora", "x86_64"],
+        factory=gdb_factory)
+c['builders'].append(gdb_try_rawhide_x86_64_builder)
+
 # binutils-gdb build steps, factory and builders
 # just a native build
 
@@ -2212,6 +2307,14 @@ glibc_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=glibc_build_factory)
 c['builders'].append(glibc_opensuseleap_x86_64_builder)
 
+glibc_rawhide_x86_64_builder = util.BuilderConfig(
+        name="glibc-rawhide-x86_64",
+        properties={'container-file':
+                    readContainerFile('fedora-rawhide')},
+        workernames=vm_workers,
+        tags=["glibc", "fedora", "x86_64"],
+        factory=glibc_build_factory)
+c['builders'].append(glibc_rawhide_x86_64_builder)
 
 # libabigail build steps, factory and builders
 
@@ -2349,6 +2452,15 @@ libabigail_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=libabigail_factory)
 c['builders'].append(libabigail_opensuseleap_x86_64_builder)
 
+libabigail_rawhide_x86_64_builder = util.BuilderConfig(
+        name="libabigail-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["libabigail", "fedora", "x86_64"],
+        factory=libabigail_factory)
+c['builders'].append(libabigail_rawhide_x86_64_builder)
+
 # valgrind build steps, factory and builders
 
 valgrind_git_step = steps.Git(
@@ -2462,6 +2574,15 @@ valgrind_opensuseleap_x86_64_builder = util.BuilderConfig(
         factory=valgrind_make_check_aux_factory)
 c['builders'].append(valgrind_opensuseleap_x86_64_builder)
 
+valgrind_rawhide_x86_64_builder = util.BuilderConfig(
+        name="valgrind-rawhide-x86_64",
+	properties={'container-file':
+		    readContainerFile('fedora-rawhide')},
+	workernames=vm_workers,
+        tags=["valgrind", "fedora", "x86_64"],
+        factory=valgrind_make_check_aux_factory)
+c['builders'].append(valgrind_rawhide_x86_64_builder)
+
 ####### BUILDBOT SERVICES
 
 # 'services' is a list of BuildbotService items like reporter targets. The
-- 
2.30.2


                 reply	other threads:[~2022-06-29 22:32 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=20220629223235.56960-1-mark@klomp.org \
    --to=mark@klomp.org \
    --cc=buildbot@sourceware.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).