public inbox for buildbot@sourceware.org
 help / color / mirror / Atom feed
From: Mark Wielaard <mark@klomp.org>
To: Joel Brobecker <brobecker@adacore.com>
Cc: "Frank Ch. Eigler" <fche@redhat.com>,
	gdb@sourceware.org, buildbot@sourceware.org
Subject: Re: value of gdbadmin effort to create gdb daily/weekly source tarballs
Date: Sat, 25 May 2024 01:17:32 +0200	[thread overview]
Message-ID: <20240524231732.GL13045@gnu.wildebeest.org> (raw)
In-Reply-To: <Zh1xTWMmUlL+Wf1n@adacore.com>

[-- Attachment #1: Type: text/plain, Size: 1329 bytes --]

Hi Joel,

On Mon, Apr 15, 2024 at 11:26:21AM -0700, Joel Brobecker wrote:
> > Other projects like glibc, valgrind, libabigail, etc. have moved their
> > snapshots builds to http://snapshots.sourceware.org/ which creates a
> 
> https?

Yes, sorry. http will always redirect to the https site.

> > snapshot build and creates documentation from current git. This makes
> > sure the release processes/scripts keep working. And it has caught
> > release issues early (which often don't occur during a normal
> > developer build). Since this is part of the normal
> > builder.sourceware.org infrastructure it also provides better
> > visibility.
> 
> FWIW, that would definitely work for me. I do not have the time
> to work on that, though :-(.

I added snapshots for trunk based on the binutils snapshots using
src-release.sh. Which is what ss/make-snapshot ultimately calls.

The snapshots can be found at:

https://snapshots.sourceware.org/gdb/trunk/

It gets regenerated every 15 minutes, if there have been any changes
since the last build. The latest can always be found here:

https://snapshots.sourceware.org/gdb/trunk/latest/src/

It doesn't generate snapshots for the branches yet. I think we don't
really need the diffs. We have to see if we can also do the ari and
docs updates on snapshots.sourceware.org.

Cheers,

Mark

[-- Attachment #2: 0001-Add-gdb-snapshots-builder.patch --]
[-- Type: text/plain, Size: 3535 bytes --]

From 5520d4377b37890d8866910503ded940b54da054 Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mark@klomp.org>
Date: Sat, 25 May 2024 00:35:59 +0200
Subject: [PATCH] Add gdb-snapshots builder

---
 builder/master.cfg | 47 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/builder/master.cfg b/builder/master.cfg
index db82c8b4122f..cbf9e30fd055 100644
--- a/builder/master.cfg
+++ b/builder/master.cfg
@@ -1038,6 +1038,19 @@ gdb_try_scheduler = schedulers.AnyBranchScheduler(
                       "gdb-try-fedora-ppc64le"])
 c['schedulers'].append(gdb_try_scheduler)
 
+gdb_snapshot_scheduler = schedulers.Periodic(
+        name="gdb-snapshots",
+        change_filter=util.ChangeFilter(project="binutils-gdb",
+                                        branch="master"),
+        branch="master",
+        periodicBuildTimer=15*60, # 15 minutes in seconds
+        onlyIfChanged=True,
+        fileIsImportant=gdbImportant,
+        onlyImportant=True,
+        reason="gdb periodic project master branch snapshot",
+        builderNames=["gdb-snapshots"])
+c['schedulers'].append(gdb_snapshot_scheduler)
+
 # A scheduler for everything binutils-gdb & gcc without filters
 binutils_gdb_scheduler = schedulers.SingleBranchScheduler(
         name="binutils-gdb",
@@ -3210,6 +3223,23 @@ def make_gdb_check_step(runtestflags = None):
                 haltOnFailure=False, flunkOnFailure=True)
         return step
 
+gdb_step_setversion = steps.ShellCommand(
+        workdir='binutils-gdb',
+        name="set gdb version",
+        command='sed -i -e "s/DATE/$(date -u +%Y%m%d)/;s/git/$(git rev-parse --short @)/" gdb/version.in')
+gdb_step_src_release = steps.ShellCommand(
+        workdir='binutils-gdb',
+        name="src-release",
+        command="./src-release.sh -g gdb")
+gdb_create_output_step = steps.ShellCommand(
+        workdir='binutils-gdb',
+        name="create output",
+        command="mkdir -p /home/builder/shared/output/src &&"
+        + "mv ./gdb-*tar.gz /home/builder/shared/output/src")
+gdb_create_publish_file_step = steps.ShellCommand(
+        name="create publish file",
+        command="echo gdb/trunk > /home/builder/shared/publish")
+
 gdb_factory = util.BuildFactory()
 gdb_factory.addStep(gdb_git_step)
 gdb_factory.addStep(gdb_rm_step)
@@ -3327,6 +3357,13 @@ gdb_factory_sanitize.addSteps(bunsen_logfile_upload_cpio_steps(
         tagsuffix='/extended-gdbserver'))
 gdb_factory_sanitize.addStep(gdb_rm_step)
 
+gdb_factory_snapshot = util.BuildFactory()
+gdb_factory_snapshot.addStep(gdb_git_step)
+gdb_factory_snapshot.addStep(gdb_step_setversion)
+gdb_factory_snapshot.addStep(gdb_step_src_release)
+gdb_factory_snapshot.addStep(wait_snapshots_output_ready_step)
+gdb_factory_snapshot.addStep(gdb_create_output_step)
+gdb_factory_snapshot.addStep(gdb_create_publish_file_step)
 
 gdb_alma_x86_64_builder = util.BuilderConfig(
 	name="gdb-alma-x86_64",
@@ -3534,6 +3571,16 @@ gdb_ubuntu_riscv_builder = util.BuilderConfig(
         factory=gdb_factory)
 c['builders'].append(gdb_ubuntu_riscv_builder)
 
+gdb_snapshots_builder = util.BuilderConfig(
+        name="gdb-snapshots",
+        collapseRequests=True,
+        properties={'container-file':
+                    readContainerFile('debian-stable')},
+        workernames="snapshots",
+        tags=["gdb-snapshots"],
+        factory=gdb_factory_snapshot)
+c['builders'].append(gdb_snapshots_builder)
+
 # binutils-gdb build steps, factory and builders
 # just a native build
 
-- 
2.45.1


           reply	other threads:[~2024-05-24 23:17 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <Zh1xTWMmUlL+Wf1n@adacore.com>]

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=20240524231732.GL13045@gnu.wildebeest.org \
    --to=mark@klomp.org \
    --cc=brobecker@adacore.com \
    --cc=buildbot@sourceware.org \
    --cc=fche@redhat.com \
    --cc=gdb@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).