ReleaseEngineering/TryServer
Try Server
The try server is an easy way to test a patch without actually checking the patch into the core repository. Your code will go through the same tests as a mozilla-central push, and you'll be able to download builds if you wish.
To use try server, you need a Mozilla hg account (level 1 is sufficient).
How to push to try
To choose your tests:
- To your topmost commit message, append a Build:TryChooser piece.
To submit your changes to the try server:
- 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/
orhg push -f ssh://hg.mozilla.org/try/ -e 'ssh -l <username@host>
To see the results:
- You'll get an email from each builder with results.
- Look for your changeset on the Try Tinderbox or Try TBPL (alternate TBPL alternate TBPL). You can add &pusher=YOUR.EMAIL to only see your pushes.
- Compare Talos perf numbers using Pike's talos-node or mconnor's compare-talos.
- Download your completed builds from firefox/tryserver-builds on ftp.m.o.
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.
How to get a talos run
Follow the instructions in https://wiki.mozilla.org/Build:TryChooser .
Talos only runs on opt desktop (non-mobile, non-debug) builds currently.
Using a custom mozconfig
If you want to use setting other than those in the default mozconfigs, you can push an extra file to the $topsrcdir:
- mozconfig-extra with settings to be applied to all mozconfigs
- mozconfig-extra-$platform to apply changes only to that platform's mozconfig, where $platform is one of linux, linux64, win32, macosx, macosx64, android, maemo5-gtk, maemo5-qt
The options you enable/disable in your custom mozconfig are appended to the existing config.
The default mozconfigs used for tryserver builds are available in Hg: http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla2/$platform/tryserver (linux example)
Selecting specific platforms for try push
See Build:TryChooser for details on how to customize your try push in your hg commit comments.
Using a different mobile-browser repository
To use a different mobile-browser repository for the mobile builds, include extra files in your push in the $topsrcdir:
- mobile-repo with a path (relative to http://hg.mozilla.org/) to the repository (e.g., "users/jford_mozilla.com/mobile-browser")
- mobile-rev with a revision in that repository (e.g., "default")
For more details, see Mobile on the new try server
See Publishing Mercurial Clones to learn how to create your own private repository on the server.
How to get non-PGO coverage
Fool the system!
Include this in your patch.
diff --git a/client.mk b/client.mk --- a/client.mk +++ b/client.mk @@ -210,5 +210,5 @@ else endif -profiledbuild:: +Xprofiledbuild:: $(MAKE) -f $(TOPSRCDIR)/client.mk build MOZ_PROFILE_GENERATE=1 $(MAKE) -C $(PGO_OBJDIR) package @@ -352,5 +352,5 @@ endif # Build it -build:: $(OBJDIR)/Makefile $(OBJDIR)/config.status +profiledbuild:: $(OBJDIR)/Makefile $(OBJDIR)/config.status $(MOZ_MAKE)
Server Status
- Try server load can be seen at http://build.mozilla.org/builds/pending/try.html
- Pending builds by revision are at http://build.mozilla.org/builds/pending.html
- In-progress builds by revision are are http://build.mozilla.org/builds/running.html
Other Notes
- Finished builds will be deleted after 10 days.
- Try repo is reset occasionally, and you may not be able to use TBPL to see your test results after it has been reset.
- If you have any problems please file a bug
- 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
Other Mozilla Try Servers
- Thunderbird Try Server for the comm-central repository
- 1.9.2 try is coming soon (bug 563822)