blob: 0de2dacebe2befad48e6566c9f084558d7c3fb4a [file] [log] [blame]
Galina Kistanovaea0a8c92011-10-31 21:13:06 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2 "http://www.w3.org/TR/html4/strict.dtd">
3<html>
4<head>
5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Galina Kistanovab65bc5a2011-11-03 05:57:26 +00006 <title>
7 How To Add Your Build Configuration To LLVM Buildbot Infrastructure
8 </title>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +00009 <link rel="stylesheet" href="llvm.css" type="text/css">
10</head>
11<body>
12
Galina Kistanovad6956872011-11-02 22:05:18 +000013<h1>How To Add Your Build Configuration To LLVM Buildbot Infrastructure</h1>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000014<ol>
15 <li><a href="#introduction">Introduction</a></li>
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000016 <li><a href="#steps">Steps To Add Builder To LLVM Buildbot</a></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000017</ol>
18<div class="doc_author">
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000019 <p>Written by <a href="mailto:gkistanova@gmail.com">Galina Kistanova</a></p>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000020</div>
21
22<!-- *********************************************************************** -->
23<h2><a name="introduction">Introduction</a></h2>
24<!-- *********************************************************************** -->
25
26<div>
27
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000028<p>This document contains information about adding a build configuration and
29 buildslave to private slave builder to LLVM Buildbot Infrastructure
30 <a href="http://lab.llvm.org:8011">http://lab.llvm.org:8011</a></p>
31
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000032</div>
33
34<!-- *********************************************************************** -->
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000035<h2><a name="steps">Steps To Add Builder To LLVM Buildbot</a></h2>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000036<!-- *********************************************************************** -->
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000037
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000038<div>
39
Galina Kistanovad6956872011-11-02 22:05:18 +000040<p>Volunteers can provide their build machines to work as build slaves to
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000041 public LLVM Buildbot.</p>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000042
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000043<p>Here are the steps you can follow to do so:</p>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000044
45<ol>
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000046 <li><p>Check the existing build configurations to make sure the one you are
47 interested in is not covered yet or gets built on your computer much
48 faster than on the existing one. We prefer faster builds so developers
Galina Kistanovad6956872011-11-02 22:05:18 +000049 will get feedback sooner after changes get committed.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000050
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000051 <li><p>The computer you will be registering with the LLVM buildbot
52 infrastructure should have all dependencies installed and you can
53 actually build your configuration successfully. Please check what degree
54 of parallelism (-j param) would give the fastest build.
55 You can build multiple configurations on one computer.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000056
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000057 <li><p>Install buildslave (currently we are using buildbot version 0.8.5).
58 Depending on the platform, buildslave could be available to download and
59 install with your packet manager, or you can download it directly from
60 <a href="http://trac.buildbot.net">http://trac.buildbot.net</a> and
Galina Kistanovad6956872011-11-02 22:05:18 +000061 install it manually.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000062
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000063 <li><p>Create a designated user account, your buildslave will be running
64 under, and set appropriate permissions.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000065
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000066 <li><p>Choose the buildslave root directory (all builds will be placed under
67 it), buildslave access name and password the build master will be using
68 to authenticate your buildslave.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000069
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000070 <li><p>Create a buildslave in context of that buildslave account.
71 Point it to the <b>lab.llvm.org</b> port <b>9990</b> (see
72 <a href="http://buildbot.net/buildbot/docs/current/full.html#creating-a-slave">
73 Buildbot documentation, Creating a slave</a>
74 for more details) by running the following command:</p>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000075
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000076<div class="doc_code">
77<pre>
78$ buildslave create-slave <i>buildslave-root-directory</i> \
79 lab.llvm.org:9990 \
80 <i>buildslave-access-name buildslave-access-password</i>
81</pre>
82</div></li>
Galina Kistanovad6956872011-11-02 22:05:18 +000083
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000084 <li><p>Fill the buildslave description and admin name/e-mail.
85 Here is an example of the buildslave description:</p>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000086
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000087<div class="doc_code">
88<pre>
89Windows 7 x64
90Core i7 (2.66GHz), 16GB of RAM
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000091
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000092g++.exe (TDM-1 mingw32) 4.4.0
93GNU Binutils 2.19.1
94cmake version 2.8.4
95Microsoft(R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86
96</pre>
97</div></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +000098
Galina Kistanovab65bc5a2011-11-03 05:57:26 +000099 <li><p>Make sure you can actually start the buildslave successfully. Then set
100 up your buildslave to start automatically at the start up time.
101 See the buildbot documentation for help.
102 You may want to restart your computer to see if it works.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +0000103
Galina Kistanovab65bc5a2011-11-03 05:57:26 +0000104 <li><p>Send a patch which adds your build slave and your builder to zorg.</p>
105 <ul>
106 <li>slaves are added to
107 <tt>buildbot/osuosl/master/config/slaves.py</tt></li>
108 <li>builders are added to
109 <tt>buildbot/osuosl/master/config/builders.py</tt></li>
110 </ul></li>
Galina Kistanovad6956872011-11-02 22:05:18 +0000111
Galina Kistanovab65bc5a2011-11-03 05:57:26 +0000112 <li><p>Send the buildslave access name and the access password directly
113 to <a href="mailto:gkistanova@gmail.com">Galina Kistanova</a>, and wait
114 till she will let you know that your changes are applied and buildmaster
115 is reconfigured.</p>
116
117 <li><p>Check the status of your buildslave on the
118 <a href="http://lab.llvm.org:8011/waterfall">Waterfall Display</a>
119 to make sure it is connected, and
120 <a href="http://lab.llvm.org:8011/buildslaves/your-buildslave-name">
121 http://lab.llvm.org:8011/buildslaves/&lt;your-buildslave-name&gt;</a>
122 to see if administrator contact and slave information are correct.</p>
123 </li>
124
125 <li><p>Wait for the first build to succeed and enjoy.</p></li>
Galina Kistanovaea0a8c92011-10-31 21:13:06 +0000126</ol>
127
128</div>
129
130<!-- *********************************************************************** -->
131<hr>
132<address>
133 <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
134 src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS"></a>
135 <a href="http://validator.w3.org/check/referer"><img
136 src="http://www.w3.org/Icons/valid-html401-blue" alt="Valid HTML 4.01"></a>
137 <a href="http://llvm.org/">The LLVM Compiler Infrastructure</a>
138 <br>
139 Last modified: $Date: 2011-10-31 12:50:0 -0700 (Mon, 31 Oct 2011) $
140</address>
141</body>
142</html>