Changes between Version 23 and Version 24 of SettingUpBuildslave
- Timestamp:
- 03/09/12 10:18:25 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SettingUpBuildslave
v23 v24 3 3 OpenVPN project uses [http://buildbot.net/trac Buildbot] to help increase code quality. Buildbot is a Python application that can work in either ''master'' or ''slave'' mode. The ''buildmaster'' is the core server which accepts connections from ''buildslaves'' and tells them what they should do. Typically the clients fetch latest sources and report any build problems to buildbot which in turn informs developers via email. In software engineering this is called [http://en.wikipedia.org/wiki/Continuous_integration Continous integration] and helps prevent build problems go unnoticed for extended time periods. The clients (buildslaves) can and should run on a variety of hardware / OS platforms. For the server (buildmaster) the OS choice is largely irrelevant. 4 4 5 As buildbot is a general-purpose (build) automation tool, it can also be used to automatically build packages for each buildslave architecture and then push them to a central repository for users to download. However, this adds significant amount of complexity and is prone to breakage. Therefore other means are used now to provide snapshots. It would be fairly easy to integrate code checking toolsinto the build process.5 As buildbot is a general-purpose (build) automation tool, it can also be used to automatically build packages for each buildslave architecture and then push them to a central repository for users to download. However, this adds significant amount of complexity and is prone to breakage. Therefore other means are used now to provide snapshots. It would be fairly easy to integrate additional code checking tools (e.g. [http://valgrind.org/ valgrind]) into the build process. 6 6 7 7 As the number of buildslaves can easily get out of hand, the OpenVPN project can make use of ''your'' help - see below for details. … … 28 28 29 29 1. Make sure you can [wiki:TesterDocumentation build OpenVPN manually] 30 1. If you want to automatically build packages (e.g. deb/rpm) for your platform, you need to be able to do it manually first. Consult your OS'es documentation for more details. 31 1. [http://buildbot.net/buildbot/docs/0.7.12/#Requirements Install buildbot requirements]. 32 1. Download and install buildbot using one of the methods described [http://buildbot.net/trac/wiki/DownloadInstall here]. More instructions are available [http://buildbot.net/buildbot/docs/0.7.12/#Creating-a-buildslave here]. You should install Buildbot 0.7.12 which the ''buildmaster'' is using. 33 1. Configure buildslave 30 1. Install buildbot's requirements 31 1. Download and install buildbot 32 1. Configure buildslave (ask for instructions from samuli) 33 34 More details are available in [http://buildbot.net/buildbot/docs/latest/manual/index.html the buildbot manual]. 34 35 35 36 == Installing buildbot == … … 70 71 71 72 ||'''Operating system'''||'''Version'''||'''Architecture'''||'''24/7'''||'''Connection tests'''||'''Provided by'''||'''Notes'''|| 72 ||Debian||5 (lenny)||i386||No||No||mattock||||73 73 ||Debian||5 (lenny)||amd64||Yes||No||mattock|||| 74 ||Debian||6 (squeeze)||i386||No||No||mattock|||| 75 ||Debian||6 (squeeze)||amd64||Yes||No||mattock|||| 76 ||Ubuntu||10.04||i386||Yes||No||mattock|||| 77 ||Ubuntu||10.04||amd64||No||No||mattock|||| 78 ||Fedora||15||i386||Yes||No||mattock|||| 79 ||Fedora||15||amd64||No||No||mattock|||| 80 ||Scientific Linux||6.x||?||Yes||No||dougy||Partially configured|| 74 ||Debian||6 (squeeze)||i386||Yes||No||mattock|||| 75 ||Ubuntu||10.04||amd64||Yes||No||mattock|||| 76 ||Fedora||16||i386||No||No||mattock|||| 77 ||CentOS||6.x||amd64||Yes||No||mattock|||| 81 78 ||FreeBSD||7.4||amd64||Yes||No(t yet)||cron2||ongoing|| 82 79 ||FreeBSD||8.2||amd64||Yes||No(t yet)||cron2|||| 80 ||FreeBSD||9.0||amd64||Yes||No(t yet)||cron2|||| 83 81 ||OpenBSD||4.9||i386||Yes||No(t yet)||cron2|||| 84 ||NetBSD||5.1|| i386||Yes||No(t yet)||cron2||||82 ||NetBSD||5.1||amd64||Yes||No(t yet)||cron2|||| 85 83 86 84 = List of build permutations =