SeaMonkey:Release Process:2.3.2

From MozillaWiki
Jump to: navigation, search

« SeaMonkey 2.3.2

Build Harness

SeaMonkey:Release Automation


Tracking bug filed as bug 682981

Build Engineer

Justin Wood

Signed-off Revisions


L10n revisions to be based on what was shipped in SeaMonkey 2.3b3. Copied the revisions over to the release config.


  • Have to do the same s/mac/mac64/ work as in SeaMonkey 2.1b2. Will have to look into an easier way for that
  • Enabled the version bumping for this release, as we'll be 2.3.1


  • Made sure all build machines have clean release directories.
    • Manually on windows, jumphost sh
  • Updated build/buildbot-configs for configs
  • Updated and reconfigured buildmaster
  • Kicked off with the following command:
buildbot sendchange --username=Callek --master=localhost:9010 --branch=releases/comm-release -c "SeaMonkey 2.3.1build1" doit
  • Tagging (Run 1) failed due to COMM* relbranch already existing, TB tagged same day, updated configs and kicked again.
  • Tagging (Run 2), due to version bump for SeaMonkey already existing. Removed version from config file, kicked again.
  • Tagging (Run 3) failed due to not removing previous release runs, ran and ran again
  • Tagging (Run 4) failed due to run 2 completing the branching for cZ (and inspector) already. Updated config to comment out cZ/inspector repo's from the "to tag" stuff.
  • Tagging (Run 5) succeeded.
  • Mac OSX64 Build failed due to builder not checking out inspector/cZ due to tagging removal above, but mozconfig still having it.
    • Canceled all pending builds, and stopped source creation, updated configs again, and kicked with a dummy tag factory.
  • Noticed that since the version bump failed in Tagging Run 2, I never actually updated the rev-to-tag for comm-release, so manually moved our tag (but accidentally created the tag on default not the relbranch -- this is ok). Also noticed that I did not clobber since that mac64 fail, so killed all pending jobs (linux build, linux source, mac build) ran and then kicked again with dummy tag factory.
  • Builds completed fine
  • Repacks, had linux nb-NO fail due to a (temp) upload failure. Manually re-ran through web interface, and setting our three properties via that.

Fake tr locale

Not Needed for this build


  • Our mac builds (non en-US) uploaded to mac64/ so I had to move them over to mac/ on stage, for both updates and builds.
    • Logged onto and ran sh ~/
    • which moves all mac64 files/directories to mac, and removes the mac64 dir.
  • We have no signing infrastructure for SeaMonkey right now, so I faked the signing step that is usually done after completion of builds and L10n repacks and before the update generation.
  • Logged onto and ran sh ~/

Updates and Verification

  • _l10n_verify and updates started automatically, triggered by the fake-signing.
    • All good, no string changes.

Updates on release channel to 2.3.2

  • Update finished ok
  • Verifications finished ok

Updates from beta's to 2.3.2

  • Following the lead of Firefox6.0 we're manually creating Updates from 2.3beta's as well.

Used cb-seamonkey-linux-01 which generated the updates

cd /builds/slave/rel*updates/build
# Bump mozBeta-seamonkey-branch-patcher2.cfg, no -u needed
PERL5LIB=../tools/lib/perl perl ../tools/release/ \
 -p seamonkey -r SeaMonkey -v 2.3.2 -a 2.3.2 -o 2.3.1 -b 1 \
 -c patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg \
 -t -f \
 -d -l shipped-locales --platform linux \
 --platform macosx64 --platform win32 --marname seamonkey \
 --oldmarname seamonkey

# Sanity check  
cvs -q diff -u patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg

cvs -q commit \
  -m "Configuration bump: mozBeta-seamonkey-branch-patcher2.cfg, from 2.3.1 to 2.3.2 build 1" \

# Patch Info Only since 2.3.1->2.3.2 release
#   automation created partials already.
# Since previous run was never removed, this auto-combines for beta.
perl --create-patchinfo --partial-patchlist-file=patchlist.cfg \
  --app=seamonkey --brand=SeaMonkey \

find temp/seamonkey/2.3-2.3.1/ftp/seamonkey/nightly/2.3.1-candidates/build1 \
   -type f -exec chmod 644 '{}' ';'
find temp/seamonkey/2.3-2.3.1/ftp/seamonkey/nightly/2.3.1-candidates/build1 \
   -type d -exec chmod 755 '{}' ';'

rsync -av -e 'ssh -oIdentityFile=~/.ssh/seabld_dsa' \
   temp/seamonkey/2.3.1-2.3.2/aus2.test/ \
rsync -av -e 'ssh -oIdentityFile=~/.ssh/seabld_dsa' \
   temp/seamonkey/2.3.1-2.3.2/aus2.beta/ \

Push to the betatest channel

cd /opt/aus2/snippets/staging/
~/bin/backupsnip SeaMonkey-2.3.2-build1-combined-test
~/bin/pushsnip SeaMonkey-2.3.2-build1-combined-test

Copy Language Packs

Used as documented in 2.0b1 notes to move the langpacks into the directory we want them in for release.


Used as documented in 2.0b1 notes to move the Windows zips into the directory we want them in for release.

Create Checksums

With as documented in 2.0.3 notes, created MD5SUMS and SHA1SUMS files containing all files we release - copying the README from last time and replacing the versions as needed, as well as doing the same for Linux x86_64.

Push To Mirrors

Used as documented in 2.0.3 notes to finally push the files to the public dir for mirrors to pick them up.

Push Updates to the beta Channel

Note use: SeaMonkey-2.3.1-build1-with-beta

On aus |/opt/aus2/snippets/staging/|:

~/bin/backupsnip SeaMonkey-2.3.2-build1-combined-beta
~/bin/pushsnip SeaMonkey-2.3.2-build1-combined-beta

Final Verification

Used 'Force Build' to start the final_verification builder; TODO

all tested URLs are HTTP 200 and 302 - ready for going public!

(One failed, but manual test of that mirror url was fine)

Push build to TrendMicro

I used the TrendMicro provided staging ftp directory to stage 2.1rc1 en-us win32 for them to scan, and be sure there are no false-positives.

Push Updates to the release Channel

Note use SeaMonkey-2.3.2-build1

On aus |/opt/aus2/snippets/staging/|:

~/bin/backupsnip SeaMonkey-2.3.2-build1
~/bin/pushsnip SeaMonkey-2.3.2-build1


  • Send announcement to mailing lists/newsgroups
  • Post announcement on SeaMonkey Blog