A quick brain dump of how to add build slaves.
[Imported from Trac: page HowtoContributeABuildbot, version 1]
parent
dd2616aff8
commit
08e6f75bfb
91
HowtoContributeABuildbot.md
Normal file
91
HowtoContributeABuildbot.md
Normal file
|
@ -0,0 +1,91 @@
|
|||
From <http://allmydata.org/pipermail/tahoe-dev/2009-December/003279.html>:
|
||||
|
||||
Note: These instructions omit the fact that you must install darcs as a prerequisite to setup a build slave.
|
||||
|
||||
```
|
||||
[tahoe-dev] How to set up a buildslave?
|
||||
Zooko Wilcox-O'Hearn zooko at zooko.com
|
||||
Sun Dec 6 11:25:27 PST 2009
|
||||
|
||||
* Previous message: [tahoe-dev] How to set up a buildslave?
|
||||
* Next message: [tahoe-dev] [tahoe-lafs] #534: "tahoe cp" command encoding issue
|
||||
* Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
|
||||
|
||||
On Sunday, 2009-12-06, at 11:27 , <kyle at arbyte.us> wrote:
|
||||
|
||||
> I would like to set up my openbsd/amd64 system to be a buildslave.
|
||||
> How do I do this?
|
||||
|
||||
I'll summarize to tahoe-dev, and then let's take the back-and-forth
|
||||
details of the setup into private mail so as not to bore the non-
|
||||
buildbot-operating mailing list readers.
|
||||
|
||||
Step 1: install buildbot on your system (presumably using the OpenBSD
|
||||
port)
|
||||
|
||||
This is also the part where you choose what sort of controls you want
|
||||
to have over your buildslave. I would strongly advise you not to run
|
||||
your buildslave under your user account, and (duh) not to give it any
|
||||
sort of elevated privileges such as root!
|
||||
|
||||
So, running under a separate user account without high privileges is
|
||||
definitely a good idea, but since you're an OpenBSD user I guess I
|
||||
don't need to tell you this.
|
||||
|
||||
Also you can use other mechanisms to lock it down more like jail,
|
||||
chroot, etc. David Abrahams uses Solaris Zones to contain his
|
||||
buildslaves. I don't know what particular features Zones offer. I
|
||||
wonder if this means he can use ZFS snapshots to rewind the state of
|
||||
the filesystem before running each build. That would be cool. Brian
|
||||
Warner and the other buildbot maintainers have been hacking on some
|
||||
tricks to set up your buildslaves inside a full virtual machine so
|
||||
that you can have a pristine machine for every build -- e.g. "This is
|
||||
a fresh install of OpenBSD 4.6 with nothing added except for buildbot
|
||||
and its dependencies.".
|
||||
|
||||
Personally I don't (yet) use any such fancy techniques -- I just run
|
||||
my buildslaves under a separate user account which doesn't have
|
||||
access to my personal stuff or to root privileges.
|
||||
|
||||
Step 2: choose a name for your buildslave which will fit into the
|
||||
list of buildslave names: http://allmydata.org/buildbot/buildslaves .
|
||||
A hostname would be a good choice.
|
||||
|
||||
Step 3: Receive a password from me in email.
|
||||
|
||||
Step 4: create the buildslave with "buildbot create-slave $BASEDIR
|
||||
dev.allmydata.com:9987 $SLAVENAME $PASSWORD"
|
||||
|
||||
detailed docs: http://djmitche.github.com/buildbot/docs/0.7.11/
|
||||
#Creating-a-buildslave
|
||||
|
||||
Then "buildbot start $BASEDIR".
|
||||
|
||||
Step 5: Please do this two more times, one for pycryptopp and one for
|
||||
zfec. Those two use the same $SLAVENAME and $PASSWORD and hostname
|
||||
("dev.allmydata.com"), but a different $BASEDIR (whatever directory
|
||||
you want -- I personally use a different user account for my tahoe-
|
||||
lafs, pycryptopp, and zfec buildslaves), and a different port
|
||||
number. Port 9987 == tahoe-lafs, port 10998 == pycryptopp, port
|
||||
12987 == zfec .
|
||||
|
||||
|
||||
Okay, once you've gotten all this working then we'll see your OpenBSD/
|
||||
amd64 machine on the buildbot pages and we'll see how well Tahoe-LAFS
|
||||
passes unit tests on your platform. Eventually I would like to go on
|
||||
to the next step, which is integrating Tahoe-LAFS into the official
|
||||
OpenBSD package system (ports) and adding tests to check whether
|
||||
Tahoe-LAFS is still correctly building from its ports package. But
|
||||
that is for another day.
|
||||
|
||||
|
||||
Regards,
|
||||
|
||||
Zooko
|
||||
|
||||
* Previous message: [tahoe-dev] How to set up a buildslave?
|
||||
* Next message: [tahoe-dev] [tahoe-lafs] #534: "tahoe cp" command encoding issue
|
||||
* Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
|
||||
|
||||
More information about the tahoe-dev mailing list
|
||||
```
|
Loading…
Reference in a new issue