Release Automation on Trunk
General Notes
- Currently (as of November 6, 2007) the Tag step has been modified to work around the lack of a 'shipped-locales' file on trunk. There is a script in /builds/buildbot/staging-trunk-master called 'create_shipped-locales.sh'. It is run during on the Tag Builder right after creating the cvsmirror, and right before running the Bootstrap Tag step.
- CVS on windows requires '-z3' or it will not work correctly. (OR follow the "msys package upgrade" steps below)
- Commented out the SYMBOL_SERVER_* variables in mozilla/tools/tinderbox-configs/firefox/*/tinder-config.pl on the 'release' tag.
- Bootstrap has it's own special cvsmirror in /builds/cvsmirror.bootstrap/cvsroot. master.cfg was updated to reflect this.
- Some msys packages were upgraded on trunk. Here's how to do it:
- Run this script:
#!/bin/sh
files="http://easynews.dl.sourceforge.net/sourceforge/mingw/zlib-1.2.3-MSYS-1.0.11.tar.bz2 http://easynews.dl.sourceforge.net/sourceforge/mingw/openssl-0.9.8e-3-MSYS1.0.11.tar.bz2 http://easynews.dl.sourceforge.net/sourceforge/mingw/openssh-4.6p1-MSYS-1.0.11.tar.bz2 http://easynews.dl.sourceforge.net/sourceforge/mingw/minires-1.01-1-MSYS-1.0.11.tar.bz2"
for file in $files; do
wget $file
done
for file in *.tar.bz2; do
tar -jvxf $file
done
- When that's done, make a backup of your existing msys insntallation, just in case.
- Copy usr/bin/* to your existing msys bin directory. You will have to overwrite some files.
- Make sure all the tinder-config.pl's (release and l10n_release branches) have ReleaseToNightly=0 and ReleaseToDated=1 set.
- Had to install 7z on OS X slave.
- Had to patch mozilla/testing/release/common/unpack.sh with this patch: http://people.mozilla.org/~bhearsum/Build/l10n/unpackBz2Support.diff
- Created a moz-trunk-patcher2.cfg and checked in to local mofo mirror
- Had to add mozilla/.mozconfig and tag with MOZILLA_1_9a8_RELEASE (it is expected that Updates pulls from that static tag)
Problems & Solutions
- 'Tag substep Bump died: None of ^WIN32_MODULE_PRODUCTVERSION_STRING=3.0a9pre$ found in file /builds/tags/FIREFOX_3_0_A9_RC1/cvsroot/mozilla/browser/app/module.ver: at Bootstrap/Step/Tag/Bump.pm line 149.'
- Your cvsmirror is out-of-date. Run the Tag Builder with the cvsmirror steps enabled to resolve this. (double check this)
- Python errors on OS X (cannot import os module, etc)
- configure seems to be finding the wrong version of Python. Worked around by moving /usr/bin/python symlink to point to /tools/python/bin/python
- CVS sometimes hangs on windows
- Wait until cvs appears to be done (usually, cpu usage is 0%), then kill ssh.exe in Task Manager.
- Build fails on an nsinstall of scriptaculous unit tests
- This is caused by bug 396187. Workaround it like this (make sure not to use trailing slashes on the directory names):
ln -s /e/builds/tinderbox/Fx-Mozilla1.9-Release /e/fx19rel
ln -s /e/builds/tinderbox/Fx-Mozilla1.0-l10n-Release /e/fx19l10nrel
- Make sure to change bootstrap.cfg to use these new directories.
- pushDir not found at end of Build
- last-built is not being removed at the start of a new build. remove it manually before doing a Build.
wget -nv --output-document "//builds/tinderbox/Fx-Mozilla1.9-l10n-Release/Linux_2.6.18-8.el5_Depend/firefox.tar.gz" http://staging-trunk-automation.build.mozilla.org/pub/mozilla.org/firefox/nightly/3.0b2-candidates/rc1/firefox-3.0b2.en-US.linux-i686.tar.gz
End: Mon Nov 12 10:41:20 2007
Error: wget failed or timed out.
- wget errors in Repack::Execute(), like above.
- Make sure the HTTP server on staging-trunk-automation is running
- On Linux, this may occur because your tinder-config.pl is hardcoded to look for firefox.tar.gz. This should be updated to firefox.tar.bz2
- 'mar' isn't found when doing partial updates