Changes

Jump to: navigation, search

Buildbot and EC2

3,480 bytes added, 13:19, 14 January 2008
no edit summary
There is a generic Amazon EC2 instance (also called an AMI) created that is set by default in the EC2BuildSlave class. However, if you desire, you may also insert a custom AMI instance ID to the EC2BuildSlave and have it start up your own AMI. See the custom startup script, in the 0.3 deliverable zip, to insert into your instance to have your build-slave created at run-time.
 
 
 
----
=== Release 0.4 ===
 
==== Goals ====
*Run a Try server @ Home
*Make Try server use EC2
 
==== Downloads ====
None, but when this is completed, the zipped archive of the try server will go here
 
==== About ====
 
For this release, it was important to make this project more useful for Mozilla. <br /><br />
For EC2 to be useful, you have to use it when you have periods of inactivity, or periods of sudden increased activity. This appears to happen most often on Mozilla's Try Server. <br /><br />
 
The Try Server lets developers submit a patch to the trunk, and have it build on all 3 OS's, without submitting their change to trunk. So, it's just a place where developers can try and see if their patch will work on all 3 major OS's. <br /><br />
 
Since developers are using the Try Server continuously, and it's a service that cannot really be taken offline, Seneca will be hosting it's own Try Server. Right now it is very unclear how many machines will be made available to this Try Server, but there should be about 10 machines available for this project at the beginning. As the project continues, more servers will likely be added.<br /><br />
 
Since time is an issue in getting access to the servers @ Seneca, the first little bit in getting the Try Server to use EC2 build slaves will be running on an external (from Seneca) server. Once that is completed, a zip of the buildbot files will be made available here.
== Tasks ==
<table style="width: 100%;" class="standard-table" cellborder=1 border=1 cellpadding=3 cellspacing=0>
<th style="width: 1510%;">Task</th> <th style="width: 4540%>Details</th> <th style="width: 108%;">Priority</th> <th style="width: 108%;">Contributors</th> <th style="width: 108%;">Status</th> <th style="width: 108%;">Target</th> <th style="width: 8%;">Completed</th> <th style="width: 8%;">Link(s)</th>  <tr> <td>Try Server</td> <td>Start a Try Server on a Linux machine.</td> <td style="background-color: red; text-align: center; font-weight: bold; font-size: bigger">High</td> <td>[[User:Awdelyea|Adam Delyea]]</td> <td style="background-color: SkyBlue; text-align: center; font-weight: bold;">In Progress</td> <td style="background-color: yellow; text-align: center; font-weight: bold;">14/01/08</td> <td>&nbsp;</td> <td>[http://wiki.mozilla.org/Build:TryServer Mozilla Try Server]</td> </tr>  <tr> <td>EC2 on Try Server</td> <td>Make the Try Server use EC2 to spawn build slaves.</td> <td style="background-color: red; text-align: center; font-weight: bold; font-size: bigger">High</td> <td>[[User:Awdelyea|Adam Delyea]]</td> <td style="background-color: SkyBlue; text-align: center; font-weight: bold;">In Progress</td> <td style="background-color: yellow; text-align: center; font-weight: bold;">14/01/08</td> <td>&nbsp;</td> <td><!-- No Links --></td> </tr>
<tr>
<td>Add a new build step to the build master config file. The build step will be in an external file and imported into the build master config file.</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td> <td>&nbsp;</td> <td>&nbsp;</td>
<td>&nbsp;</td>
<td>[http://buildbot.net/repos/release/docs/buildbot.html#Writing-New-BuildSteps Writing New Build Steps]</td>
<td>Utilize the EC2 python library to connect to an account on the EC2 network. Once connected, display some information about the users account to prove it's actually connecting.</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td> <td>&nbsp;</td> <td>&nbsp;</td>
<td>&nbsp;</td>
<td><ul><li>[http://code.google.com/p/boto/ Boto Amazon Web Services Library in Python]</li><li>[http://jimmyg.org/2007/09/01/amazon-ec2-for-people-who-prefer-debian-and-python-over-fedora-and-java/ EC2 hearts Python]</li></ul></td>
<td>Allow Buildbot to spawn an instance on demand. This could possibly be a function called right before the build slave list is populated, and would pass back an array of build slaves.</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</td>
<td style="background-color: white; text-align: center; font-size: bigger">Cut</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td>Allow Buildbot to successfully start a build using a build slave on an EC2 instance</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td>Make it possible to have a script load when Linux starts</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td style="background-color: gold; text-align: center; font-weight: bold; font-size: bigger">NEEDED! ***<br />[http://zenit.senecac.on.ca/wiki/index.php/User:dominic Dominic Baranski]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td style="background-color: gold; text-align: center; font-weight: bold; font-size: bigger">NEEDED! ***<br />[http://zenit.senecac.on.ca/wiki/index.php/User:dominic Dominic Baranski]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td>Allow Buildbot to successfully build mozilla using a build slave on an EC2 instance</td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td></td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done...ish</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td>Making a generic EC2 Instance for Buildbot</td>
<td style="background-color: Green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<td></td>
<td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<td>[[User:Awdelyea|Adam Delyea]]</td>
<td></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
2007-12-13: Release v0.3 is complete and available for download: easier to install and setup, can use to build projects now
 
2008-12-14: Release v0.4 Defined. In the process of getting accounts and machines for Try Server Farm.
1
edit

Navigation menu