|
|
| (67 intermediate revisions by 9 users not shown) |
| Line 1: |
Line 1: |
| =Notes About Releasing=
| | #REDIRECT [[Releases/RelEngChecklist]] |
| Please update the [https://wiki.mozilla.org/index.php?title=Releases/BuildNotesTemplate Notes Template] and the [https://intranet.mozilla.org/Build:Release:Primer Release:Primer] for future releases (bug fixes, changes to automation) as needed
| |
|
| |
|
| = Bugs hit =
| | The template has been killed in favour of the Checklist. |
| Enter any bugs pre-existing or newly discovered and filed during the release:
| |
| * {{bug|}} - description
| |
| *
| |
| | |
| =Build Engineers=
| |
| {name} - Tracking bug: {{bug|#}}
| |
| | |
| =Signed-off Revision(s)=
| |
| Build 1: [http://hg.mozilla.org/releases/mozilla-beta/rev/# #]
| |
| | |
| =L10N changesets=
| |
| [https://wiki.mozilla.org/Release:Release_Automation_on_Mercurial:Documentation#L10N_Changesets Instructions] on how to get them
| |
| * Firefox: link to the l10n-changesets
| |
| * Fennec: link to the json
| |
| | |
| =Tags=
| |
| {| class="fullwidth-table"
| |
| | style="background:#efefef" | '''Build #'''
| |
| | style="background:#efefef" | '''Branch, Tags'''
| |
| | style="background:#efefef" | '''Changeset'''
| |
| |-
| |
| | rowspan="2" |
| |
| | MOBILE80_#_RELBRANCH, FENNEC_VERSION_RELEASE, FENNEC_VERSION_BUILD1
| |
| | [http://hg.mozilla.org/releases/mozilla-beta/rev/# #]
| |
| |-
| |
| | GECKO80_#_RELBRANCH, FIREFOX_VERSION_BUILD1 FIREFOX_VERSION_RELEASE
| |
| | [http://hg.mozilla.org/releases/mozilla-beta/rev/# #]
| |
| |}
| |
| | |
| =Build data=
| |
| == Firefox ==
| |
| {| class="fullwidth-table"
| |
| | style="background:#efefef" | '''Build #'''
| |
| | style="background:#efefef" | '''Type'''
| |
| | style="background:#efefef" | '''Build ID'''
| |
| | style="background:#efefef" | '''Build machine'''
| |
| | style="background:#efefef" | '''Time to build'''
| |
| |-
| |
| | rowspan="4" | 1
| |
| | Linux
| |
| | rowspan="4" |
| |
| |
| |
| |
| |
| |-
| |
| | Linux64
| |
| |
| |
| |
| |
| |-
| |
| | Mac
| |
| |
| |
| |
| |
| |-
| |
| | Windows
| |
| |
| |
| |
| |
| |}
| |
| | |
| == Fennec ==
| |
| {| class="fullwidth-table"
| |
| | style="background:#efefef" | '''Build #'''
| |
| | style="background:#efefef" | '''Type'''
| |
| | style="background:#efefef" | '''Build ID'''
| |
| | style="background:#efefef" | '''Build machine'''
| |
| | style="background:#efefef" | '''Time to build'''
| |
| |-
| |
| | rowspan="2" | 1
| |
| | android
| |
| | rowspan="2" |
| |
| |
| |
| |
| |
| |-
| |
| | android-xul
| |
| |
| |
| |
| |
| |}
| |
| | |
| =Notes=
| |
| ==Build 1==
| |
| ===Syncing repos===
| |
| (eg: mozilla-beta -> mozilla-release for new Firefox releases)
| |
| ====Diff mozconfigs====
| |
| If this is a *.0 beta -> release. May also need to update the whitelist of nightly vs release differences for release sanity.
| |
| | |
| ===Preparing to start Automation===
| |
| * Set clobbers for the appropriate masters. Doing this 24-48 hours in advance should speedup the build.
| |
| ** [http://build.mozilla.org/clobberer clobberer]
| |
| * Reserve slaves, e.g.:
| |
| <pre>
| |
| [cltbld@buildbot-master08 master]$ pwd
| |
| /builds/buildbot/build1/master
| |
| [cltbld@buildbot-master08 master]$ cat reserved_slaves_bm08-build1
| |
| 8
| |
| </pre>
| |
| * For build1 only, create a symlink for your $version (eg 11.0b4, 10.0.2esr, 10.0.2, 3.6.27) (until {{bug|725839}} is resolved)
| |
| # ffxbld@stage
| |
| cd /pub/mozilla.org/firefox/nightly/
| |
| mkdir ../candidates/$version-candidates
| |
| ln -s ../candidates/$version-candidates $version-candidates
| |
| * Update l10n changesets for desktop, mobile
| |
| ** [https://wiki.mozilla.org/Release:Release_Automation_on_Mercurial:Documentation#L10N_Changesets Instructions] on how to get them
| |
| ** [https://l10n-stage-sj.mozilla.org/shipping/milestones dashboard]
| |
| * Land automation configs (are you or buildduty going to reconfig? great, merge. otherwise double-land only your configs)
| |
| * Tag buildbot-configs, buildbotcustom, & tools with build & release tags.
| |
| ** Sample command for Firefox 10.0 beta 5 build 1:
| |
| <pre>
| |
| hg tag -f FIREFOX_10_0b5_RELEASE FIREFOX_10_0b5_BUILD1 FENNEC_10_0b5_RELEASE FENNEC_10_0b5_BUILD1
| |
| </pre>
| |
| * update and reconfigure the master
| |
| * start automation
| |
| * reconfigure other masters (or ask the buildduty person to do this) <em>if you have done a merge (and not double-land) to production</em>
| |
| | |
| === E-mail Metrics ===
| |
| Use the address "metrics-alerts < AT > mozilla < PERIOD > org"
| |
| | |
| For 3.6.25 you would send
| |
| Firefox,firefox,firefox,3.6.25,3.6
| |
| Firefox,firefox,firefox,3.6.26pre,3.6
| |
| | |
| For non-3.6 releases, we need to include Fennec in the email if we build Fennec.
| |
| | |
| For 9.0b2 it would be
| |
| Firefox,firefox,firefox,9.0b2,9.0
| |
| Fennec,firefox-mobile,fennec,9.0b2,9.0
| |
| | |
| And for 9.0 final it's
| |
| Firefox,firefox,firefox,9.0,9.0
| |
| Fennec,firefox-mobile,fennec,9.0,9.0
| |
| | |
| ESRs have "esr" appended to their major branch, so a 10.0.1esr would look as follows:
| |
| Firefox,firefox,firefox,10.0.1esr,10.0esr
| |
| | |
| === E-mail mirrors@mozilla.org ===
| |
| Not necessary for rapid release betas, files only go as far as the 'internal mirrors'.
| |
| | |
| 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>
| |
| | |
| === Edit rsync exclude files ===
| |
| Edit /pub/mozilla.org/zz/rsyncd-mozilla-releases.exclude on stage so that it excludes the current release. This prevents external mirrors from picking up the new release prematurely.
| |
| | |
| For rapid release betas, this is not necessary as there's already an exclude that matches beta releases.
| |
| | |
| === Tag ===
| |
| | |
| === Bouncer Submitter ===
| |
| | |
| | |
| === Source ===
| |
| | |
| | |
| === Start autosign ===
| |
| NOTE: use new signcode keys from d:/2011-keys
| |
| | |
| Instructions are in [https://intranet.mozilla.org/RelEngWiki/index.php/Signing#.22autosign.22.2C_used_for_Firefox_3.6.x.2C_10.0.x.2C_and_10.0.x_ESR Signing]
| |
| | |
| === Build ===
| |
| ==== Firefox ====
| |
| | |
| ===== Firefox repacks =====
| |
| | |
| ==== Fennec ====
| |
| | |
| ===== Fennec repacks =====
| |
| | |
| === Unittests / Talos ===
| |
| # Look to see that they ran
| |
| # Document any oranges (per platform) for unittests - if possible, try to confirm it's known/random
| |
| # Make sure there's no red/failures that we need to have a dev look at
| |
| | |
| === XULRunner ===
| |
| | |
| ====Source====
| |
| | |
| ====Build====
| |
| | |
| ====Signing====
| |
| NOTE: use new signcode keys from d:/2011-keys and QUIT SIGNCODE when you're done with keymaster
| |
| | |
| Follow instructions in [https://intranet.mozilla.org/Build:CombinedSigning#XULRunner_Signing XULRunner Signing] (aut required).
| |
| | |
| === Partner Repack ===
| |
| ==== Firefox ====
| |
| ==== Fennec ====
| |
| | |
| === Firefox Signing ===
| |
| | |
| | |
| === Android Signing ===
| |
| Instructions in [https://intranet.mozilla.org/Build:MobileSigning MobileSigning]
| |
| | |
| Now run on signing1.
| |
| === L10N verify ===
| |
| | |
| | |
| === Checksums ===
| |
| | |
| === Updates ===
| |
| | |
| ==== Update verify ====
| |
| | |
| === 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.
| |
| 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 ====
| |
| | |
| === Reset reserved slaves ===
| |
| This is also a good time to QUIT SIGNCODE on keymaster if you've still got it running.
| |
| | |
| === Check permissions / AV scan ===
| |
| It is supposed to be triggered automatically after updates are done.
| |
| File a bug if it doesn't.
| |
| | |
| === Push to internal mirrors ===
| |
| This is done by automation for rapid release betas.
| |
| | |
| For other releases, this should be done manually at this point, after check permissions / AV scan have completed.
| |
| * Make sure the rsync excludes have been updated ([[Releases/BuildNotesTemplate#Edit_rsync_exclude_files]])
| |
| * Force build the push to mirrors builder. Make sure at least 15 minutes have elapsed since editing the rysnc module to give it time to sync out.
| |
| | |
| [https://intranet.mozilla.org/ReleaseEngineering/Release/Primer#Mirrors_.28internal_.26_external.29 Mirrors Policy]
| |
| | |
| === Going to Beta ===
| |
| ==== Run backupsnip ====
| |
| NOTE: Remember to do this at least an hour ahead of the expected "go to beta" email.
| |
| | |
| ==== Push to beta ====
| |
| | |
| === Before Release Day ===
| |
| 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.
| |
| | |
| === Final verification ===
| |
| | |
| === Push index file to mirrors ===
| |
| | |
| === Push to external mirrors ===
| |
| if this is a chemspill you will want to ping justdave (or other sysadmin) in #release-drivers
| |
| and ask them to enable CDN
| |
| | |
| === Release Day ===
| |
| ==== Publish Fennec to the Android Market ====
| |
| =====Push the files=====
| |
| * 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=====
| |
| '''IMPORTANT -''' Make sure to follow instructions!
| |
| * 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])
| |
| * visit https://market.android.com/publish
| |
| * 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 ====
| |
| | |
| ==== Update XULRunner wiki page ====
| |
| For major releases or chemspills, update the links on:
| |
| * https://developer.mozilla.org/en/XULRunner
| |
| * https://developer.mozilla.org/en/Gecko_SDK
| |
| | |
| Also for older releases:
| |
| * 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 ====
| |