annotate README.txt @ 186:c7172ca54dff

more docs
author Jeff Hammel <jhammel@mozilla.com>
date Tue, 01 Feb 2011 19:19:36 -0800
parents a5709ef5e275
children bba97450cbc2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
1 autobot
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
2 =======
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
3
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
4 buildbot for the A*Team
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
5
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
6
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
7 What is autobot?
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
8 ----------------
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
9
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
10 autobot is a continuous integration solution for the Automation and
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
11 Tools Team. We have a lot of software. We're really talented, so
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
12 usually it doesn't break. But we're not infalliable. Our robot ally,
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
13 autobot, is there to test things for us. Let's me autobot!
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
14
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
15
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
16 Installing autobot
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
17 ------------------
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
18
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
19 autobot may be installed using the Install script::
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
20
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
21 curl http://k0s.org/mozilla/hg/autobot/raw-file/tip/INSTALL.sh | bash
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
22
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
23 This will create a virtualenv and install autobot for development
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
24 ($VIRTUAL_ENV/src/autobot).
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
25
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
26
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
27 Setting up a buildmaster and slave
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
28 ----------------------------------
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
29
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
30 Once you have autobot installed and the virtualenv activated, you'll
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
31 want to create a buildmaster and a buildslave.
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
32
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
33 You can create a master-slave pair by running ``create-autobot`` after
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
34 activating the virtualenv. This is mostly useful for autobot
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
35 development. The scripts ``create-autobot-master`` and
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
36 ``create-autobot-slave`` are also available. The scripts will prompt you
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
37 for a factory. The factories are from ``autobot.projects`` and its
186
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
38 subdirectories. You can list the available factories with
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
39 ``create-autobot --list-factories`` (or ``create-autobot-master
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
40 --list-factories``).
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
41
186
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
42 Running ``create-autobot --help`` will give the variables you can set
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
43 when it makes a new bot for you (``create-autobot-master`` and
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
44 ``create-autobot-slave`` also have a ``--help``, the variables in
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
45 ``create-autobot`` being a superset of these).
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
46
186
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
47 If you don't specify a variable, the default will be used to create
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
48 your particular bot. You can (probably) change it later.
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
49
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
50
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
51 Using autobot
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
52 -------------
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
53
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
54 It is important to remember that continuous integration is a safety
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
55 net, not a first line of defense.
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
56
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
57
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
58 Projects
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
59 --------
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
60
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
61 What does autobot test?
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
62
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
63 * logparser [WORKING]
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
64 * profilemanager [IN FLIGHT]
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
65 * mozmill [IN FLIGHT]
70
f8dccf3377d9 update documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 59
diff changeset
66 * devicemanager [IN FLIGHT]
59
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
67 * firebug [TODO]
e66165f2f31b complete automagic imports
Jeff Hammel <jhammel@mozilla.com>
parents: 30
diff changeset
68 * jetpack [TODO]
70
f8dccf3377d9 update documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 59
diff changeset
69
186
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
70 The projects are obtained from any factories in subdirectories of
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
71 ``autobot.projects`` (use
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
72 ``python -c 'from autobot import projects; print projects.__file__'``
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
73 to see this location).
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
74
184
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
75
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
76 Adding a New Project
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
77 --------------------
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
78
a5709ef5e275 additional documentation
Jeff Hammel <jhammel@mozilla.com>
parents: 70
diff changeset
79 Occassionally, you'll need to add a new project to test.
186
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
80
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
81
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
82 Is your autobot being feisty?
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
83 -----------------------------
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
84
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
85 Let me know! I'd like to make autobot a solution that works for all
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
86 stake-holders, and if you're reading this, that means you!
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
87
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
88
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
89 TODO
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
90 ----
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
91
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
92 No software of any size is ever finished
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
93
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
94 * singular checkout of repos on slaves
c7172ca54dff more docs
Jeff Hammel <jhammel@mozilla.com>
parents: 184
diff changeset
95 * passing slave environment to master -> MozInfo