Thunderbird/Infrastructure/TryServer: Difference between revisions

Jump to navigation Jump to search
Major rework for new try v1
(Major rework for new try v1)
Line 1: Line 1:
'''THIS IS OUTDATED'''
= Thunderbird 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 a subset of the Thunderbird tests it would if it was pushed into comm-central.


== Where to find Things ==
To use try server, you need a [http://www.mozilla.org/hacking/committer/ Mozilla hg account] ([http://www.mozilla.org/hacking/commit-access-policy/ level 1] is sufficient).
* [https://wiki.mozilla.org/Build:TryServerAsBranch Firefox Try Server]
* [http://tinderbox.mozilla.org/showbuilds.cgi?tree=ThunderbirdTry Watch results]


== Doing a debug build ==
Note: With additional mozconfig changes it may be possible to build other projects, but the test runs may fail on those projects due to the way the try server configuration works (and the lack of project detection).


* Create a special mozconfig file with the following options in:
== How to push to try ==
To submit a change to the try server:
* For changes to comm-central or close enough (e.g. tracemonkey branch), you can <code>hg push -f ssh://hg.mozilla.org/try-comm-central/</code> <br/>''or''<br/><code>hg push -f ssh://&lt;username@host&gt;@hg.mozilla.org/try/</code><br/>''or''<br/><code>hg push -f ssh://hg.mozilla.org/try-comm-central/ -e 'ssh -l &lt;username@host&gt;</code>


ac_add_options --enable-debug
To see the results:
ac_add_options --disable-optimize
* You'll get an email from each builder with results.
* Look for your changeset on the [http://tinderbox.mozilla.org/showbuilds.cgi?tree=ThunderbirdTry Try Tinderbox] or [http://build.mozillamessaging.com/tinderboxpushlog/ Thunderbird Try TBPL].
* Download your completed builds from [http://ftp.mozilla.org/pub/mozilla.org/thunderbird/tryserver-builds/?C=M;O=D thunderbird/tryserver-builds on ftp.m.o].


* Provide the file in the <code>Alternate mozconfig</code> field when submitting the patch.
If you're using [https://developer.mozilla.org/en/Mercurial_Queues Mercurial queues], the <code>push -f</code> command pushes any patches that are currently applied, and the Try server will build the result. (This is an awesome feature, not a bug!)


This will then override the try server's default settings (which are for no debug, optimised builds)
You don’t need to clone or pull from the <code>try</code> repo, and you probably don’t want to. You’d get every half-baked changeset anybody ever tested.


== TroubleShooting ==
See [http://blog.mozilla.com/jorendorff/2008/08/18/push-to-try/ Jorendorff's blog] for more details.
=== (MozBuild) Unable to load config info from /usr/local/ssl/openssl.cnf ===
 
The openssl you are using seems to be from the svn tool included with MozBuild.<BR /> '''SOLUTION''': Use <code>/bin/openssl</code> instead.
== 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, maemo4, 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/ http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla2/]$platform/tryserver ([http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla2/linux/tryserver linux example])
 
=== Disabling specific platforms for try push ===
You can put '''exit 1''' in any mozconfig-extra-$platform in order to cause it to not compile.  This is a temporary workaround while we get the web interface back up and with more granularity for selecting the build/test/perf runs desired for a particular try push.
 
== Other Notes ==
* Finished builds will be deleted after '''30 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 [https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=Try%20Server&product=Mozilla%20Messaging 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/thunderbird.
 
== Other Mozilla Try Servers ==
* [https://wiki.mozilla.org/Build:TryServerAsBranch Firefox Try Server] for the mozilla-central repository
canmove, Confirmed users, Bureaucrats and Sysops emeriti
3,628

edits

Navigation menu