1
edit
Changes
→Project Plan
It would be good if we could create scripts that told a machine how to generate an optimized build, a debug build, unit tests, talos runs, locale repackages.
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 ScriptFactorymozharness] 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) ==
== Project Contributor(s) ==
== Project Details ==
* Objective: Improve efficiency while lowering the entry level knowledge required from new developers to get involved
* http://hg.mozilla.org/users/asasaki_mozilla.com/mozharness
* 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]''' == release simple bugs 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* candidates0.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 -->
* http0.1://bit.ly/dwICN9
**<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> == buildapi Project News==
* ObjectiveFriday October 8, 2010: Need **I will try to identify critical machines that should not be processing jobscontact Armen today and find out what his schedule is like, and coordinate with everybody to setup a meeting in CDOT conference room. -Mustafa
* candidatesTuesday October 12, 2010: asingh**Adrian made initial Contact with Armen, meeting set for 3pm Wendesday October 13,jing yang2010 -Mustafa
* Querying the database to get information about jobsWednesday October 13, 2010:**The mozharness/buildapi/releasebugs group met today with Armen and Ctyler in a conference call. The conference call is logged below -Mustafa '''First meeting: mozharness call (2010-10-12 15:00 EDT)'''
* pylons project (Python web framework)ctyler, mustafaj, armenzg, adrianp, asingh
*Armen: http://armenzg.blogspot.com/* Mustafa: http://anamariamozmustafaredha.wordpress.com/* adrianp: http://blog.esmnetworks.com/