Build:TryServer
Try Server
(THIS DOC IS NO LONGER VALID - SEE Build:TryServerAsBranch)
The try server is an easy way to test a patch on all 3 platforms without actually checking the patch in to a core repository. You need a Mozilla LDAP account to upload a patch, or a Mozilla hg account (level 1) to use push to try.
To submit a change to the try server:
- Log into the Try web interface with your LDAP username and password and upload a patch;
or
- For changes to mozilla-central or close enough (e.g. tracemonkey branch), you can
hg push -f ssh://hg.mozilla.org/try/
orhg push -f ssh://<username@host@>hg.mozilla.org/try/
To see the results:
- You'll get an email with unit test results.
- Look for your changeset on the Try Tinderbox or Try TBPL.
- Download your completed builds from /tryserver-builds.
If you're using Mercurial queues, the push -f
command pushes any patches that are currently applied, and the Try server will build the result. (This is an awesome feature, not a bug!)
You don’t need to clone or pull from the try
repo, and you probably don’t want to. You’d get every half-baked changeset anybody ever tested.
See Jorendorff's blog for more details.
Other Mozilla Try Servers
- Thunderbird Try Server for the comm-central repository
What Gets Tried
The Try server currently reports on the following trees:
- hg: The Mozilla-Central Mercurial Repository.
- CVS: The Mozilla 1.9 (Firefox 3.0) CVS Repository. This is used for security releases; active development takes place in Mercurial.
Tinderbox column | source | platform | details |
Linux talos try trunk | either | Linux | Runs Talos tests on successful builds from either Linux builder. |
Try server linux builder | CVS | Linux | Build only. |
Try server linux hg builder | hg | Linux | Build only. |
Try server linux unittest builder | hg | Linux | Build and Unittests. |
Try server mac builder | CVS | Macintosh | Build only. |
Try server mac hg builder | hg | Macintosh | Build only. |
Try server mac unittest builder | hg | Macintosh | Build and Unittests. |
Try server win32 builder | CVS | Windows | Build only. |
Try server win32 hg builder | hg | Windows | Build only. |
Try server win32 unittest builder | hg | Windows | Build and Unittests. |
WINNT 5.1 talos try trunk | either | Windows | Runs Talos tests on successful builds from either Windows builder. |
Notes on creating patches
- If your patch does not apply cleanly, the build fails.
- Make sure you do a 'cvs update' before 'cvs diff' to ensure your patch will apply cleanly.
- For CVS patches,
- The patch directory is mozilla/. so make sure to create your patches from inside this directory only or else they won't apply.
- For Mercurial patches,
- Any patches created with 'hg diff' or 'hg qdiff' *must* be submitted with a patch level of 1!
- GIT binary patches are not currently supported, so if your patch contains a new binary file, it will not be added, and the build will most likely fail. You have to use the "hg push" approach for these changes.
- The files mozilla/configure and mozilla/nsprpub/configure are deleted (to be regenerated) before your patch is applied. Do not try to patch these files or the patch will fail to apply (patch configure.in instead).
- Only Firefox patches can be tested at this time.
Other Notes
- Finished builds will be deleted after 14 days. Patches are held for 30 days in the event you need a copy.
- If you have any problems please send mail to release@mozilla.org
- Your patch may not be tested right away.
- For the moment, the test is whether current trunk+patch (or HG repos) compiles on all three platforms. It's hoped to add the other tinderbox tests later.
- The default mozconfigs used for tryserver builds are available in Hg: http://hg.mozilla.org/build/buildbot-configs/file/tip/tryserver/
- Uploading an alternate mozconfig appends to the default mozconfigs.
- To pull with a specific timestamp, upload a mozconfig file and set MOZ_CO_DATE.
- Windows builds have symbols uploaded to http://build.mozilla.org/tryserver-symbols. Windbg and the Visual Studio debugger may use them to help debug crashing try server builds. Instructions for setting this up can be found here: http://developer.mozilla.org/en/docs/Using_the_Mozilla_symbol_server. Make sure you use the aforementioned URL instead of http://symbols.mozilla.org/firefox.
- Suggestions for the future can be made here
Unittests on Try
As of March 16, 2009 there is a unittest builder for each platform. The builders only show results on [MozillaTry] tinderbox The unittest build is not uploaded.
To be Documented
- What is a "Patch Level"
- What is a "Custom Identifier String" and for what purpose is it used?