2. Running a buildbot instance

If you run both the master and the slave on the same account on Windows, the "taskkill" step will kill python hence the master. You can fix that by using multiple account or just keep sane and use a linux machine as the server.


cd masters\master.experimental


cd slave

How to terminate

To kill them, press Ctrl-C in the console window.

Mac and Linux


cd masters/master.experimental
make restart


cd slave
make restart

If you have set up buildbot.tac, you can just run "make restart". If not, you will run something like this instead:

TESTING_MASTER_HOST=localhost TESTING_MASTER=Experimental TESTING_SLAVENAME=chromium-linux-experimental make restart


To kill them, use ctrl-c in the console window to get back to the prompt, and then  run:

make stop

Is that working?

Once you have started both the master and a slave, browse to the waterfall: http://localhost:9010/waterfall?show_events=true&reload=30 (replacing localhost with the hostname of the master if your browsing on another computer and the port with the appropriate port number. The port number can be found in site_config/config_default.py or master_site_config.py by looking for the appropriate class definition for your master). If you see one idle slave and two offline slaves they you've configured them correctly!  You can start it building by clicking on the name of the idle slave (probably Chromium Linux Experimental) and then clicking the "Force Build" button. If the Update and Compile steps succeed, congratulations you're all set!


 Please feel free to update this part of the doc with other problems you have run into.
  • twisted.cred.error.UnauthorizedLogin

    Traceback from remote host -- Traceback (most recent call last):
    Failure: twisted.cred.error.UnauthorizedLogin:
    Your slavename setting in slave/buildbot.tac is possibly not a valid slavename. Stop the master, update the buildbot.tac file with a valid slavename and restart.
  • Message about needing to update a database
    Run make upgrade

Try server functionality


The try server listens to a http port and also polls a subversion repository. See config.py and config_default.py for the server-side settings, mainly config.Master.TryServer.try_job_port and config.Master.TryServer.svn_url.


See trychange.py or git-try for the client code. Both demonstrate both ways of sending a job to the try server. Most of users will run:

gcl try <change_name> --host myserver --port 9018

or whatever port you are using. The port is configured on the server in chromium_config.Master.TryServer.try_job_port.. You can configure your codereview.settings file accordingly.

Fork it

Maintain it

Look for maintenance page.