ReleaseEngineering/PuppetAgain/Modules/buildmaster: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
This module installs and sets up the buildmaster software. Multiple buildmasters can be installed on the same node.
This module installs and sets up the buildmaster software. Multiple buildmasters can be installed on the same node. This module supports two different styles of masters, "Mozilla", and "Simple". More detailed descriptions of both are below.


To set up a node as buildmaster node, use the following snippet in the nodes definition.
= "Mozilla" buildmasters =
Mozilla buildmasters are special because they are set-up using external scripts to do some of the the work. To set up a node as Mozilla buildmaster node, use the following snippet in the nodes definition.
(configuration should not be in nodes.pp there is already a  [[https://bugzilla.mozilla.org/show_bug.cgi?id=848824| bug]] for this.)
(configuration should not be in nodes.pp there is already a  [[https://bugzilla.mozilla.org/show_bug.cgi?id=848824| bug]] for this.)
   
   
   node "relabs07.build.mtv1.mozilla.com" {
   node "relabs07.build.mtv1.mozilla.com" {
         buildmaster::buildbot_master {
         buildmaster::buildbot_master::mozilla {
             "bm07-build1":
             "bm07-build1":
             http_port => 8001,
             http_port => 8001,
Line 11: Line 12:
             basedir => "build1";
             basedir => "build1";
         }
         }
         buildmaster::buildbot_master {
         buildmaster::buildbot_master::mozilla {
             "bm07-build2":
             "bm07-build2":
             http_port => 8002,
             http_port => 8002,
Line 27: Line 28:
Masters will be installed in:
Masters will be installed in:
   /builds/buildbot/${basedir}
   /builds/buildbot/${basedir}
= "Simple" buildmasters =
Simple buildmasters are fully setup by Puppet. Instantiation usually should happen in a [[ReleaseEngineering/PuppetAgain/Modules/toplevel | toplevel class]] using a snippet like:
<pre>
buildmaster::buildbot_master::simple {
    "servo1":
        basedir => "/builds/buildbot/servo1",
        http_port => 8001,
        master_cfg => "puppet:///modules/buildmaster/servo/master.cfg";
}
</pre>
"buildbot_version" can also be passed to install an alternative version of Buildbot.

Revision as of 18:27, 30 May 2013

This module installs and sets up the buildmaster software. Multiple buildmasters can be installed on the same node. This module supports two different styles of masters, "Mozilla", and "Simple". More detailed descriptions of both are below.

"Mozilla" buildmasters

Mozilla buildmasters are special because they are set-up using external scripts to do some of the the work. To set up a node as Mozilla buildmaster node, use the following snippet in the nodes definition. (configuration should not be in nodes.pp there is already a [bug] for this.)

 node "relabs07.build.mtv1.mozilla.com" {
       buildmaster::buildbot_master::mozilla {
           "bm07-build1":
           http_port => 8001,
           master_type => "build",
           basedir => "build1";
       }
       buildmaster::buildbot_master::mozilla {
           "bm07-build2":
           http_port => 8002,
           master_type => "build",
           basedir => "build2";
       }
       include toplevel::server::buildmaster

Masters can be one of the following:

  • build
  • scheduler
  • try
  • tests

Masters will be installed in:

  /builds/buildbot/${basedir}

"Simple" buildmasters

Simple buildmasters are fully setup by Puppet. Instantiation usually should happen in a toplevel class using a snippet like:

buildmaster::buildbot_master::simple {
    "servo1":
        basedir => "/builds/buildbot/servo1",
        http_port => 8001,
        master_cfg => "puppet:///modules/buildmaster/servo/master.cfg";
}

"buildbot_version" can also be passed to install an alternative version of Buildbot.