Open main menu

CDOT Wiki β

Changes

Mozharness

2,450 bytes added, 05:57, 18 December 2010
Project Plan
If you look in the [http://hg.mozilla.org/build/tools/file/tip/scripts tools/scripts] repo you can see that we have a simple shell file to do this for the fuzzing automation. The buildbot factory that calls it is called [http://hg.mozilla.org/build/buildbotcustom/file/a70b38b40088/process/factory.py#l7895 mozharness] and it is very simple.
* mozharness is a single factory that buildbot can run; within mozharness, a script is selected for a specific job. This moves the job-definition responsibility out from buildbot; by separating the pieces, you avoid excessive complexity in buildbot and also open up the possibility of running mozharness manually (e.g., by a developer, to test something) ment
Initial contacts: [[User:Armenzg|Armenzg]]
== Project Leader(s) ==
In Alphabetical Order: Adrian Pruteanu [http://zenit.senecac.on.ca/wiki/index.php/User:Atpruteanuadrianp: Adrian Pruteanu]
Mustafa Redha [http://zenit.senecac.on.ca/wiki/index.php/User:Mredhamustafaj: Mustafa Redha]
== Project Contributor(s) ==
Name(s) of people casually working on the project, or who have contributed significant help. Include links to personal pages within wiki NOTE[[User: only Project Leader(s) should add names here. You '''can’t''' add your own name to the Contributor list.Armenzg|Armenzg]]
== Project Details ==
* separate framework - which buildbot calls
 
'''What are we building?'''
* Profile Build
* Tests - Mochitests, Reftests, xpcshell, ... 10 in total
 
** l10n builds
 
'''The problem that mozharness solves:'''
* buildbot uses a "factory" to run a job
* there are (becoming) too many different "factories" within buildbot
 
 
'''[http://armenzg.blogspot.com/2010/10/releng-contributors-from-seneca.html Outlined in Armen's blog post]'''
== Project Plan ==
Goals for each release:
 
<table style="border: 1px black solid;" cellpadding="3">
<tr>
<th style="width: 50%; border-right: 1px black solid;">
[http://blog.esmnetworks.com/category/mozharness/ adrianp]
- [http://code.darkminds.org/hg/mozharness/rss-log Development Feed]
- [http://code.darkminds.org/hg/mozharness Repository]
</th>
<th>
[http://mustafaredha.wordpress.com/ mustafaj]
</th>
</tr>
<tr>
<td style="vertical-align: top; width: 50%; border-right: 1px black solid;">
<!-- adrianp's projects -->
'''hgtool port'''
* 0.1
- Create the MercurialVCS class that is responsible for basic hg operations (clone, pull, push) each with an individual method
* 0.2
- Implement all hgtool actions as individual methods in MercurialVCS. At this point MercurialVCS() should be importable (useful) for Mozharness<br />
- Document usage for programmers (inheritance, import, whatever else not pertaining to users shell interaction)
* 0.3
- lib/source/mercurial.py should be callable via shell with parameters matching each method (ie: ./mercurial.py checkout [src]?)<br />
- The Class should be generalized to ensure portability to other D/VCSs (git, svn, cvs)
<hr />
<br />
</td>
<td style="vertical-align: top;">
<!-- mustafaj's projects -->
 
<b>0.1 through 0.3 will have a progressive approach.</b>
 
* 0.1:
 
**<s>- create mercurial repository: Done</s> -->[http://iraq.proximity.on.ca/hg]<--
<s>** Download builds and tests get them running on Fedora Linux x64.</s>
<s>*** Mochitest and reftest?</s>
<s>** Document the success or problems of these tests (on F13.x64)</s>
<s>** Find out what the meaninfull output will be (These tests run, what are we looking for as a result)</s>
<s>** Scope a specific set of test(s) and options that will be incorporated into moztest.py</s>
<s>** See what logic and scripts can be ported from buildbotcustom to moztest.py</s>
 
* 0.2
<s>** Create a basic moztest.py which calls classes from the scripts in the harness to take on options and provide a --help list.</s>
** Incorporate the automation of:
***checking the build environment prerequisites
***create an option to bring system up to date for any missing pre-reqs
<s>***download and unpack builds and tests into a standardized directory structure</s>
***run a barebones test
** expand automation to include:
***all options available for the test chosen
<s>***simplify the options for "easy test and build urls"</s>
 
 
* 0.3
<s>**Document 0.1 and 0.2 in an introduction to moztest.py (mozharness)</s> in an inclusive format geared towards developers using the tool and those that may contribute to it in the future
<s>**Continue to expand on moztest.py to address errors</s>
**TBD midway through 0.3
</td>
</tr>
</table>
== Project News==
* ctyler, mustafaj, armenzg, adrianp, asingh
 
Project page: http://zenit.senecac.on.ca/wiki/index.php/ScriptFactory_Project
'''Blogs:'''
... all of which appear on the [http://zenit.senecac.on.ca/~chris.tyler/planet/ CDOT Planet]
 
== release simple bugs ==
1
edit