SeaMonkey:Release Process:2.3

From MozillaWiki
Jump to: navigation, search

« SeaMonkey 2.3b2

Build Harness

SeaMonkey:Release Automation

Bugs

Tracking bug filed as bug 678754

Build Engineer

Justin Wood

Signed-off Revisions

releases/comm-release
 5b6c91beb556
releases/mozilla-release
 504b6b4cace0
(SEAMONKEY_2_3_RELBRANCH)
dom-inspector
 DOMI_2_0_10_RELEASE
(DOMI_2_0_10)
chatzilla
 144f0c279a3b
venkman
 5e7659a617fa

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

Notes

  • Have to do the same s/mac/mac64/ work as in SeaMonkey 2.1b2. Will have to look into an easier way for that

Build

  • Made sure all build machines have clean release directories.
    • Manually on windows, jumphost sh relclean.sh
  • Updated patcher-configs for release.
  • Updated build/buildbot-configs 1435caef708e for l10n and configs
  • Updated symlink in build/buildbot-configs 82d192be1535
  • Updated and reconfigured buildmaster
  • Kicked off with the following command:
buildbot sendchange --username=Callek --master=localhost:9010 --branch=releases/comm-beta -c "SeaMonkey 2.3build1" doit
  • Tagging and all builds succeeded normally

Fake tr locale

Not Needed for this build

Signing

  • 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 stage-old.mozilla.org and ran sh ~/mac64tomac.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 stage-old.mozilla.org and ran sh ~/fakesign.sh


Updates and Verification

  • _l10n_verify and updates started automatically, triggered by the fake-signing.
    • L10n verification is mostly useless, since we have new locales, and lots of expected changed strings.

Updates from 2.2 to 2.3

  • Update failed, due to accidentally marking the 2.3 final "previous build" as 2.3b3 instead of 2.2. So updated buildbot-configs b3919cbef91d for that.
  • Reconfigured and updated buildmaster and forced.
  • Update finished ok
  • Verifications finished ok

Updates from beta's to 2.3

  • Following the lead of Firefox6.0 we're manually creating Updates from 2.3beta's and making 2.3b3 a partial update 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/patcher-config-bump.pl \
 -p seamonkey -r SeaMonkey -v 2.3 -a 2.3 -o 2.3b3 -b 1 \
 -c patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg \
 -t stage-old.mozilla.org -f ftp.mozilla.org \
 -d download.mozilla.org -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
# output at: Logs/diff-Beta-patcher2.cfg

cvs -q commit \
  -m "Configuration bump: mozBeta-seamonkey-branch-patcher2.cfg, from 2.3b3 to 2.3 build 1" \
  patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg

perl patcher2.pl --download --app=seamonkey --brand=SeaMonkey \
  --config=patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg
# output at: Logs/download-builds
perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg \
  --app=seamonkey --brand=SeaMonkey \
  --config=patcher-configs/mozBeta-seamonkey-branch-patcher2.cfg
# Output lost due to a few local net drops
find temp/seamonkey/2.3b3-2.3/ftp/seamonkey/nightly/2.3-candidates/build1 \
   -type f -exec chmod 644 '{}' ';'
find temp/seamonkey/2.3b3-2.3/ftp/seamonkey/nightly/2.3-candidates/build1 \
   -type d -exec chmod 755 '{}' ';'
rsync -av -e 'ssh -oIdentityFile=~/.ssh/seabld_dsa' '--exclude=*complete.mar' \
  temp/seamonkey/2.3b3-2.3/ftp/seamonkey/nightly/2.3-candidates/build1/update \
  seabld@stage-old.mozilla.org:/pub/mozilla.org/seamonkey/nightly/2.3-candidates/build1/
rsync -av -e 'ssh -oIdentityFile=~/.ssh/seabld_dsa' \
   temp/seamonkey/2.3b3-2.3/aus2.test/ \
   seabld@aus2-community.mozilla.org:/opt/aus2/snippets/staging/SeaMonkey-2.3-build1-2.3b3-build1-test
rsync -av -e 'ssh -oIdentityFile=~/.ssh/seabld_dsa' \
   temp/seamonkey/2.3b3-2.3/aus2.beta/ \
   seabld@aus2-community.mozilla.org:/opt/aus2/snippets/staging/SeaMonkey-2.3-build1-2.3b3-build1-beta

Push to the betatest channel

# seabld@aus2-community.mozilla.org
cd /opt/aus2/snippets/staging/
~/bin/backupsnip SeaMonkey-2.3-build1-2.3b3-build1-test
~/bin/pushsnip SeaMonkey-2.3-build1-2.3b3-build1-test

Merge with automatically generated snippets:

# seabld@aus2-community.mozilla.org
cd /opt/aus2/snippets/staging/

rsync -avP SeaMonkey-2.3-build1-beta/ SeaMonkey-2.3-build1-with-2.3b3-partials-beta/
rsync -avP SeaMonkey-2.3-build1-2.3b3-build1-beta/ SeaMonkey-2.3-build1-with-2.3b3-partials-beta/

Copy Language Packs

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

Zipcopy

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

Create Checksums

With make-checksums.sh 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.

  • Updated README to point at comm-release rather than comm-beta

Push To Mirrors

Used mirrorpush.sh 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-build1-with-2.3b3-partials-beta

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

~/bin/backupsnip SeaMonkey-2.3-build1-with-2.3b3-partials-beta
~/bin/pushsnip SeaMonkey-2.3-build1-with-2.3b3-partials-beta

WE ARE HERE

Final Verification

Used 'Force Build' to start the final_verification builder;

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-build1

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

~/bin/backupsnip Sea*2.1rc1*build1
~/bin/pushsnip Sea*2.1rc1*build1