Releases/Firefox 3.6.27/BuildNotes: Difference between revisions

 
(22 intermediate revisions by 3 users not shown)
Line 5: Line 5:
Enter any bugs pre-existing or newly discovered and filed during the release:
Enter any bugs pre-existing or newly discovered and filed during the release:
* {{bug|727740}} - mozconfig comparison assumes in-tree mozconfigs since {{bug|697611}}
* {{bug|727740}} - mozconfig comparison assumes in-tree mozconfigs since {{bug|697611}}
* {{bug|727751}} - xulrunner source failure on 1.9.2


=Build Engineers=
=Build Engineers=
Line 22: Line 23:
|-
|-
| 1
| 1
| GECKO19227_#_RELBRANCH, FIREFOX_3_6_27_BUILD1 FIREFOX_3_6_27_RELEASE  
| GECKO19227_2012021601_RELBRANCH, FIREFOX_3_6_27_BUILD1 FIREFOX_3_6_27_RELEASE  
| [http://hg.mozilla.org/releases/mozilla-1.9.2/rev/# #]
| [http://hg.mozilla.org/releases/mozilla-1.9.2/rev/73ffd608342e 73ffd608342e]
|}
|}


Line 37: Line 38:
| rowspan="4" | 1  
| rowspan="4" | 1  
| Linux
| Linux
| rowspan="4" |  
| rowspan="4" | 20120216013254
|  
| mv-moz2-linux-ix-slave05
|
| 37 mins, 31 secs
|-
| Linux64
|
|
|-
|-
| Mac
| Mac
|  
| bm-xserve16
|  
| 1 hrs, 46 mins, 55 secs
|-
|-
| Windows  
| Windows  
|  
| mw32-ix-slave09
|  
| 1 hrs, 48 mins, 34 secs
|}
|}


Line 82: Line 79:
  Firefox,firefox,firefox,3.6.27,3.6
  Firefox,firefox,firefox,3.6.27,3.6
  Firefox,firefox,firefox,3.6.28pre,3.6
  Firefox,firefox,firefox,3.6.28pre,3.6
<font color="red">'''DONE TO HERE'''</font>


=== E-mail mirrors@mozilla.org ===
=== E-mail mirrors@mozilla.org ===
Not necessary for rapid release betas, files only go as far as the 'internal mirrors'.
Combined message with 10.0.2 sent.
 
Coordinate yourself with the person creating the ESR and the latest release which normally go out at the same time.
 
They want to know approximately what time push to external mirrors will occur.  Ideally this is a 24hr notice to them, with the estimated time.
<pre>
Subject: Firefox {VERSION1} [and {VERSION2}] coming to mirrors on {DATE}
Body:
We're planning on pushing our Firefox {VERSION1} [and {VERSION2}] release(s) to mirrors 24 hours before {DATE}.
# If this is a chemspill, please mention that in the email as it will mean pinging
# for CDN to be enabled when the push to internal mirrors happens
 
If you believe these releases or these dates will cause any problems,
please notify release at mozilla.com. If you have any problems with mirror
status/weights/etc, please notify mirror-submissions at mozilla.org.
</pre>


=== Tag ===
=== Tag ===
No problems


=== Bouncer Submitter ===
=== Bouncer Submitter ===
 
No problems


=== Source ===
=== Source ===
No problems


=== Start autosign ===
<pre>PRODUCT=firefox
VERSION=3.6.27
BUILD=1
TAG=FIREFOX_3_6_27_RELEASE
REPO='releases/mozilla-1.9.2'
EMAIL=release@mozilla.com
KEYDIR=d:/2011-keys
RELCONFIG=mozilla/release-firefox-mozilla-1.9.2.py


=== Start autosign ===
cd ${HOME}/hg-tools/ # if it exists, otherwise create a fresh clone
NOTE: use new signcode keys from d:/2011-keys
hg pull && hg up -r ${TAG}


