Re: Adding binutils to the GNU Toolchain buildbot on sourceware

Mark Wielaard
2022-04-25T22:11:59Z

Hi Frank,

On Mon, Apr 25, 2022 at 02:27:46PM -0400, Frank Ch. Eigler wrote:
> > I think we should try to keep builds/checks under 10 minutes, that the
> > checks should be for things that the maintainers think should always
> > be green. So that you get a report about something important breaking
> > within 10 minutes while you still know what you did. Another reason to
> > keep build/check times short is so you can test multiple commits per
> > hour.
>
> Can we suppress outgoing email notifications about failures?

Yes, buildbot is fairly flexible. At the moment this is how the
reporter for binutils is defined [*]:

# Report for the whole binutils tagged builder set
generator_binutils = reporters.BuildSetStatusGenerator(
mode=('change',), tags=['binutils'])
mn_binutils = reporters.MailNotifier(
fromaddr="builder@sourceware.org",
sendToInterestedUsers=True,
extraRecipients=['binutils@sourceware.org'],
generators=[generator_binutils])
c['services'].append(mn_binutils)

So the generator is for the whole buildset (all builders for a
particular source change) and sents one email for all builders with
the 'binutils' tag which have "changed" their build status. So it only
sents email when there are builders in the (binutils) buildset which
changed from succeeded to failed (or back). It doesn't sent emails for
every failed builder (if it was already failing before).

So if you want to have builders that don't trigger sending a message
then don't tag them with "binutils". You can also have a different
mode, only sent email for builds triggered by a particular named
scheduler or branches.

https://docs.buildbot.net/current/manual/configuration/report_generators/buildset.html

> > [...]
> > If so lets just pick one or more of the workers which seem like stable
> > distros/arches that should always build gdb:
> > https://builder.sourceware.org/buildbot/#/workers
> > [...]
>
> I, um, kind of jumped the gun and set up a blanket native binutils-gdb
> testbot here ("fedrawhide-x86_64"), just to give it a go. Other than
> bothersome outgoing notifications, it should run the full testsuites
> and collect all that data into bunsen.

Well, actions trump words. Especially since you added your own worker!
Thanks. Lets see how things work out.

Note that since you are interested gdb too you might want to add a
separate scheduler. One that triggers on the same fileset changes, but
also includes files under gdb, gdbserver, gdbsupport, gnulib,
readline... If this is what you and Luis want, then go for it.

But this is a "big builds" that generate lots of "data". And I am a
little afraid that is precisely why old buildbot CI efforts
failed. Dead by information overload.

I think the buildbot is more useful if we can (also) define "small"
(quick) builds that only report on immediately actionable results.
Build or test failures that need to be fixed asap.

Cheers,

Mark

[*] The builder configs are in a public git repo:
https://sourceware.org/git/builder.git

There is a README with some explation how thing should work and a
SETUP file describing the setup. There is even a TODO file with
ideas to make the builder even better. Patches welcome!