SeaMonkey:Release Process:2.35

From MozillaWiki
Jump to: navigation, search

« SeaMonkey 2.35

Build Harness

SeaMonkey:Release Automation

Bugs

Tracking bug filed as bug 1177025.

Build Engineer

  • ewong (mentor: Callek)

Signed-off Revisions

(build1)

releases/comm-release
 e6dcddf50595
SEAMONKEY_2_35_RELEASE_BRANCH
releases/mozilla-esr38
 cf6b17cea869
SEAMONKEY_2_35_RELEASE_BRANCH
dom-inspector
 SEA2_26_RELBRANCH
chatzilla
 SEA2_26_RELBRANCH

(build2)

releases/comm-release
 4c0855a2be32
SEAMONKEY_2_35_RELEASE_BRANCH
releases/mozilla-esr38
 cf6b17cea869
SEAMONKEY_2_35_RELEASE_BRANCH
dom-inspector
 SEAMONKEY_2_35_BUILD1
SEA_COMM3820_20150821_RELBRANCH
chatzilla
 SEA2_26_RELBRANCH

(build3)

releases/comm-release
 b939f5c5904d
SEAMONKEY_2_35_RELEASE_BRANCH
releases/mozilla-esr38
 cf6b17cea869
SEAMONKEY_2_35_RELEASE_BRANCH
dom-inspector
 SEAMONKEY_2_35_BUILD1
SEA_COMM3820_20150821_RELBRANCH
chatzilla
 SEA2_26_RELBRANCH

venkman is no longer included in the release.

L10n revisions according to opt-ins as taken from the sign-off tool (and pushed ship-it).

Notes

WE ARE HERE

Build

  • Made sure all build machines have clean release directories.
    • With clobberer
  • Updated buildbot-configs for l10n and configs
  • Updated and reconfigured buildmaster
  • Kicked off with the following command:
bin/buildbot sendchange --username=ewong --master=localhost:9010 --branch=releases/comm-release -c "SeaMonkey 2.35build1" doit
  • Tagging failed due to not having the proper cset for Inspector.
    • Callek fixed it by doing some cset magic
  • All Builds failed due to not having the proper SOCORRO api token setup.

Build2

bin/buildbot sendchange --username=ewong --master=localhost:9010 --branch=releases/comm-release -c "SeaMonkey 2.35build2" doit
  • Tagging : Ok
  • Builds : failed due to pushing the wrong patch to c-r.

Build3

bin/buildbot sendchange --username=ewong --master=localhost:9010 --branch=releases/comm-release -c "SeaMonkey 2.35build3" doit

Update Version for stage scripts

On stage-old.mozilla.org, modified ~/versions.sh for the current release run.


Signing

  • 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
  • signing good

Send info to metrics

No longer needed to send info to metrics.


Updates and Verification

  • _l10n_verify and updates started automatically, triggered by the fake-signing.
    • L10n verification is mostly useless, since we have lots of expected changed strings.
  • Update failed due to patcher path issues, but with a bit of magic, Callek unhorked it and it went green.
  • Update Verification broke due to path issues in verify.sh. Changed reference paths in verify.sh and the workdir that verify.sh and the command to call verify.sh finally unhorked the verifications (particularly macosx64).

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.


Push build to TrendMicro

I used the TrendMicro provided staging ftp directory to stage 2.15b2 win32 (all locales) for them to scan, and be sure there are no false-positives.

  • Used |viruspush.sh| on stage for this.

E-mailed our TrendMicro contact to let him know of the new version available on their FTP server.

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!

Push website updates Live

[Starting with SeaMonkey 2.35, we have migrated away from CVS, and so the old cvs method no longer works. Here's the new way:]

  1. Clone website (if not done)
  2. cd website
  3. Import patch
    • hg qimport <patch>
  4. Finish patch
    • hg qfinish <patch>
  5. Push patch to website repo

[NO MORE CVS! YAY!]

Push Updates to the beta Channel

Once website updates are live

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

~/bin/backupsnip Sea*2.35-build1
~/bin/pushsnip Sea*2.35-build1

Send Announce

Send the announcement to newsgroups and about-mozilla.