Open main menu

CDOT Wiki β

Changes

Buildbot and Cairo

2,669 bytes added, 21:55, 7 March 2008
m
added prerequisites of project
== Name ==
Cairo on Buildbot == Description == Automate is a project to build the Cairo builds graphics library in an automated manner with testing suites on Buildbot.Automate Cairo builds with buildbot, and add in support for running test suites with buildbot.be able to run tests and performance tests
== Leader(s) ==
* [http://blog.vlad1.com/ Vladimir Vukicevic]
* Ben Hearshum
NOTE: only == Project Leader(s) should add names hereNews ==* Mar 06 2008 - Started writing cairobuild. You py grouping steps and CairoTests class which generates summary* Feb 29 2008 - '''can’tWhy does the TESTS take so long on MacOS X? It is ridiculous!!''' add your own name * Feb 29 2008 - Added steps to build on MacOS X* Feb 16 2008 - Updated Cairo project page and first proper release* Feb 11 2008 - Steps are written but some issues have to the Contributor listfixed* Jan 19 2008 - Project Proposal from Vladimir Vukicevic.
== Release ==
<blockquote>
=== Feb. 15th Requirements ==='''Where will I put code and screenshots?'''* [http://svn2.assemblabuildbot.com/svn/Seneca_Hera_Try_Server_Setupnet/trac buildbot-configs/ (I am using 0.7.5)]* [http://svn2.assemblatwistedmatrix.com/svntrac/Seneca_Hera_Try_Server_Setup/buildbot-configs/] - Buildbot configs twisted (look for "cairo"I am using 2.5.0)]* [http://matrix.senecacgit.onor.cacz/%7Eazambran/mozilla/cairo/ http://matrixGit (I am using 1.senecac5.on3.ca/%7Eazambran/mozilla/cairo/6)] - Archived files=== Mar. 7th ===* The steps to build on Mac have been added to [http://matrixsvn2.senecacassembla.on.cacom/svn/Seneca_Hera_Try_Server_Setup/%7Eazambranbuildbot-configs/mozillaSeneca Hera Try Server Setup/screenshotsbuildbot-configs/ ]and the blog post explaining a lot of details about how much has been done is here: ([http://matrixarmenzg.senecacblogspot.on.cacom/%7Eazambran2008/mozilla02/screenshots/] armenzg-sess14-building- Screenshots (look for "cairo" in the filenames-on-mac-no.html Sess14-Buildbot on Cairo])
'''What has been released this week:'''* [# svn co http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/cairo-one-ubuntu-slavecairomaster/master.cfg master.cfg] - It builds Cairo and runs automated tests on one linux machine* [http://matrix.senecac.on.ca/%7Eazambran/mozilla/screenshots/# buildbotcreate-status-cairoslave .jpg /cairoslave localhost:9876 macslave slavepassword (change macslave for linuxslave when trying to run in Linux)# buildbot-status-cairo.jpg] - After build start cairomaster#8 (no tests at this point)buildbot start cairoslave* [# firefox http://matrix.senecac.on.calocalhost:8020 /%7Eazambran/mozilla/cairoOR open it with any browser </Buildbot:Cairo-results.tar.gz Buildbot:Cairo-results.tar.gz] - After build #11 (tests were run)blockquote>
'''Steps to meet requirements'''
* sudo apt-get install buildbot
* sudo apt-get install git-core //This is to get the version control that cairo uses, it is called GIT
 
'''Steps to make it happen'''
* buildbot create-master ~/cairomaster
* Put the [http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/cairo-one-ubuntu-slave/master.cfg master.cfg] to the the created master
* buildbot create-slave ~/cairoslave localhost:9876 cairoslave
* buildbot start ~/cairomaster
* buildbot start ~/cairoslave
* firefox http://localhost:8020 //This is to be able to see the results of the build
</blockquote>
== Tasks ==
<!-- Task --> <td>Write the steps for Mac</td>
<!-- Details --> <td></td>
<!-- Priority --> <td style="background-color: orange; text-align: center; font-weight: bold; font-size: bigger">Med</td>
<!-- Contributors--> <td style="text-align: center;">cworth #cairo</td>
<!-- Status --> <td style="background-color: green; text-align: center; font-weight: bold; font-size: bigger">Done</td>
<!-- Target --> <td style="text-align: center;">29 Feb</td>
<!-- Link --> <td>[http://armenzg.blogspot.com/2008/02/armenzg-sess14-building-cairo-on-mac-no.html Sess14-Buildbot on Cairo]</td>
</tr>
<tr style="height:42px;">
<!-- Task --> <td>Write the steps for Windows</td>
<!-- Details --> <td></td>
<!-- Priority --> <td style="background-color: orange; text-align: center; font-weight: bold; font-size: bigger">Med</td>
<!-- Contributors--> <td style="text-align: center;"></td>
<!-- Status --> <td style="background-color: white; text-align: center; font-weight: bold; font-size: bigger">&nbsp;</td>
<!-- Target --> <td style="text-align: center;">7 Mar</td>
<!-- Link --> <td>&nbsp;</td>
</tr>
<tr style="height:42px;">
<!-- Task --> <td>Write cairobuild.py file</td>
<!-- Details --> <td>This will centralize and group steps together as in [http://mxr.mozilla.org/mozilla/source/tools/buildbot-configs/testing/unittest/mozbuild.py mozbuild.py]</td>
<!-- Priority --> <td style="background-color: orange; text-align: center; font-weight: bold; font-size: bigger">Med</td>
<!-- Contributors--> <td style="text-align: center;"></td>
<!-- Status --> <td style="background-color: white; text-align: center; font-weight: bold; font-size: bigger">&nbsp;</td>
<!-- Target --> <td style="text-align: center;">&nbsp;7 Mar</td>
<!-- Link --> <td>&nbsp;</td>
</tr>
<tr style="height:42px;">
<!-- Task --> <td>Find out how to use PKG_CONFIG_PATH</td>
<!-- Details --> <td>* PKG_CONFIG_PATH=(the --prefix value)+"/lib/pkgconfig"(where the .pc file is)</td>
<!-- Priority --> <td style="background-color: orange; text-align: center; font-weight: bold; font-size: bigger">Med</td>
<!-- Contributors--> <td style="text-align: center;"></td>
<!-- Status --> <td style="background-color: whitegreen; text-align: center; font-weight: bold; font-size: bigger">&nbsp;Fixed</td><!-- Target --> <td style="text-align: center;">&nbsp;Feb 29</td>
<!-- Link --> <td>&nbsp;</td>
</tr>
== Problems ==
* A lot of problems when trying to build on MacOS are mentioned here: [http://armenzg.blogspot.com/2008/02/armenzg-sess14-building-cairo-on-mac-no.html Sess14-Buildbot on Cairo]
* <strike>The first time the command GIT CLONE works because there is nothing before that execution but the second run should be an update instead of a checkout. What could be the proper GIT command to have as the step?</strike>
I have decided to remove the checked out code and checkout the trunk before each build
Used ./configure --prefix=/path/to/somewhere to avoid building somewhere where I require to have sudo privileges
== Project News Notes =='''These notes are for learning purposes and documentation'''<blockquote>=== Feb. 15th release==='''Where will I put code and screenshots?'''* [http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/ http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/] - Buildbot configs (look for "cairo")* [http://matrix.senecac.on.ca/%7Eazambran/mozilla/cairo/ http://matrix.senecac.on.ca/%7Eazambran/mozilla/cairo/] - Archived files* Feb 16 2008 [http://matrix.senecac.on.ca/%7Eazambran/mozilla/screenshots/ http://matrix.senecac.on.ca/%7Eazambran/mozilla/screenshots/] - Screenshots (look for "cairo" in the filenames) '''What has been released this week:'''* [http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/cairo-one-ubuntu-slave/master.cfg master.cfg] - Updated It builds Cairo project page and first proper releaseruns automated tests on one linux machine* [http://matrix.senecac.on.ca/%7Eazambran/mozilla/screenshots/buildbot-status-cairo.jpg buildbot-status-cairo.jpg] - After build #8 (no tests at this point)* Feb [http://matrix.senecac.on.ca/%7Eazambran/mozilla/cairo/Buildbot:Cairo-results.tar.gz Buildbot:Cairo-results.tar.gz] - After build #11 2008 (tests were run) '''Steps to meet requirements'''* sudo apt-get install buildbot* sudo apt-get install git- core //This is to get the version control that cairo uses, it is called GIT '''Steps are written but some issues have to fixedmake it happen'''* Jan 19 2008 buildbot create- Project Proposal from Vladimir Vukicevicmaster ~/cairomaster* Put the [http://svn2.assembla.com/svn/Seneca_Hera_Try_Server_Setup/buildbot-configs/cairo-one-ubuntu-slave/master.cfg master.cfg] to the the created master* buildbot create-slave ~/cairoslave localhost:9876 cairoslave* buildbot start ~/cairomaster* buildbot start ~/cairoslave* firefox http://localhost:8020 //This is to be able to see the results of the build</blockquote>
== Notes ==
These notes are for learning purposes and documentation
<blockquote>
=== Build Cairo manually ===
1
edit