Open main menu

CDOT Wiki β

Hera Try Server Administration

Revision as of 15:21, 4 May 2008 by Armenzg (talk | contribs) (Added left to be implemented notes)

Try Server (Front node)

  • To connect to the tryserver do it through ssh to
  • The folders "cgi-bin", "html" and "patches" are aliased to show to the public

Master (Front node)

  • The basedir of the buildbot is the home directory, therefore "buildobt restart ."
  • Run "perl" to read the patches from the "tryserver" and notify of changes to the master. Every 2 minutes a cronjob takes care of running this command. Patches get copied to "patches" or "patches_test" (this may be unified later on)


NOTE: For any account credentials talk with Dave Humphrey
NOTE2: The Mac slave has the slave in /opt/slave and it is owned by armenzg account, shall we create a "buildslave" account to own it?


    • You have to connect first to the front node and the "ssh buildslave@vmlinux1"
    • You can also connect with VMware to
  • MAC
    • You connect directly with ssh to a specific IP (to be added) and with your individual account
    • Use "Remote Desktop Connection" (comes with Windows) to connect to with buildslave account


NOTE: Make sure that the tryserver has in ~/.ssh/authorized_keys the keys of the slaves in it AND make sure that you ssh at least once to the tryserver from the slave so you can have the RSA fingerprint of the "tryserver" in your slave's ~/.ssh/know_hosts

    • buildbot create-slave slave hera:12345 lin1 lin1
  • MAC
    • /usr/local/bin/buildbot create-slave /tmp/slave hera:12345 mac1 mac1 (right not the slave is on /Users/adam.delyea/buildbot/slave -- Is /tmp/slave a good place??)
    • Run c:\mozilla-build\start-msvc8.bat to start
    • /c/Python24/scripts/buildbot create-slave /c/slave/ hera:12345 win1 win1


    • buildbot start ~/slave
  • MAC
    • /usr/local/bin/buildbot start /Users/adam.delyea/buildbot/slave (the location should be changed)
  • WINDOWS ("" does not get created)
    • /c/Python24/scripts/buildbot start /c/slave/ //make note of the ampersand symbol, it puts the task in the background


    • buildbot restart ~/slave
  • MAC
    • /usr/local/bin/buildbot restart /Users/adam.delyea/buildbot/slave
  • WINDOWS - Kill it and then start it again since has not been generated
    • ps aux
    • Look for the ID for /c/Python24/scr <--- The column does not reach to show the complete path
    • kill 34567 //Put the correct ID
    • Check the section before to start the slave

Left to be implemented

  • Install Windows Vista SDK on the windows machine - [1] (meanwhile mozoncifg_win32_test will have --disable-parent-controls)
  • Install OpenSSH on WINDOWS slave so we won't have to rely on Remote Desktop Connection for changes that could be easily done with ssh
  • Use incron instead cronjob to run "perl" in the buildmaster machine
  • Create the windows slave in /opt/slave <-- Armen thinks that I might have been refering to the mac machine
  • The windows machine is being stupid and it seems not to be able to checkout anymore
  • Create a little script in the try server to be able to create new users that can upload patches
  • Not to be done until everything is completely fixed. Remove the whole master and checkout the latest code from cvs and this will allow us to create patches to reconstruct the master easily in any other place.
  • Not to be done until everything else is completely fixed. The master.cfg is using for unit tests instead of buildbotcustom/unittests/ which is the source code maintained by Mozilla and has the steps that come in
  • Not to be done until everything is completely fixed. Unify the version of buildbot accross all slaves


  • There is unified form that allows you to trigger builds with unit tests and without
  • Created universal patch for testing purposes since it "always" gets applied

Known Errors/Issues

  • The WINDOWS machines seems to don't delete the source code and the objdir. This is something new.
  • In the WINDOWS machines be sure to do not create a slave in a path that has spaces or will fail
  • Builbot Bug 155 and Builbot Bug 85 - You have to restart the master if you see in the waterfall view machines that are IDLE but with pending builds
  • The UI to upload the patches, sometimes shows the "hg" form which is not good to show if we are not using it


  • Add the ssh keys to the tryserver account, the public keys of each slave is under .ssh on the tryserver
  • The SCP_STRING points to "data" on the "tryserver" account which is an alias to "data" on "buildreturn" account
  • There has been clean out of files in the buildmaster account
  • The builds are uploaded to the "data" folder on buildreturn account instead of the "builds" folder on the tryserver account
  • The index.html only point to sendchange_test.cgi which allows you to do a build with and without unit tests
  • "patches_test" is not in use anymore
  • Some steps of Linux were being used for Windows and Mac
  • Fixed in Windows machine - *** The mozilla directory cannot be located in a path with spaces.. Stop. [2]
  • Fixed in Mac machine - We have added to buildbotcustom/ the PATH environment value because it was missing /opt/local/bin checking for GLIB - version >= 1.2.0... no [3]
  • We always do clean builds. We do not need clobbering * In "master.cfg", do we want clobbering? what are these killing for #392 to #408?