Instructions are in [https://intranet.mozilla.org/Build:CombinedSigning CombinedSigning]
mkdir -p ~/signing-work/${PRODUCT}-${VERSION}/lib/python
cd ~/signing-work/${PRODUCT}-${VERSION}
cp ~/hg-tools/release/signing/* .
rsync -av ~/hg-tools/lib/python/ ./lib/python/
make autosign PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} RELCONFIG=${RELCONFIG}
</pre>


=== Build ===
=== Build ===
==== Firefox ====
==== Firefox ====
No problems


===== Firefox repacks =====
===== Firefox repacks =====
No problems


==== Fennec ====
==== Fennec ====
 
N/A
===== Fennec repacks =====


=== Unittests / Talos ===
=== Unittests / Talos ===
Line 133: Line 130:


====Source====
====Source====
Failed
mv mozilla-1.9.2/obj-firefox/dist/source/xulrunner-3.6.27.source.tar.bz2 source/xulrunner-3.6.27.source.tar.bz2
mv: cannot stat `mozilla-1.9.2/obj-firefox/dist/source/xulrunner-3.6.27.source.tar.bz2': No such file or directory
Filed {{bug|727751}}.
Manual fix:
# cltbld@moz2-linux-slave36
cd /builds/slave/rel-m-192-xr-source/
mv mozilla-1.9.2/obj-firefox/dist/source/xulrunner-1.9.2.27.source.tar.bz2 source/xulrunner-3.6.27.source.tar.bz2
export POST_UPLOAD_CMD='post_upload.py -p xulrunner -v 3.6.27 -n 1 -c'
export UPLOAD_HOST=stage.mozilla.org
export UPLOAD_SSH_KEY=~/.ssh/xrbld_dsa
export UPLOAD_TO_TEMP=1
export UPLOAD_USER=xrbld
python /builds/slave/rel-m-192-xr-source/tools/buildfarm/utils/retry.py -s 1 -r 5 -t 1260 python mozilla-1.9.2/build/upload.py --base-path . source/xulrunner-3.6.27.bundle source/xulrunner-3.6.27.source.tar.bz2


====Build====
====Build====
No problems


====Signing====
====Signing====
NOTE: use new signcode keys from d:/2011-keys and QUIT SIGNCODE when you're done with keymaster
Updated sign_xulrunner.sh and ran it.
 
Follow instructions in [https://intranet.mozilla.org/Build:CombinedSigning#XULRunner_Signing XULRunner Signing] (aut required).


=== Partner Repack ===
=== Partner Repack ===
==== Firefox ====
N/A
==== Fennec ====
 
=== Firefox Signing ===
=== Firefox Signing ===
 
No problems


=== Android Signing ===
=== Android Signing ===
Instructions in [https://intranet.mozilla.org/Build:MobileSigning MobileSigning]
N/A
 
Now run on signing1.
==== Android Signature Verification ====


=== L10N verify ===
=== L10N verify ===
No problems


=== Updates ===
Worked fine, except that backupsnip was going to time out again, so I killed it and did the rest by hand. I skipped the backupsnip to save us some load. Ran the following to finish things up:
# cltbld@aus2-staging
cd /opt/aus2/snippets/staging
~/bin/pushsnip Firefox-3.6.27-build1-test


=== Checksums ===
# cltbld@mv-moz2-linux-ix-slave02
cd /builds/slave/rel-m-192-updates/build/temp/firefox/3.6.26-3.6.27
rsync -av -e 'ssh -oIdentityFile=~/.ssh/cltbld_dsa' aus2.beta/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/Firefox-3.6.27-build1-beta
rsync -av -e 'ssh -oIdentityFile=~/.ssh/cltbld_dsa' aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/Firefox-3.6.27-build1


=== Updates ===
After the pushsnip completed I forced the update verify builders and check permissions builder. I didn't do the virus scan right away because surf was already starting to get bogged down a bit. See virus scan section for details on it.


==== Update verify ====
==== Update verify ====
All green.


=== Major Update ===
=== Major Update ===
Major update generation is not kicked off automatically. You should only create them once the final builds for the "latest" build are ready.
Used "Force Build" to start the builder.
For instance, the 3.6.26 builds got created a week before the 10.0 release but the "final" 10.0 builds were not created after few days.
 
Follow instructions from the [[Release:Release_Automation_on_Mercurial:Documentation#Major_Update_.28Firefox_only.29|Major update]] documentation.


==== Major Update verify ====
==== Major Update verify ====
All green.


=== Reset reserved slaves ===
=== Reset reserved slaves ===
This is also a good time to QUIT SIGNCODE on keymaster if you've still got it running.
Reset to 0


=== Check permissions / AV scan ===
=== Check permissions / AV scan ===
It is supposed to be triggered automatically after updates are done.
No permissions problems, no viruses. Virus scan was done on an ix machine, roughly like this:
File a bug if it doesn't.
* Installed clamav and clamav-db
* rsynced files from keymaster01
* Ran the following:
# root
rpm -i clamav*.rpm
freshclam
su - cltbld
hg clone http://hg.mozilla.org/build/tools
python tools/stage/extract_and_run_command.py -j4 clamscan -- 3.6.27/ &> scan.log


=== Going to Beta ===
=== Push files to internal mirrors ===
==== Run backupsnip ====
* Updated exclude file with "- firefox/releases/3.6.27" line.
NOTE: Remember to do this at least an hour ahead of the expected "go to beta" email.
* Used "Force Build" to start push to mirrors builder.


==== Push to beta ====
Hit {{bug|728472}}.  Copied asc files back in via:
 
rsync -av --dry-run --ignore-existing --exclude=*tests* --exclude=*crashreporter* --exclude=*.log --exclude=*.txt --exclude=*unsigned* --exclude=*update-backup* --exclude=*partner-repacks* --exclude=*.checksums --exclude=logs --exclude=jsshell* /pub/mozilla.org/firefox/nightly/3.6.27-candidates/build1/ /pub/mozilla.org/firefox/releases/3.6.27/
=== Before Release Day ===
rsync -av --ignore-existing --exclude=*tests* --exclude=*crashreporter* --exclude=*.log --exclude=*.txt --exclude=*unsigned* --exclude=*update-backup* --exclude=*partner-repacks* --exclude=*.checksums --exclude=logs --exclude=jsshell* /pub/mozilla.org/firefox/nightly/3.6.27-candidates/build1/ /pub/mozilla.org/firefox/releases/3.6.27/
Assuming this is not a chemspill.
 
==== Run backupsnip for release snippets ====
Do this the night before release day as it can take up to two hours.
 
==== Push files to internal mirrors ====
Done the day before release OR ASAP for chemspills:
[https://intranet.mozilla.org/ReleaseEngineering/Release/Primer#Mirrors_.28internal_.26_external.29 Mirrors Policy]


=== Final verification ===
=== Final verification ===


=== Push index file to mirrors ===
=== Run backupsnip ===
~/bin/backupsnip Firefox-3.6.27-build1


=== Push to external mirrors ===
=== Push to external mirrors ===
if this is a chemspill you will want to ping justdave (or other sysadmin) in #release-drivers
* Remove "- firefox/releases/3.6.27" line from mozilla-releases rsync file
and ask them to enable CDN
* Update rsyncd-mozilla-current.exclude from 3.6.26 to 3.6.27


=== Release Day ===
=== Push release & beta snippets ===
==== Publish Fennec to the Android Market ====
~/bin/pushsnip Firefox-3.6.27-build1
=====Push the files=====
~/bin/pushsnip Firefox-3.6.27-build1-beta
* Use [http://hg.mozilla.org/build/braindump/file/tip/releases-related/push_fennec.sh this script] and run it as ffxbld@stage (please push you changes prior to using it)


=====Android Market=====
=== Update symlinks ===
'''IMPORTANT -''' Make sure to follow instructions!
# ffxbld@stage
* download multi apk (e.g. [http://ftp.mozilla.org/pub/mozilla.org/mobile/candidates/10.0b6-candidates/build1/android/multi/fennec-10.0b6.multi.android-arm.apk multi/fennec-10.0b6.multi.android-arm.apk])
cd /pub/mozilla.org/firefox/releases
* visit https://market.android.com/publish
rm latest-3.6 && ln -s 3.6.27 latest-3.6
* choose "Firefox Beta" or "Firefox"
* select the "APK Files" tab and choose "Upload APK"
** choose the multi apk that you downloaded and hit "upload"
*** NOTE: the progress bar does not seem to show progress (at least on Google Chrome)
** when it finishes uploading, verify VersionCode is the build date (almost anyway, the market reports an hour later than our buildID)
** hit "Save"
* activate new apk (You should see an Error message since both apk's are active)
* deactivate old apk (You should not see the Error message anymore)
* hit "Save"
* If this is a beta 1, go to "Product Details" tab -> Recent Changes, change the url to  http://www.mozilla.com/en-US/mobile/{VERSION}beta/releasenotes/
** and hit "Save"


====Push XULRunner to Mirrors ====
===Push XULRunner to Mirrors ===
<pre>
rsync -av --exclude=*.txt --exclude=*unsigned* --exclude=*-symbols.zip /pub/mozilla.org/xulrunner/nightly/3.6.27-candidates/build1/ /pub/mozilla.org/xulrunner/releases/3.6.27/
</pre>


==== Update XULRunner wiki page ====
=== Update XULRunner wiki page ===
For major releases or chemspills, update the links on:
Updated the links on these pages:
* https://developer.mozilla.org/en/XULRunner
* https://developer.mozilla.org/en/Gecko_SDK
* https://developer.mozilla.org/en/Gecko_SDK


Also for older releases:
=== Push 3.6.27 -> 10.0.2 release channel MU ===
* https://developer.mozilla.org/en/XULRunner_1.9.2_Release_Notes
* https://developer.mozilla.org/en/Gecko_SDK
 
==== Push to Release Channel ====
Once there is enough uptake and we get "go" from release driver.
 
==== Update symlinks ====
Once we're signed off on the release channel.
===== Remove index.html files =====
If you created them earlier to hide the release.


==== Update browser choice website ====
cd /opt/aus2/snippets/staging
# no backupsnip per bhearsum
~/bin/pushsnip Firefox-3.6.27-build1-10.0.2-build1-MU
Confirmed users
4,293

edits