| Version 11 (modified by mmacvicar, 5 years ago) (diff) |
|---|
Many people use Buildbot Windows slaves, not sure if anyone uses Windows as the master (seems to be Linux, generally) - actually a few people do, see below.
Ben Hearsum has begun work on an NSIS slave Installer, which installs all needed Buildbot dependencies (Python, Twisted, ZopeInterface) and prompts the user for the info to fill in the .tac file (buildmaster:port, username, password).
Preliminary Mozilla doc on WinXP setup
Buildbot on Windows - Installation Instructions.
Notes:
- These have been tested with Windows XP & Vista.
- Put together by Will Wilson willw -at- fireflyworlds -dot- com.
Windows Requirements:
- Python 2.4.x
- Python Win32 extensions. Version of Win32 for Python 2.4.
- Twisted framework. Get version 2.4.0 for Python 2.4
- Buildbot
Windows Installation:
- Install Python.
- Add c:python24 and c:python24scripts to the system PATH.
- Add .py to PATHEXT to enable python files to be executed.
- Install the Python Win32 extensions.
- Install the twisted framework.
- Try testing the twisted installation by typing "trial --version" at the command prompt. Make sure it shows the correct version of Twisted (2.4.0).
- Change directory to the buildbot install folder "cd c:<path to buildbot folder>"
- Install buildbot by typing "python setup.py install" from the buildbot install folder.
- Edit the buildbot.bat file now found in C:python24scripts to contain the correct script path (it points at c:python23 by default).
- Open a command prompt and type "buildbot --version", hopefully returning the version numbers if everything went well.
Windows build master setup
Prerequisites:
- Install Buildbot and its dependencies.
- Use the Buildbot manual for reference.
Setup process:
- Create a settings directory for build master state. Make sure it's accessible to the build user and reflects the name of the project.
- Used "buildbot create-master <dir-path>" to initialise buildbot state in the given folder.
- Create a master.cfg file in the new master directory. This will hold the configuration script for the build master. It may be worth using master.cfg.sample as the basis for it.
- Setup the master configuration as needed (more details to come).
- Start the build master by using "buildbot start <dir-path>".
- Check the twistd.log in the build master folder for errors or warnings.
- Assuming the master launched successfully, it should now be hosting its waterfall page (usually at http://localhost:8010/).
- You may want to get a better style sheet for the waterfall display, to do this just adjust "html.Waterfall(..., css='c:\buildbot.css')" in the master.cfg.
Windows build slave setup
Prerequisites:
- Install Buildbot and its dependencies.
- Use the Buildbot manual for reference.
Setup process:
- Setup a build slave account for the build slave process.
- Create a settings directory for build slave state. Make sure it's accessible to the build slave user and reflects the name of the project. Something like "bbslave_myproject" would do.
- Get the host name and port (default: 9989) for the build master.
- Get the assigned name and password for this build slave.
- Use "buildbot create-slave <dir-path> <master-name>:<master-port> <slave-name> <slave-password>" to initialise uildbot state in the given folder.
- Edit the newly created "<dir-path>/info/admin" file and enter your name and email address (as you are the administrator of this build slave).
- Edit the newly created "<dir-path>/info/host" file and enter details and technical specifications for the system running the build slave.
- Now launch the build slave process using "buildbot start <dir-path>". If you have problems, check the twistd.log found in the build slave directory for errors and warnings.
- You should now be able to see your slave bot listed on the waterfall page on the build master.
Windows Buildbot service setup
Prerequisites:
- Install Buildbot and its dependencies.
- Create a working Buildbot master and/or slave installation (see above).
- Use the Buildbot manual for reference.
Setup process:
- Run a command line (under Vista run it as administrator).
- Try typing buildbot_service to ensure it was installed. It should have been installed to the c:python24scripts folder.
- Add permission to allow the builder user to "Log on as a service" for this go to Administrative Tools -> Local Security Settings -> User Rights Assignment.
- Enter buildbot_service --user YOURDOMAINuilduser --password <theuserspassword> --startup auto install
- Add full permissions for the builder user to registry key HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesBuildBot.
- Add full permissions for the build user to the buildbot configuration directories.
- Enter buildbot_service start "c:/<buildbot_dir>" "d:/<another_buildbot_dir>"
- It should now be up and running, to check for issues consult the event viewer and the twistd.log files.
- Once complete the service should start with the machine.
Troubleshooting:
- Exceptions during startup are logged in the Event Viewer, under the "Application" log.
- When using Buildbot 0.7.6, and Twisted 2.5.0 or later, ticket #53 may apply (even if you were able to start buildbot from the command line).
- When installing on Windows Vista Family edition, user rights can not be managed using the Administrative Tools. This tool can be used to grant your buildbot user the "Logon as Service" right (based on Microsoft's knowledge base article 132958). Usage: addLogOnAsServiceRight username
- When running buildbot as a service using the instructions above on Windows Server 2003, SVN hangs during the update process (unclear as to why). Also after stopping the service, SVN isn't terminated properly, which may cause subsequent headaches. Running "buildbot start ." works well and the instructions at http://ascendwiki.cheme.cmu.edu/BuildBot also work.
Another useful instruction is Installing a Buildbot service on Windows at ASCEND wiki.
Attachments
-
addLogOnAsServiceRight.zip
(22.3 KB) -
added by eric.brayet 5 years ago.
Command line tool to give a user the "Logon as Service" right (based on Microsoft's knowledge base article 132958)
![[Buildbot Logo]](/chrome/site/header-text-transparent.png)