From: Mark Wielaard <mark@klomp.org>
To: buildbot@sourceware.org
Cc: Mark Wielaard <mark@klomp.org>
Subject: [PATCH 1/2] Add gnupoke snapshot scheduler, factory and builder
Date: Wed, 19 Apr 2023 01:49:26 +0200 [thread overview]
Message-ID: <20230418234927.448194-1-mark@klomp.org> (raw)
Add texlive requirements to fedora-latest
---
.../containers/Containerfile-fedora-latest | 5 ++
builder/master.cfg | 65 ++++++++++++++++++-
2 files changed, 68 insertions(+), 2 deletions(-)
diff --git a/builder/containers/Containerfile-fedora-latest b/builder/containers/Containerfile-fedora-latest
index 4fa217b..b87b111 100644
--- a/builder/containers/Containerfile-fedora-latest
+++ b/builder/containers/Containerfile-fedora-latest
@@ -18,6 +18,11 @@ RUN dnf upgrade -y && \
libxml2-devel dos2unix dpkg koji python3-devel python3-koji python3-mock \
python3-rpm python3-pyxdg mailcap openmpi-devel gdb help2man wget xxhash-devel \
black \
+ texlive texlive-latex texlive-mdwtools texlive-ellipsis texlive-lineno \
+ texlive-changebar texlive-palatino texlive-hyperref texlive-xcolor \
+ texlive-changepage texlive-needspace texlive-geometry texlive-lineno \
+ texlive-epstopdf texlive-amsmath texlive-float texlive-url \
+ texlive-listings texlive-makeindex texlive-dvips ghostscript \
buildbot-worker && \
dnf clean all
diff --git a/builder/master.cfg b/builder/master.cfg
index b50b506..59869ea 100644
--- a/builder/master.cfg
+++ b/builder/master.cfg
@@ -479,6 +479,14 @@ annobin_gitpoller = changes.GitPoller(repourl=annobin_repourl,
project='annobin')
c['change_source'].append(annobin_gitpoller)
+dwarfspec_repourl='https://git.dwarfstd.org/dwarf-spec/'
+dwarfspec_gitpoller = changes.GitPoller(repourl=dwarfspec_repourl,
+ branches=['master'],
+ pollInterval=3*60,
+ pollRandomDelayMax=2*60,
+ project='dwarfspec')
+c['change_source'].append(dwarfspec_gitpoller)
+
####### SCHEDULERS
@@ -1017,6 +1025,17 @@ annobin_scheduler = schedulers.SingleBranchScheduler(
"annobin-fedora-s390x"])
c['schedulers'].append(annobin_scheduler)
+dwarfspec_snapshot_scheduler = schedulers.Periodic(
+ name="dwarfspec-snapshots",
+ change_filter=util.ChangeFilter(project="dwarfspec",
+ branch="master"),
+ branch="master",
+ periodicBuildTimer=15*60, # 15 minutes in seconds
+ onlyIfChanged=True,
+ reason="dwarfspec periodic project master branch snapshot",
+ builderNames=["dwarfspec-snapshots-trunk"])
+c['schedulers'].append(dwarfspec_snapshot_scheduler)
+
####### BUILDERS
# The 'builders' list defines the Builders, which tell Buildbot how to perform a build:
@@ -4453,6 +4472,41 @@ annobin_fedora_s390x_builder = util.BuilderConfig(
factory=annobin_factory)
c['builders'].append(annobin_fedora_s390x_builder)
+dwarfspec_git_step = steps.Git(
+ repourl=dwarfspec_repourl,
+ mode='full', method='fresh',
+ name="git checkout",
+ getDescription={'tags':True, 'always':True},
+ haltOnFailure=True)
+
+dwarfspec_make_step = steps.Compile(
+ command=['make', '-C', 'latexdoc'],
+ name='make latexdoc',
+ haltOnFailure=True)
+
+dwarfspec_create_output_step = steps.ShellCommand(
+ name="create output",
+ command="mkdir /home/builder/shared/output && mv dwarf6.pdf home/builder/shared/output/dwarf6-$(date -u +%Y%m%d-%H%M).pdf")
+dwarfspec_create_publish_file_step = steps.ShellCommand(
+ name="create publish file",
+ command="echo dwarfstd/dwarf-spec > /home/builder/shared/publish")
+dwarfspec_snapshots_trunk_factory = util.BuildFactory()
+dwarfspec_snapshots_trunk_factory.addStep(dwarfspec_git_step)
+dwarfspec_snapshots_trunk_factory.addStep(dwarfspec_make_step)
+dwarfspec_snapshots_trunk_factory.addStep(wait_snapshots_output_ready_step)
+dwarfspec_snapshots_trunk_factory.addStep(dwarfspec_create_output_step)
+dwarfspec_snapshots_trunk_factory.addStep(dwarfspec_create_publish_file_step)
+
+dwarfspec_snapshots_trunk_builder = util.BuilderConfig(
+ name="dwarfspec-snapshots-trunk",
+ collapseRequests=True,
+ properties={'container-file':
+ readContainerFile('fedora-latest')},
+ workernames="snapshots",
+ tags=["dwarfspec-snapshots", "trunk"],
+ factory=dwarfspec_snapshots_trunk_factory)
+c['builders'].append(dwarfspec_snapshots_trunk_builder)
+
####### BUILDBOT SERVICES
# 'services' is a list of BuildbotService items like reporter targets. The
@@ -4847,8 +4901,15 @@ wildebeestRevLink = util.RevlinkMatch(
savannahRevLink = util.RevlinkMatch(
repo_urls=[r'https://git.savannah.gnu.org/git/(.*).git'],
revlink=r'https://git.savannah.gnu.org/cgit/\1.git/commit/?id=%s')
-
-reflinks = [sourcewareRevLink, gccRevLink, wildebeestRevLink, savannahRevLink]
+dwarfstdRevLink = util.RevlinkMatch(
+ repo_urls=[r'https://git.dwarfstd.org/(.*)'],
+ revlink=r'https://git.dwarfstd.org/\1/commit/?id=%s')
+
+reflinks = [sourcewareRevLink,
+ gccRevLink,
+ wildebeestRevLink,
+ savannahRevLink,
+ dwarfstdRevLink]
def revlinkmultiplexer(rev,repo):
for revlink in reflinks:
--
2.31.1
next reply other threads:[~2023-04-18 23:49 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-18 23:49 Mark Wielaard [this message]
2023-04-18 23:49 ` [PATCH 2/2] dwarfspec_create_output_step: Correct dwarf6.pdf location Mark Wielaard
2023-04-18 23:53 ` [PATCH 1/2] Add gnupoke snapshot scheduler, factory and builder Mark Wielaard
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=20230418234927.448194-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).