SeaMonkey:Release Process:2.1rc1

From MozillaWiki
Jump to: navigation, search

« SeaMonkey 2.1rc1

Build Harness

SeaMonkey:Release Automation

Bugs

Tracking bug filed as bug 655650

Build Engineer

Justin Wood

Signed-off Revisions

releases/comm-2.0
4c1e17da32ec (Build 2)
a51acdff71f0 (Build 1)
releases/mozilla-2.0
ac9cf29de0d2 (GECKO201_2011041321_RELBRANCH)
dom-inspector
0bb7db177214
chatzilla
210002e2b7e7 (COMM_2_0_BRANCH)
venkmman
65c389ee756c

L10n revisions according to opt-ins as listed in l10n-changesets (taken from the sign-off tool (with some minor changes for pt-PT and nb-NO)

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.
  • Updated l10n-changesets and release-config.py including new file names
  • Updated mozconfigs to have a new update channel
  • Updated and reconfigured buildmaster
    • Had to drop cb-sea-miniosx64-03 due to hung slave, so this could complete.
  • Kicked off with the following command:
buildbot sendchange --username=Callek --master=localhost:9010 --branch=releases/comm-2.0 -c "SeaMonkey 2.1rc1build1" doit
  • All build and all locales succeeded normally

Fake tr locale

In order for bouncer/sentry to see our files, I created fake tr locale files on ftp

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.
    • ran 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 many new locales, and lots of expected changed strings.
  • update completed green
    • the Update verification was red for all platforms, In this case it signaled a bad update run due to b3 being really at b3-real and the code in b3 was from our incorrect issue. (See b3 build notes)
    • Backed out all config changes from the updates run (CVS and Hg).
    • In order to make updates and automation go good, ran the following changes on stage-old in /home/ftp/pub/seamonkey/releases:
mv 2.1b3 2.1b3-bad 
ln -s 2.1b3-real 2.1b3
    • Before all these runs finished, I noticed an issue in our update generation, that it was adding (extension) langpacks for languages that were not @AB_CD@, including multiple langpacks. Triggered memory of bug 649830 and fixed it. Requiring a Build 2.

Build 2

  • Made sure all build machines have clean release directories.
  • KaiRo checked l10n signoffs for any updates, there was one (pt-PT) but it was for the changeset I pushed and built with already
  • Updated and reconfigured buildmaster
  • Kicked off with the following command:
buildbot sendchange --username=Callek --master=localhost:9010 --branch=releases/comm-2.0 -c "SeaMonkey 2.1rc1build1" doit
  • Tagging failed on chatzilla, due to the relbranch I entered in the updated config file not existing, I pushed a re-tag on the new branch rather than change the config and update master, re-kicked with the following command.
buildbot sendchange --username=Callek --master=localhost:9010 --branch=releases/comm-2.0 -c "SeaMonkey 2.1rc1build1" doit
  • All build and all locales succeeded normally

Fake tr locale

In order for bouncer/sentry to see our files, I created fake tr locale files on ftp

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.
    • ran 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 many new locales, and lots of expected changed strings.
  • update completed fine
    • the Update verification was red on all platforms, due to the dropping of 4 locales during b3: `it`, `fi`, `nb-NO`, `sv-SE`. Everything else was fine. This means that b2 and earlier don't currently have updates available for rc1, we decided to move forward with the rc release.

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.

Update the README on FTP

The README file we copy over from 2.1b2 needed a manual Update as the PRETTYNAME with version doesn't get updated by the scripts we use. I also noticed that we still referenced PPC in that, so adjusted as well.

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.

Final Verification

Used 'Force Build' to start the final_verification builder; all tested URLs are HTTP 200 and 302 - ready for going public!

  • With the exception of the dropped locales like above, this is acceptable and will ship anyway.

Linux64 Readme

  • It was pointed out on IRC that the readme in contrib/ for linux64 was actually reading as if this was Alpha 1 (PrettyName) so corrected that (only in releases/)

Push Updates to the beta Channel

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

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

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.