After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 591231 - BuildBot: add support for using the "Nightly" scheduler (instead of "Periodic")
BuildBot: add support for using the "Nightly" scheduler (instead of "Periodic")
Status: RESOLVED FIXED
Product: jhbuild
Classification: Infrastructure
Component: general
unspecified
Other All
: Normal enhancement
: ---
Assigned To: Jhbuild maintainers
Jhbuild QA
Depends on:
Blocks:
 
 
Reported: 2009-08-09 12:40 UTC by Sascha Silbe
Modified: 2010-01-08 12:32 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sascha Silbe 2009-08-09 12:40:51 UTC
Most of our build slaves are currently VMs on the same physical host. Because JHBuild uses the "Periodic" scheduler and starts it immediately on startup, all builds will run in parallel, causing high load every 12 hours and no load in between.
It would be great if the the scheduler options were configurable per slave (and the scheduler itself globally) so we can tune the start times to cater for our special situation.
Comment 1 Frederic Peters 2009-11-27 14:12:12 UTC
I finally had time to work on this, sorry for taking so long.

commit 0f4548721255ac5172bc0cc55c5484710da0ac6b
Author: Frédéric Péters <fpeters@0d.be>
Date:   Fri Nov 27 15:08:22 2009 +0100

    [builbot] add support for the nightly scheduler (GNOME bug 591231)
    
    A slave can be set to use that scheduler from its configuration file, from
    /config/scheduler:
      <config>
        <scheduler>nightly</scheduler>
      </config>
    
    And there is support for all buildbot nightly scheduler keywords (minute,
    hour, dayOfWeek, month, dayOfMonth); to get a build started every xx:06:
      <nightly_scheduler>
        <minute>6</minute>
      </nightly_scheduler>
Comment 2 Sascha Silbe 2009-11-27 17:34:57 UTC
Great news, thanks!
Comment 3 Sascha Silbe 2010-01-06 21:02:17 UTC
We don't have any XML configuration files for (sugar-)jhbuild and/or BuildBot yet. Where do I need to put those lines? I didn't find anything documentation (neither did I find any mention of the slaves.csv stuff). :-/
Comment 4 Frederic Peters 2010-01-06 21:27:48 UTC
I started documenting the buildbot stuff, but stopped at the slave part :/

If you have a slave named foobar, mentioned in your slaves.csv, you'd create a foobar.xml in the same directory, with such a content:

<botslave>
  <config>
    <max_builds>2</max_builds>
    <run_checks>yes</run_checks>
    <scheduler>nightly</scheduler>
  </config>
  <nightly_scheduler>
    <minute>6</minute>
  </nightly_scheduler>
  <info>
    <contact_name>Frederic</contact_name>
    <contact_email>fred@localhost</contact_email>
    <distribution>Debian GNU/Linux</distribution>
    <version>sid</version>
    <architecture>i386</architecture>
    <url>http://www.0d.be/my-gnome-buildbot</url>
  </info>
</botslave>
Comment 5 Sascha Silbe 2010-01-08 12:32:04 UTC
It was a bumpy ride, but now it works, thanks! Will file tickets about the two issues encountered.