Your SlideShare is downloading. ×
0
 
Buildbot: Bigger, Better, Buildier <ul><ul><li>One year on </li></ul></ul>Michael Leibowitz (Intel) Shaun McDonald (Indepe...
Agenda <ul><li>What is a buildbot? </li></ul><ul><li>What's changed from last year? </li></ul><ul><li>How to setup a bot <...
Introduction <ul><li>What is the buildbot infrastructure? </li></ul><ul><ul><li>Test the buildability of CWS and MWS on as...
What's changed from last year? <ul><li>One year on... </li></ul><ul><ul><li>Newer version of the buildbot </li></ul></ul><...
How to setup a bot <ul><li>Prerequisites </li></ul><ul><li>Build OpenOffice.org </li></ul><ul><li>On your system first </l...
How to setup a bot <ul><li>Prerequisites </li></ul><ul><ul><li>A working OpenOffice.org build environment </li></ul></ul><...
How to setup a bot <ul><li>Add a new bot </li></ul><ul><ul><li>http://code.google.com/p/ootermite/wiki/AddNewBuildBot </li...
How to start a build <ul><li>Build Initiation </li></ul><ul><ul><li>Cvs commit </li></ul></ul><ul><ul><li>Web </li></ul></...
Starting a build from IRC <ul><ul><li>oobuildbot: force build --builder <builder> --branch <CWS> --reason <some text> </li...
Status from IRC <ul><ul><li>oobuildbot: status [<builder>] </li></ul></ul>
How to interpret results <ul><li>Results/Notification </li></ul><ul><ul><li>Tinderbox </li></ul></ul><ul><ul><li>EIS </li>...
Source Code Statistics <ul><li>Reporter </li></ul><ul><ul><li>Send arbitrary data to server as XML </li></ul></ul><ul><ul>...
XML Data Report <data> <build> <build_number>42</build_number> <builder>foo</builder> <cws>readme4macintel</cws> <host>bar...
Graph Output http://termite.go-oo.org/reporter/reports/2?cws=placeholders
Next Steps <ul><li>What's Next? </li></ul><ul><ul><li>Ready for QA builds with special treatment </li></ul></ul><ul><ul><l...
<ul><li>Questions? </li></ul>
Upcoming SlideShare
Loading in...5
×

Buildbot: Bigger, Better, Buildier

1,594

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,594
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Buildbot: Bigger, Better, Buildier"

  1. 2. Buildbot: Bigger, Better, Buildier <ul><ul><li>One year on </li></ul></ul>Michael Leibowitz (Intel) Shaun McDonald (Independent)
  2. 3. Agenda <ul><li>What is a buildbot? </li></ul><ul><li>What's changed from last year? </li></ul><ul><li>How to setup a bot </li></ul><ul><li>How to start a build </li></ul><ul><li>How to interpret the results </li></ul><ul><li>Source code statistics </li></ul><ul><li>What's next? </li></ul>
  3. 4. Introduction <ul><li>What is the buildbot infrastructure? </li></ul><ul><ul><li>Test the buildability of CWS and MWS on as many platforms as possible </li></ul></ul><ul><ul><li>Master controls slaves </li></ul></ul><ul><ul><li>Slaves can be anywhere in the world with a stable internet connection </li></ul></ul>Buildmaster Builder: Mac-X86
  4. 5. What's changed from last year? <ul><li>One year on... </li></ul><ul><ul><li>Newer version of the buildbot </li></ul></ul><ul><ul><li>No client side buildbot patches required </li></ul></ul><ul><ul><li>Many bots of the same configuration </li></ul></ul><ul><ul><li>Compile on CVS commit </li></ul></ul><ul><ul><li>Tinderbox & EIS integration </li></ul></ul><ul><ul><li>Client side config </li></ul></ul><ul><ul><li>Cross-platform scripts </li></ul></ul><ul><ul><li>Faster updates to the config </li></ul></ul><ul><ul><li>Fewer master restarts (fewer lost builds) </li></ul></ul><ul><ul><li>Source code metrics </li></ul></ul><ul><ul><li>Report generation </li></ul></ul><ul><ul><li>More bots [we still need your machines] </li></ul></ul>
  5. 6. How to setup a bot <ul><li>Prerequisites </li></ul><ul><li>Build OpenOffice.org </li></ul><ul><li>On your system first </li></ul>
  6. 7. How to setup a bot <ul><li>Prerequisites </li></ul><ul><ul><li>A working OpenOffice.org build environment </li></ul></ul><ul><ul><li>Python 2.3.5 </li></ul></ul><ul><ul><li>Zope 2.8.1 </li></ul></ul><ul><ul><li>Twisted 2.5.0 </li></ul></ul><ul><ul><li>Perl </li></ul></ul><ul><ul><li>Perl Modules </li></ul></ul><ul><ul><ul><li>LWP::Simple </li></ul></ul></ul><ul><ul><ul><li>File::Copy::Recursive </li></ul></ul></ul><ul><ul><ul><li>Config::Auto </li></ul></ul></ul>
  7. 8. How to setup a bot <ul><li>Add a new bot </li></ul><ul><ul><li>http://code.google.com/p/ootermite/wiki/AddNewBuildBot </li></ul></ul><ul><ul><li>Grab a copy of buildbot 0.7.5 </li></ul></ul><ul><ul><li>Build the buildbot (No patches needed client side) </li></ul></ul><ul><ul><li>Create a slave </li></ul></ul><ul><ul><li>Grab the cross-platform scripts from svn </li></ul></ul><ul><ul><li>Customise scripts if required </li></ul></ul><ul><ul><li>Create the build_copy dir for build_prep </li></ul></ul><ul><ul><li>Let us know about your bot! </li></ul></ul><ul><ul><ul><li>[email_address] </li></ul></ul></ul><ul><ul><ul><li>[email_address] </li></ul></ul></ul><ul><ul><li>Start your bot (once we have added it to the master) </li></ul></ul>
  8. 9. How to start a build <ul><li>Build Initiation </li></ul><ul><ul><li>Cvs commit </li></ul></ul><ul><ul><li>Web </li></ul></ul><ul><ul><li>IRC </li></ul></ul><ul><li>What to build </li></ul><ul><ul><li>CWS name </li></ul></ul><ul><ul><ul><li>readme4macintel </li></ul></ul></ul><ul><ul><ul><li>swlayout01 </li></ul></ul></ul><ul><ul><li>Milestone tag </li></ul></ul><ul><ul><ul><li>SRC680_m227 </li></ul></ul></ul><ul><ul><ul><li>OOG680_m5 </li></ul></ul></ul>
  9. 10. Starting a build from IRC <ul><ul><li>oobuildbot: force build --builder <builder> --branch <CWS> --reason <some text> </li></ul></ul><ul><ul><ul><li>Not specifying the branch/CWS means that the latest MWS is built </li></ul></ul></ul><ul><ul><li>oobuildbot: watch <builder> </li></ul></ul>
  10. 11. Status from IRC <ul><ul><li>oobuildbot: status [<builder>] </li></ul></ul>
  11. 12. How to interpret results <ul><li>Results/Notification </li></ul><ul><ul><li>Tinderbox </li></ul></ul><ul><ul><li>EIS </li></ul></ul><ul><ul><ul><li>Status of last/current build </li></ul></ul></ul><ul><ul><li>Email </li></ul></ul><ul><ul><ul><li>[CVS committers] </li></ul></ul></ul><ul><ul><ul><li>[web initiation of builds] </li></ul></ul></ul><ul><ul><li>IRC </li></ul></ul><ul><ul><ul><li>oobuildbot: status </li></ul></ul></ul><ul><ul><ul><li>oobuildbot: watch <builder> </li></ul></ul></ul><ul><ul><li>Web </li></ul></ul><ul><ul><ul><li>http://termite.go-oo.org/buildbot/ </li></ul></ul></ul>
  12. 13. Source Code Statistics <ul><li>Reporter </li></ul><ul><ul><li>Send arbitrary data to server as XML </li></ul></ul><ul><ul><ul><li>Source code metrics </li></ul></ul></ul><ul><ul><ul><ul><li>sloccount </li></ul></ul></ul></ul><ul><ul><ul><li>Build time </li></ul></ul></ul><ul><ul><ul><li>? What do you think is useful ? </li></ul></ul></ul><ul><ul><li>Retrieve reports of aggregate data </li></ul></ul>
  13. 14. XML Data Report <data> <build> <build_number>42</build_number> <builder>foo</builder> <cws>readme4macintel</cws> <host>bar</host> <pws>SRC680_m217</pws> </build> <data_item> <data> <SLOC>299</SLOC> </data> <data_type>sloccount</data_type> </data_item> </data>
  14. 15. Graph Output http://termite.go-oo.org/reporter/reports/2?cws=placeholders
  15. 16. Next Steps <ul><li>What's Next? </li></ul><ul><ul><li>Ready for QA builds with special treatment </li></ul></ul><ul><ul><li>Test a patch </li></ul></ul><ul><ul><li>More reports </li></ul></ul><ul><ul><li>Automated generation of the reports </li></ul></ul><ul><ul><li>QA Testing of Ready for QA CWS </li></ul></ul><ul><ul><li>Google Group/Mailing list </li></ul></ul><ul><ul><li>? Your ideas ? </li></ul></ul>
  16. 17. <ul><li>Questions? </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×