Open main menu

CDOT Wiki β

Hera Try Server Administration

Revision as of 00:18, 3 May 2008 by Armenzg (talk | contribs) (Updated news and erros fixed)

Try Server (Front node)

  • To connect to the tryserver do it through ssh to hera.senecac.on.ca
  • 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 process_changes_test.pl" 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)

Slaves

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?

Connecting

  • LINUX
    • You have to connect first to the front node and the "ssh buildslave@vmlinux1"
    • You can also connect with VMware to hera.senecac.on.ca:1904
  • MAC
    • You connect directly with ssh to a specific IP (to be added) and with your individual account
  • WINDOWS
    • Use "Remote Desktop Connection" (comes with Windows) to connect to hera.senecac.on.ca:31389 with buildslave account

Creation

  • LINUX
    • 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??)
  • WINDOWS
    • Run c:\mozilla-build\start-msvc8.bat to start
    • /c/Python24/scripts/buildbot create-slave /c/slave/ hera:12345 win1 win1

Start

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

Restart

  • LINUX
    • buildbot restart ~/slave
  • MAC
    • /usr/local/bin/buildbot restart /Users/adam.delyea/buildbot/slave
  • WINDOWS - Kill it and then start it again since twistd.pid 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)
  • Use incron instead cronjob to run "perl proccesschanges_test.pl" in the buildmaster machine
  • Add the ssh keys to the tryserver account, the public keys of each slave is under .ssh on the tryserver
  • Create the windows slave in /opt/slave <-- Armen thinks that I might have been refering to the mac machine

News

  • 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 client.mk#427
  • 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

Fixed

  • 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 - client.mk:427: *** The mozilla directory cannot be located in a path with spaces.. Stop. [2]
  • Fixed in Mac machine - We have added to buildbotcustom/env.py 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?