Releases/Firefox 3.6b4/BuildNotes: Difference between revisions

 
(24 intermediate revisions by 2 users not shown)
Line 116: Line 116:
====Generate updates and push betatest snippets====
====Generate updates and push betatest snippets====
* slave: moz2-linux-slave01
* slave: moz2-linux-slave01
''As well as the automated updates we'll need to connect 3.6b1 to b4 for af bg da, similar to what we did [[Releases/Firefox_3.6b3/BuildNotes#Fill_in_b1_locales | last time]].''
As well as the automated updates we'll need to connect 3.6b1 to b4 for af bg da, similar to what we did [[Releases/Firefox_3.6b3/BuildNotes#Fill_in_b1_locales | last time]].


=====Fill in b1 locales=====
=====Fill in b1 locales=====
* slave: moz2-linux-slave01
* slave: moz2-linux-slave01


Needed to generate b1 -> b3 for 3.6b1 af bg da. Ran steps manually with [https://bug530112.bugzilla.mozilla.org/attachment.cgi?id=414502 this patcher config]  
Needed to generate b1 -> b4 for 3.6b1 af bg da. Ran steps manually with [https://bug530112.bugzilla.mozilla.org/attachment.cgi?id=414502 this patcher config]  


Moved the original run out of the way:
Moved the original run out of the way:
Line 155: Line 155:
  # Didn't run backupsnip because the automation one was running at the time
  # Didn't run backupsnip because the automation one was running at the time
  ~/bin/pushsnip 20091125-Firefox-3.6b1-3.6b4-locales-test/
  ~/bin/pushsnip 20091125-Firefox-3.6b1-3.6b4-locales-test/
===== Generate 3.6b3 -> b4 for WinCE =====
* slave: moz2-linux-slave01 (same slave as the automated run)
# move the previous run aside
cd /builds/slave/updates/build
mv temp temp.b1
cd patcher-configs
wget -Omoz192-branch-patcher2.cfg https://bug530112.bugzilla.mozilla.org/attachment.cgi?id=414504
cd /builds/slave/updates/build
perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg
perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg
find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type f -exec chmod 644 {} \;
find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type d -exec chmod 755 {} \;
cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1
rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' --exclude=*complete.mar update ffxbld@stage.mozilla.org:/pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/
cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4
rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-WinCE
rsync -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-WinCE-test
# cltbld@aus2-staging
# backupsnip in automation was still running, didn't do one
~/bin/pushsnip 20091125-Firefox-3.6b4-WinCE-test


====Update verify====
====Update verify====
* All platforms' partials had differences in removed-files caused by packaging fixes landed for the 3.5 -> 3.6 MU, {{bug|515421}}. They are not a real issue. Eg linux
diff -r source/firefox/removed-files target/firefox/removed-files
500a501,502
> res/broken-image.gif
> res/loading-image.gif
533a536,537
> icons/mozicon16.xpm
> icons/mozicon50.xpm
537a542
> old-homepage-default.properties
* All platforms: 3.6b1 ka failed because we still don't have that locale back
* Linux: No real problems.
* Mac: got an error checking b2 fr where complete mars were 0-byte, which I assumed was because the files got removed while they were respun. Lead to the discovery that we need to generate b1 and b2 snippets for fr (see below)
* Win32: Three chk file differences as normal
==== Respin of fr ====
A problem was discovered with the fr build, so we've got to respin it.
===== clean up the slaves =====
Because we can't predict which slave it will happen on we have to clean up all of the l10n dirs on the slaves.
* Linux: 01,02,05-10
* Mac: moz2-darwin9-slave02,05,06,07,09,10,bm-xserve07,09
* Win32: win32-slave01,02,05-10
===== force the build =====
Used the web interface to force the fr build for each platform with the following properties:
* en_revision = FIREFOX_3_6b4_RELEASE
* l10n_revision = FIREFOX_3_6b4_RELEASE
* locale = fr
builds went fine, uploads failed with ('''FIXME'''):
Traceback (most recent call last):
  File "/usr/bin/post_upload.py", line 262, in ?
    func(options, upload_dir, files)
  File "/usr/bin/post_upload.py", line 156, in ReleaseToCandidatesDir
    os.chmod(os.path.join(root, d), 0755)
OSError: [Errno 1] Operation not permitted: '/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/contrib/solaris_pkgadd'
Encountered error while uploading
Command ['ssh', '-o', 'IdentityFile=~/.ssh/ffxbld_dsa', 'ffxbld@stage.mozilla.org', 'post_upload.py -p firefox -v 3.6b4 -n 1 --release-to-candidates-dir "/tmp/tmp.IqJdUJ9377/" "/tmp/tmp.IqJdUJ9377/linux-i686/fr/firefox-3.6b4.tar.bz2" "/tmp/tmp.IqJdUJ9377/linux-i686/xpi/fr.xpi"'] returned non-zero exit code: 1
make: *** [l10n-upload-fr] Error 2
Had to finish the upload with:
cd /builds/slave/linux_repack/build/mozilla-1.9.2/dist/update/linux-i686
rsync -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' -av fr ffxbld@stage.mozilla.org:/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/update/linux-i686/
...and equivalent commands for the other platforms. Had to upload the win32 installer, too.
===== signing =====
* Done mostly manually:
* Only pulled win32 en-US (build1) and linux/mac/win32 zh-CN (build2), MD5SUMS, SHA1SUMS into unsigned-build2:
PRODUCT=firefox
VERSION=3.6b4
BUILD=1
TAG=FIREFOX_3_6b4_RELEASE
REPO='releases/mozilla-1.9.2'
EMAIL=bhearsum@mozilla.com
KEYDIR=d:/2009-keys
mkdir ~/signing-work/${PRODUCT}-${VERSION}-fr2
cd ~/signing-work/${PRODUCT}-${VERSION}-fr2
cp ~/hg-tools/release/signing/* .
make setup PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} USE_NEW=1
rsync -av -e ssh --include=*SUMS --include=xpi --include=linux-i686/ --include=mac/ --include=unsigned/ --include=*irefox* --include=win32  --include=*fr* --include=update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build${BUILD}/ unsigned-build${BUILD}
  rsync -av -e ssh --include=unsigned/ --include=*irefox* --include=win32  --include=*en-US* --include=update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build1/ unsigned-build${BUILD}
rsync -av -e ssh --exclude=*partial* --exclude=*asc --include=win32 --include=*irefox* --include=*en-US* --include update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build1/ signed-build${BUILD}
  make stubs PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} USE_NEW=1
./sign-release.py -p --keydir ${KEYDIR} -j1 --product firefox -o signed-build${BUILD} unsigned-build${BUILD} >> win32_signing_build${BUILD}.log 2>&1
rsync -av --include=*.mar --include=update --include=*SUMS --include=*dmg --include=*.tar.bz2 --include=*xpi* --include=*fr* --include=*linux* --include=*mac* --exclude=* unsigned-build1/ signed-build1/
rsync -av ./unsigned-build${BUILD}/unsigned/win32/xpi ./signed-build${BUILD}/win32
# manually updated the SUMS files with new md5/sha1 sums
cd signed-build1
../signing/sign-files .
rm win32/en-US/*.asc
cd ../
# push builds back
rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' signed-build1/ ffxbld@stage.mozilla.org:/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/
===== updates =====
* done on moz2-linux-slave01
* used [https://bug530112.bugzilla.mozilla.org/attachment.cgi?id=414532this patcher config]
cd /builds/slave/updates/build
perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg
perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg
find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type f -exec chmod 644 {} \;
find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type d -exec chmod 755 {} \;
cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1
rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' --exclude=*complete.mar update ffxbld@stage.mozilla.org:/pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/
cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4
rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin
rsync -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin-test
# cltbld @ aus2-staging
cd /opt/aus2/snippets/staging
~/bin/pushsnip 20091125-Firefox-3.6b4-fr-respin-test
This only regenerated the snippets for b3 and we also need to do b1 and b2 (because the complete mar hash changed). Redo using [https://bugzilla.mozilla.org/attachment.cgi?id=414576 this config]
# cltbld@moz2-linux-slave01
cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4
mkdir old-aus
mv aus2 old-aus
cd ../../..
perl patcher2.pl --create-patchinfo --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg
cd temp/firefox/3.6b3-3.6b4/
diff -rq {old-aus/,}aus2.test
  Only in aus2.test/Firefox: 3.6b1
  Only in aus2.test/Firefox: 3.6b2
diff -rq {old-aus/,}aus2
  Only in aus2/Firefox: 3.6b1
  Only in aus2/Firefox: 3.6b2
rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin-2
rsync -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin-2-test
# cltbld @ aus2-staging
  ~/bin/pushsnip 20091125-Firefox-3.6b4-fr-respin-2-test


====Update Bouncer====
====Update Bouncer====
Added the usual 3 products and 9 file locations, plus the three locations for WinCE.
Added Firefox-3.6b4-Partial-3.6b1 product & 3 file locations for straggler locales. Sentry is looking for en-US copies of these files, so fake this out with zero byte files
# ffxbld@stage
touch /pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/update/{linux-i686,mac,win32}/en-US/firefox-3.6b1-3.6b4.partial.mar


====Final checks before push====
====Final checks before push====
cd /pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/
find . ! -user ffxbld
find . ! -group firefox
find . -type f ! -perm 644
find . -mindepth 1 -type d ! -perm 755 ! -name 'contrib*'
find . -maxdepth 1 -type d ! -perm 2775  -name 'contrib*'
Only returns Solaris builds (different user) for the user check. Had to fix the mode on the respun fr mar files and 2775 mode on the contrib dirs.


====Push to mirrors====
====Push to mirrors====
# ffxbld@stage
rsync -av --exclude=*.log --exclude=*.txt --exclude=*unsigned* --exclude=*.crashreporter-symbols.zip /pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/ /pub/mozilla.org/firefox/releases/3.6b4/
Removed 3.6b3 from /pub/mozilla.org/zz/rsyncd-mozilla-current.exclude as we don't need lots of mirror coverage and the biggest mirror syncs very quickly from the mozilla-releases module.
====Final Verification====
====Final Verification====
* slave: moz2-linux-slave13
* fails to find updates for 3.6b1 ka, as expected


====Push updates to release channel====
====Push updates to release channel====
Well ahead of time
time ~/bin/backupsnip 20091124-Firefox-3.6b4
real    61m52.014s
user    0m55.967s
sys    1m39.784s
~/bin/pushsnip 20091124-Firefox-3.6b4
~/bin/pushsnip 20091125-Firefox-3.6b4-fr-respin-2
~/bin/pushsnip 20091125-Firefox-3.6b1-3.6b4-locales
This part happened the following monday.
~/bin/pushsnip 20091125-Firefox-3.6b4-WinCE


====Release====
====Release====
No symlink until final


====XULRunner build====
====XULRunner build====
Builds are forced manually, using revision of FIREFOX_3_6b4_RELEASE, name and reason.
When they complete
# xrbld@stage
cd /pub/mozilla.org/xulrunner/nightly/
mkdir -p 1.9.2b4-candidates/build1/
mv -v latest-mozilla-1.9.2/*-1.9.2b4.* 1.9.2b4-candidates/build1/
Contacted mfinkle and dtownsend for smoketest QA.
''Staging and push to mirrors pending.''
canmove, Confirmed users
6,441

edits