Release Management/Release Process Checklist Documentation: Difference between revisions

Adding Huawei App Gallery steps
(Updated the Fenix/Focus b2+ steps)
(Adding Huawei App Gallery steps)
 
(44 intermediate revisions by 4 users not shown)
Line 17: Line 17:
# Add a Release Tracking Sheet link to [https://wiki.mozilla.org/Release_Management/Release_owners Release Owners] wiki
# Add a Release Tracking Sheet link to [https://wiki.mozilla.org/Release_Management/Release_owners Release Owners] wiki
#* Add the link to the date in the Release Date column.  
#* Add the link to the date in the Release Date column.  
# Ensure that Bugzilla is bumped to the Nightly version, see [https://wiki.mozilla.org/BMO/new-version BMO/new-version]
# Ensure that Bugzilla is bumped to the Nightly version  
#* Note: This is performed on the Friday before Merge Day.
#* Note: This is performed on the Friday before Merge Day.
#* Find the bug that tracks the bump.
#** [https://bugzilla.mozilla.org/show_bug.cgi?id=1744491 Example bug]
## Update the Release Milestones in Bugzilla
## Update the Release Milestones in Bugzilla
## Got to https://bugzilla.mozilla.org/admin/new_release
## Go to Bugzilla > Administration > [https://bugzilla.mozilla.org/admin/new_release New Firefox Release]
##* The products and milesontes are automatically completed
##* The products and milesontes are automatically completed
## Click [ Submit ]
## Click [ Submit ]
Line 29: Line 27:
## Add the cf_tracking_firefox and cf_status_firefox for the Nightly release
## Add the cf_tracking_firefox and cf_status_firefox for the Nightly release
##* Example: If 97 is becoming the Nightly, then add cf_tracking_firefox97 and cf_status_firefox97.
##* Example: If 97 is becoming the Nightly, then add cf_tracking_firefox97 and cf_status_firefox97.
## Deactivate the oldest cf_tracking_firefox flag.
## Deactivate the oldest cf_tracking_firefox and cf_status_firefox flag.
##* Example: If 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then deactivate cf_status_firefox94.
##* Example: If 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then deactivate cf_tracking_firefox94 and cf_status_firefox94.
## Edit the current cf_tracking_firefox_relnote tracking flag to add the new release as a Value and deactivate the oldest release.
##* Example:  If 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then edit cf_tracking_firefox_relnote to add a Value 97+ set to mozilla-next-drivers and deactivate the Value 94+
## Edit the current cf_tracking_firefox_esr tracking flag to add the new release as a Value and deactivate the oldest release.
## Edit the current cf_tracking_firefox_esr tracking flag to add the new release as a Value and deactivate the oldest release.
##* Example: If esr is based on 91, 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then edit cf_tracking_firefox_esr91 to add a Value 97+ set to mozilla-next-drivers and deactivate the Value 94+
##* Example: If esr is based on 91, 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then edit cf_tracking_firefox_esr91 to add a Value 97+ set to mozilla-next-drivers and deactivate the Value 94+
## Add the cf_tracking_thunderbird and cf_tracking_thunderbird for the Nightly release.
## Add the cf_tracking_thunderbird and cf_status_thunderbird for the Nightly release.
##* Example: If 97 is becoming the Nightly, then add cf_tracking_thunderbird97 and cf_tracking_thunderbird97
##* Example: If 97 is becoming the Nightly, then add cf_tracking_thunderbird_97 and cf_status_thunderbird_97
## Deactivate the oldest cf_tracking_thunderbird flag.
## Deactivate the oldest cf_tracking_thunderbird and cf_status_thunderbird flag.
##* Example: If 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then deactivate cf_tracking_thunderbird94.
##* Example: If 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then deactivate cf_tracking_thunderbird_94 and cf_status_thunderbird_94.
## Edit the current cf_tracking_thunderbird_esr tracking flag to add the new release as a Value and deactivate the oldest release.
## Edit the current cf_tracking_thunderbird_esr tracking flag to add the new release as a Value and deactivate the oldest release.
##* Example: If esr is based on 91, 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then edit cf_tracking_firefox_esr91 to add a Value 97+ set to mozilla-next-drivers and deactivate the Value 94+.
##* Example: If esr is based on 91, 95 is going to Release, 96 is going to Beta, and 97 is becoming the Nightly, then edit cf_tracking_firefox_esr91 to add a Value 97+ set to mozilla-next-drivers and deactivate the Value 94+.
## Add a comment on the bug that the tracking flags were updated.
## Edit the cf_tracking_fxios tracking flag to add the new release as a Value and deactivate the oldest release.
##* See [https://bugzilla.mozilla.org/show_bug.cgi?id=1770521#c1 comment here] for example.
# Create a release notes skeleton in [https://nucleus.mozilla.org/ Nucleus].
# Create a release notes skeleton in [https://nucleus.mozilla.org/ Nucleus].
## Click '''Admin Interface'''
## Click '''Admin Interface'''
Line 115: Line 114:
#* Ensure that the tickets are progressing, follow up as required.
#* Ensure that the tickets are progressing, follow up as required.
# Review '''incoming regression bugs'''
# Review '''incoming regression bugs'''
#* [https://bugzilla.mozilla.org/buglist.cgi?v4=%3F&o5=equals&f10=keywords&keywords=regression%2C&keywords_type=allwords&f1=cf_status_firefox97&o3=equals&o7=notsubstring&list_id=14849551&f8=cf_tracking_firefox97&v11=Geckoview&v3=unaffected&o11=notequals&o1=equals&j2=OR&o9=notequals&resolution=---&v10=stalled%2Cintermittent-failure&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&v7=needinfo&f9=product&f4=cf_status_firefox96&v5=---&query_format=advanced&o10=nowordssubstr&v9=Testing&f3=cf_status_firefox96&f2=OP&o4=equals&f11=product&f5=cf_status_firefox96&v8=-&v1=affected&f6=CP&f7=flagtypes.name&o8=notequals&title=97%20New%20Bugs&order=changeddate Example Filter]
#* See the [https://bugdash.moz.tools/#tab.reo REO] section in the BugDash
#* Also see the [https://bugdash.moz.tools/#tab.reo REO] section in the BugDash
#* Ensure that new tickets are prioritized.  
#* Ensure that new tickets are prioritized.  
#* Ensure that carry-over tickets are still on the team’s radar.
#* Ensure that carry-over tickets are still on the team’s radar.
Line 150: Line 148:
#** Check the possible commit in [https://github.com/mozilla/application-services application-services main] that corresponds to the failure.
#** Check the possible commit in [https://github.com/mozilla/application-services application-services main] that corresponds to the failure.
#** Start a thread on [https://mozilla.slack.com/archives/C0559DDDPQF #application-services-eng] for investigation.
#** Start a thread on [https://mozilla.slack.com/archives/C0559DDDPQF #application-services-eng] for investigation.
# Review the [https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&f1=cf_tracking_firefox_relnote&o1=equals&v1=%3F&f2=cf_status_firefox138&o2=anywords&v2=affected%2Cfixed%2Cverified%2Cfix-optional&f3=cf_status_firefox138&o3=notsubstring&v3=disabled&title=Release%20Note%20Requests Release Notes requests] for Nightly tickets
#* These are nominated by setting the relnote flag to ?  for a particular release
# Review Test Plans for features targeting the release. QA shares test plans via email. For example:
# Review Test Plans for features targeting the release. QA shares test plans via email. For example:
#* Become familiar with how the feature works.
#* Become familiar with how the feature works.
Line 163: Line 163:
#* Remind developers that the window for landing riskier fixes is coming to a close until after the version bump.
#* Remind developers that the window for landing riskier fixes is coming to a close until after the version bump.
#* [https://groups.google.com/a/mozilla.org/g/dev-platform/c/uoCFNyGJx0c Example email]  
#* [https://groups.google.com/a/mozilla.org/g/dev-platform/c/uoCFNyGJx0c Example email]  
# Sync with RelEng to confirm the RelEng on duty for the Central to Beta merge.
#* Sync on Friday before Merge Day
#* Use the [https://matrix.to/#/#releaseduty:mozilla.org #releaseduty] channel on Matrix.
#* Align to perform the merge early on Merge Day, for example, 9/10am ET.
# Sync with the Sheriff team to confirm Central is in a good state so that the Merge Day email can be sent.
#* Sync on Merge Day morning
#* Use the [https://chat.mozilla.org/#/room/#sheriffs:mozilla.org #sheriffs] channel on Matrix.
#* Check the Beta simulations document for the release, this document is emailed to Release Management at the start of the night cycle.
#* Ensure that central does not currently have any known severe regressions or performance issues that would be carried into beta.
# Once you have confirmed central is in a good state, send the Merge Day email to release-drivers and release signoff
#* [https://groups.google.com/a/mozilla.org/g/release-drivers/c/FACrkr1Qgpo Example email] for the merge day of 103:
# Sync with RelEng on the Central to Beta merge
#* Use the [https://matrix.to/#/#releaseduty:mozilla.org #releaseduty] channel on Matrix to mention the merge day email was sent
#* Sync with the RelEng on duty. The RelEng on duty is listed in the Matrix channel description
# Create a Desktop Beta Checklist and Mobile Beta Checklist for beta 1
#* Use the b1 macro
# Wait for RelEng to complete the central to beta merge.
#* Use the [https://matrix.to/#/#releaseduty:mozilla.org #releaseduty] channel on Matrix to synchronize if needed.
#* RelEng will also reply to the Merge Day email
# Prepare the Beta release notes in [https://nucleus.mozilla.org/ Nucleus]
# Prepare the Beta release notes in [https://nucleus.mozilla.org/ Nucleus]
## Click '''Admin Interface'''
## Click '''Admin Interface'''
Line 195: Line 176:
## Set the Release Date to the date when the first Beta is released
## Set the Release Date to the date when the first Beta is released
## Ensure to remove any notes that are only applicable to nightly
## Ensure to remove any notes that are only applicable to nightly
# Sync with RelEng to confirm the RelEng on duty for the Central to Beta merge.
#* Sync on Friday before Merge Day
#* Use the [https://matrix.to/#/#releaseduty:mozilla.org #releaseduty] channel on Matrix.
#* Align they are available for support if needed.
# Create checklist(s) for the new ESR cycle
#* Create a checklist for the relevant ESR that corresponds to the Firefox mainline release
#* See [https://whattrainisitnow.com/release/?version=esr ESR calendar]
# Verify the automated mozilla-central->mozilla-beta no-op trial run
#* The job automatically runs every Friday and the link is shared on the [https://matrix.to/#/#releaseduty:mozilla.org #release-duty] channel in Matrix.
#* See [https://moz-releng-docs.readthedocs.io/en/latest/how-to/releaseduty/merge-duty/merge_duty.html#do-migration-no-op-trial-runs #do-migration-no-op-trial-runs] for documentation.
# Create a Desktop Beta Checklist and Mobile Beta Checklist for beta 1
#* Use the b1 macro


= Beta Checklist =
= Beta Checklist =
Line 200: Line 193:
Once a release moves to the Beta cycle, the daily tasks performed during the Nightly cycle will continue to be carried out as new bug reports come in from a wider audience and new features move through the QA cycle towards shipping. There is also an added triage step during Beta - monitoring the “missed uplifts” email or queries to find issues fixed in Nightly that still affect Beta.
Once a release moves to the Beta cycle, the daily tasks performed during the Nightly cycle will continue to be carried out as new bug reports come in from a wider audience and new features move through the QA cycle towards shipping. There is also an added triage step during Beta - monitoring the “missed uplifts” email or queries to find issues fixed in Nightly that still affect Beta.


==The following tasks need to be performed on Merge Day at the start of the Beta cycle after the merge to beta is finished==
==The following tasks need to be performed on Merge Day at the start of the Beta cycle==
# Perform the release management steps in the [https://mozilla.github.io/application-services/book/howtos/releases.html App Services Release checklist]
# Sync with the Sheriff team to confirm Central is in a good state so that the Merge Day activities can begin.
#* Application Services release once and at the start of the beta cycle.
#* Sync on Merge Day morning
#* This step is required before building Android/iOS.
#* Use the [https://chat.mozilla.org/#/room/#sheriffs:mozilla.org #sheriffs] channel on Matrix.
#* Check the Beta simulations document for the release, this document is emailed to Release Management at the start of the night cycle.
#* Ensure that central does not currently have any known severe regressions or performance issues that would be carried into beta.
# Perform the [https://moz-releng-docs.readthedocs.io/en/latest/how-to/releaseduty/merge-duty/merge_duty.html#release-merge-day-part-ii-a-week-after-merge-day Release Merge Day - part II] steps
# Send the merge complete email to release-signoff and release-drivers
#* [https://groups.google.com/a/mozilla.org/g/release-signoff/c/qlnvsv4Ky0E Example email]
# Announce the soft freeze is over
#* Reply back to the soft code freeze announcement email
#* "The version bump to xxx has now landed on mozilla-central and the soft freeze period is over."
# application-services: Create an application-services release branch with the format release-vXXX off of the [https://github.com/mozilla/application-services/tree/main main branch]
# application-services: The following steps can be performed by running [https://github.com/mozilla/Relman/blob/main/as-merge-day.py as-merge-day.py] in your fork of the [https://github.com/mozilla/application-services application-services] repo:
#* application-services: Update version.txt and the CHANGELOG.md in the release-vXXX branch
#** In [https://github.com/mozilla/application-services/blob/main/version.txt version.txt], update the version from XXX.0a1 to XXX.0.
#** In [https://github.com/mozilla/application-services/blob/main/CHANGELOG.md CHANGELOG.md], change In progress to _YYYY-MM-DD_ to match the Merge Day date and add a URL to the release version change log
#** Create a commit named 'Cut release vXXX.0`
#** Create a pull request and merge to the release branch, see [https://github.com/mozilla/application-services/pull/5792 example PR]
#* application-services: Update the application-services version from XXX to YYY and CHANGELOG.md in the [https://github.com/mozilla/application-services/tree/main main branch]
#** In [https://github.com/mozilla/application-services/blob/main/version.txt version.txt], bump the version from XXX.0a1 to YYY.0a1
#** In [https://github.com/mozilla/application-services/blob/main/CHANGELOG.md CHANGELOG.md], bump the in progress version from XXX.0 to YYY.0, add a header for the previous release version, and add a URL to the previous release version change log
#** Create a commit named 'Start release vYYY.0`
#** Create a pull request and merge to the main branch, see [https://github.com/mozilla/application-services/pull/5793 example PR]
# application-services: Create a new Application Services release in Ship-It
# application-services: Start the Application Services build in Ship-It via Promote
# application-services: Ship the Application Services build in Ship-It
# application-services: Tag the release in the Application Services repo
## See [https://github.com/mozilla/application-services/releases/tag/v132.0 example tag]
# application-services: Notify the application-services dev team on [https://mozilla.enterprise.slack.com/archives/C0559DDDPQF #application-services-eng] that the release branch is ready, the version bumped was merged, and the release is ready
# Switch to Application Services in Firefox Android to Release
# Switch to Application Services in Firefox Android to Release
#* Change the Version and Channel in mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
#* Change the Version and Channel in mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
#** See example [https://hg.mozilla.org/releases/mozilla-beta/rev/4c3f709451f8aa49beaf8d63fc2131c3ac85e82e commit]
#** See example [https://hg.mozilla.org/releases/mozilla-beta/rev/4c3f709451f8aa49beaf8d63fc2131c3ac85e82e commit]
#* Push directly mozilla-beta
#* Push directly mozilla-beta
# Perform the release management steps in the [https://github.com/mozilla-mobile/firefox-ios/wiki/Release-Checklist#soft-freeze-tasks Firefox iOS Soft Freeze Checklist]
#* The Firefox iOS release branch is used for beta and rc builds.
# Announce the soft freeze is over
#* Reply back to the soft code freeze announcement email
#* "The version bump to xxx has now landed on mozilla-central and the soft freeze period is over."
# Review any pending uplifts that may be required before proceeding with a beta 1 build
# Review any pending uplifts that may be required before proceeding with a beta 1 build
#* This should not be a common occurrence, however, an example would be a crash fix that may have landed in central post-merge.
#* This should not be a common occurrence, however, an example would be a crash fix that may have landed in central post-merge.
Line 265: Line 279:
# Turn on [https://support.google.com/googleplay/android-developer/answer/9859654?hl=en managed publishing] in the Play Console for Focus.
# Turn on [https://support.google.com/googleplay/android-developer/answer/9859654?hl=en managed publishing] in the Play Console for Focus.
# Manually create a Focus release on the closed testing track (Foxfooding) @ 25% rollout and submit for review
# Manually create a Focus release on the closed testing track (Foxfooding) @ 25% rollout and submit for review
# Monitor for QA sign-off on desktop functional testing before proceeding with Step 23.  
# Monitor for QA sign-off on desktop functional testing before proceeding with Step 33.  
#* Please Note: Desktop Build Validation sign-off is usually provided the day after Merge Day.
#* Please Note: Desktop Build Validation sign-off is usually provided the day after Merge Day.
#* QA will post a message to the [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] channel in Slack when they complete functional testing.   
#* QA will post a message to the [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] channel in Slack when they complete functional testing.   
Line 299: Line 313:
#* This allows the app to publish automatically once it passes review.
#* This allows the app to publish automatically once it passes review.
# Turn off managed publishing in the Play Console for Focus
# Turn off managed publishing in the Play Console for Focus
# Monitor for QA sign-off on Firefox iOS build validation
#* Build validation testing is tracked [https://mozilla-hub.atlassian.net/wiki/spaces/MTE/pages/21561470 here]
#* Once QA has signed off, add the External Beta Testers group to the Firefox iOS TestFlight Build
# Monitor for QA sign-off on Focus iOS build validation
#* Build validation testing is tracked [https://mozilla-hub.atlassian.net/wiki/spaces/MTE/pages/21561465/Build+Validation+-+Focus+iOS here]
# Verify the [https://product-details.mozilla.org/1.0/mobile_versions.json mobile_versions.json] is correct
# Verify the [https://product-details.mozilla.org/1.0/mobile_versions.json mobile_versions.json] is correct
#* Verify the beta_version is correct
#* Verify the beta_version is correct
Line 343: Line 352:
# Verify all approved bugs landed on mozilla-beta.
# Verify all approved bugs landed on mozilla-beta.
#* This step is performed as part of the daily activities, tracked in the checklist for confirmation.
#* This step is performed as part of the daily activities, tracked in the checklist for confirmation.
# Ensure the Firefox iOS build is available in Testflight
#* [https://appstoreconnect.apple.com/apps/1073219424/testflight Firefox Beta TestFlight]
#* If the build is not pushed then check the build status in the [https://app.bitrise.io/app/6c06d3a40422d10f?workflow=workflow-SPM_Deploy_Prod_Beta BitRise pipeline]
# Confirm the Desktop and DevEdition builds have started.
# Confirm the Desktop and DevEdition builds have started.
#* Taskcluster email: “[desktop] Build of firefox xx.0bx build 1”
#* Taskcluster email: “[desktop] Build of firefox xx.0bx build 1”
Line 368: Line 374:
# Manually create a Fenix release on the Production track @ 50% rollout for b2 and @ 99% rollout for b3+
# Manually create a Fenix release on the Production track @ 50% rollout for b2 and @ 99% rollout for b3+
# Manually create a Focus release on the closed testing track (Foxfooding) @ 50% rollout for b2 and @ 99% rollout for b3+
# Manually create a Focus release on the closed testing track (Foxfooding) @ 50% rollout for b2 and @ 99% rollout for b3+
#* See [https://play.google.com/console/u/0/developers/7083182635971239206/app/4972137837611309386/releases/overviewFirefox Focus (Beta for Testers)]
# Confirm notification sent when the Desktop and DevEditon CDN push finishes.
# Confirm notification sent when the Desktop and DevEditon CDN push finishes.
#* Taskcluster email: “firefox xx.0bx build1/mozilla-beta has been pushed to cdntest”
#* Taskcluster email: “firefox xx.0bx build1/mozilla-beta has been pushed to cdntest”
Line 389: Line 394:
#* For b3+, once QA has signed off, roll out Focus to the Closed testing - Foxfooding track in Google Play to 100%.
#* For b3+, once QA has signed off, roll out Focus to the Closed testing - Foxfooding track in Google Play to 100%.
#** Reply to the QA sign-off Slack message and include the rollout percentage.
#** Reply to the QA sign-off Slack message and include the rollout percentage.
# Monitor for QA sign-off on Firefox iOS build validation before proceeding with adding the External Testers group in TestFlight.
#* Firefox iOS QA sign-off are sent via [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack Channel.
#* Please Note: Build Validation sign-off is usually provided the day after Firefox iOS builds are produced. If the sign-off is yellow/red, then follow-up on the [https://mozilla.slack.com/archives/C03PKCHHSSD #firefox-ios-releases] Slack channel. Ensure a plan is in place or a decision is made to block/proceed with the release.
#* Once QA has signed off add the External Testers group to Firefox iOS.
#** Reply to the QA sign-off Slack message.


==As available, the following items should be monitored during the Beta cycle==
==As available, the following items should be monitored during the Beta cycle==
Line 403: Line 403:
# Phabricator patches for remote-settings updates are generated automatically. Typically this is every Monday and Thursday. These patches must be included in the beta uplifts.
# Phabricator patches for remote-settings updates are generated automatically. Typically this is every Monday and Thursday. These patches must be included in the beta uplifts.
#* Monitor email notifications sent by Phabricator: “No Bug, mozilla-beta repo-update HSTS HPKP remote-settings tld-suffixes”
#* Monitor email notifications sent by Phabricator: “No Bug, mozilla-beta repo-update HSTS HPKP remote-settings tld-suffixes”
#* Review the patch.
#* Review the and land patch.
#* Commit the patch to beta via the [https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html# moz-phab tool]
#** ''moz-phab patch <patch id> --no-bookmark --apply-to here''
#* Edit the commit message to add the approval.
# Use the Mana [https://mozilla-hub.atlassian.net/wiki/spaces/FIREFOX/pages/277284167/Beta+Quality+Metrics Beta Quality Metrics Page] to review the Beta Quality Metrics.
# Use the Mana [https://mozilla-hub.atlassian.net/wiki/spaces/FIREFOX/pages/277284167/Beta+Quality+Metrics Beta Quality Metrics Page] to review the Beta Quality Metrics.
#* The data is embedded from this [https://docs.google.com/spreadsheets/d/1Ev8HSxyAQFB5eLX98r6hmDR7FFNViJD4JWnqxiEtx48/edit#gid=2061648925 wiki page].
#* The data is embedded from this [https://docs.google.com/spreadsheets/d/1Ev8HSxyAQFB5eLX98r6hmDR7FFNViJD4JWnqxiEtx48/edit#gid=2061648925 wiki page].
Line 422: Line 419:


==The following needs to be performed at the End of Early Beta==
==The following needs to be performed at the End of Early Beta==
Please Note: This is performed on the Friday at the midday point of the beta cycle, see the Releases Scheduling google calendar. This is typically after beta 6 has been released. This should be done in its own push and before pushing any other uplifts to beta.
Please Note: This is performed on the Friday at the midway point of the beta cycle, see the Releases Scheduling google calendar. This is typically after beta 6 has been released. This should be done in before pushing any other uplifts to beta after beta 6.
# Open build/defines.sh
# Go to [https://treeherder.mozilla.org/ Treeherder].
# Clear the EARLY_BETA_OR_EARLIER flag:
# Select the beta repo.
#* EARLY_BETA_OR_EARLIER=1 to EARLY_BETA_OR_EARLIER=
# On the latest commit push, click on the down arrow at the top right corner. Do not trigger on a tag.
# Commit the changes:
# Select “Custom push action…”
#* hg commit -m "No bug - post beta 6, unset EARLY_BETA_OR_EARLIER. a=me"
# Choose ''merge-automation'' from the dropdown.
# Push the changes to beta.
# Insert the following payload and click trigger.
<pre>force-dry-run: false
behavior: early-to-late-beta
</pre>
 
After the job runs, verify that the commit was pushed to the mozilla-beta repo, see [https://hg.mozilla.org/releases/mozilla-beta/rev/29e6215562511ffef7bfa73bed97093ec3d8cdd4 example].


==The following needs to be performed at the end of the Beta Cycle==
==The following needs to be performed at the end of the Beta Cycle==
# Verfiy the automated mozilla-beta->mozilla-release migration no-op trial run
#* The job automatically runs every Friday and the link is shared on the [https://matrix.to/#/#releaseduty:mozilla.org #release-duty] channel in Matrix.
#* See [https://moz-releng-docs.readthedocs.io/en/latest/how-to/releaseduty/merge-duty/merge_duty.html#mozilla-beta-mozilla-release-migration-no-op-trial-run #do-migration-no-op-trial-runs] for documentation.
# Disable automated beta builds in Ship-it.
# Disable automated beta builds in Ship-it.
# Disable the firefox-ios firefox-ios SPM_Deploy_Prod_Beta BitRise scheduled workflow.
#* Expand the Scheduled section in the [https://app.bitrise.io/app/6c06d3a40422d10f firefox-ios on BitRise]
#* Pause the schedule for the SPM_Deploy_Prod_Beta that runs "Every Tue, Thu, Sun @ 20:00"
# Please Note: Monitor beta/release uplift requests between the final beta build and the beta to release merge. It is possible that a late uplift request may come in for a regression/stability fix, evaluate if this is a blocker for the RC and if it should be uplifted to beta before the beta to release merge and RC build.
# Please Note: Monitor beta/release uplift requests between the final beta build and the beta to release merge. It is possible that a late uplift request may come in for a regression/stability fix, evaluate if this is a blocker for the RC and if it should be uplifted to beta before the beta to release merge and RC build.
=iOS XXX.0 Checklist=
iOS XXX.0 preparation begins on the Friday before RC Week.
# The following steps can be performed by running [https://github.com/mozilla/Relman/blob/main/ios-merge-day.py ios-merge-day.py] in your checkout of the [https://github.com/mozilla-mobile/firefox-ios firefox-ios] repo:
## Create a firefox-ios release branch with the format release/vxxx off of the main branch
##* Create a branch name with the format release/vxxx off of the main branch through the GitHub UI
## Update the version in [https://github.com/mozilla-mobile/firefox-ios/blob/main/version.txt version.txt] from XXX.0 to XXX.1 in the [https://github.com/mozilla-mobile/firefox-ios/tree/main main branch]
##* Edit version.txt directly in GitHub and commit as "Bump - Set version to XXX.1"
# Notify the firefox-ios dev team on [https://mozilla.enterprise.slack.com/archives/C03PKCHHSSD #firefox-ios-releases] that the release branch is ready and the version bumped was merged
# Create a Firefox iOS release in ship-it
#* Select Product: Firefox iOS, Repository: Firefox iOS, Branch: release/vXXX.0, and the latest revision
# Start the Firefox iOS build in Ship-It via Promote
# Push the Firefox iOS release in Ship-It via Push
#* This step pushes the Firefox iOS build to Testflight
# Ensure the firefox-ios build is available in Testflight
#* [https://appstoreconnect.apple.com/apps/1073219424/testflight Firefox Beta TestFlight]
# Create a Focus iOS release in ship-it
#* Note: Focus iOS XXX.0 may not ship; the purpose is to at least verify the Focus iOS pipeline once per cycle
#* Select Product: Focus iOS, Repository: Focus iOS, Branch: release/vXXX.0, and the latest revision
# Start the Focus iOS build in Ship-It via Promote
# Push the Focus iOS release in Ship-It via Push
#* This step pushes the Focus iOS build to Testflight
# Ensure the focus-ios build is available in Testflight
# Monitor for QA sign-off on Firefox iOS build validation
#* Build validation testing is tracked [https://mozilla-hub.atlassian.net/wiki/spaces/MTE/pages/21561470 here]
#* Preliminary sign-off is due to be sent by Monday EOD, which is sufficient for pushing to External Testers in TestFlight
# Once QA has signed off, add the External Beta Testers group to the Firefox iOS TestFlight Build
#* Reply to the QA sign-off Slack message.
# QA will aim to send a full manual testing report by EOD Tuesday so there is time to address any blocking issues identified.
# Check if there are any pending backport PRs targeting the XXX.0 release branch
#* Example query https://github.com/mozilla-mobile/firefox-ios/pulls?q=is%3Apr+base%3Arelease%2Fv144.0+is%3Aopen+
#* After the branch was created iOS Engineers may have created backport PRs. Review the uplift request comment on the PR and merge when appropriate.
# If an XXX.0 RC2 build is required, then cancel the previous RC build in Ship-It and repeat steps 3 to 6 and 11 to 12
# Check if there are any pending backport PRs targeting the XXX.0 release branch
#* Example query https://github.com/mozilla-mobile/firefox-ios/pulls?q=is%3Apr+base%3Arelease%2Fv144.0+is%3Aopen+
#* After the XXX.0 RC2 was built iOS Engineers may have created backport PRs. Review the uplift request comment on the PR to determine if an XXX.0 RC3 build is required, or if the PR can wait for XXX.1
# If an XXX.0 RC3 build is required, then cancel the previous RC build in Ship-It and repeat steps 3 to 6 and 11 to 12
# Check if there are release notes
#* If there are no release notes provided then us the generic release notes
# Submit Firefox iOS in the AppStore for review
#* Select a phased rollout when submitting.
#* Select to automatically release after App Store Review on Sunday night Eastern 10PM (Monday 2AM GMT) prior to go-live (i.e. go-live date -2)
#** Note: If the Monday of go-live week is a Canadian public holiday, then set the automatic release date to Monday night Eastern instead.
# Ship Firefox iOS from Ship-It via Ship
#* Wait until the Friday of RC week to avoid shipping if another RC is needed
# Verify that Firefox iOS rolled out
# Send Slack message to #firefox-ios-releases to notify the release is live


=RC Checklist=
=RC Checklist=
Line 445: Line 497:
#* Verify that all approved uplift requests were uplifted to beta
#* Verify that all approved uplift requests were uplifted to beta
# Verify all approved bugs landed on mozilla-release
# Verify all approved bugs landed on mozilla-release
#* Sync with RelEng to merge Beta to Release.
# Perform the [https://moz-releng-docs.readthedocs.io/en/latest/how-to/releaseduty/merge-duty/merge_duty.html#release-merge-day-part-i Release Merge Day - part I] steps
#** Send an email with details of the merge.
# Send the merge complete email to release-drivers
#** Include both [https://groups.google.com/a/mozilla.org/g/release-drivers release-drivers] and [https://groups.google.com/a/mozilla.org/g/release-signoff release sign-off]
# [https://groups.google.com/a/mozilla.org/g/release-signoff/c/xXhHFz8Ko6Q Example email]
#** [https://groups.google.com/a/mozilla.org/g/release-drivers/c/kCYe68Gglng Example email]
# Once the merge is complete, verify that the [https://treeherder.mozilla.org/jobs?repo=mozilla-release Treeherder] tests green/starred
# Once the merge is complete, verify that the [https://treeherder.mozilla.org/jobs?repo=mozilla-release Treeherder] tests green/starred
# Set up Desktop build in [https://shipit.mozilla-releng.net/ Ship-It].
# Set up Desktop build in [https://shipit.mozilla-releng.net/ Ship-It].
## Connect to the VPN.
## Connect to the VPN.
## Log into [https://shipit.mozilla-releng.net/ Ship-It].
## Log into [https://shipit.mozilla-releng.net/ Ship-It].
## Click New Release.
## Click Releases > Firefox > New.
##* [[File:shit-it_new_release.png|600px|center|middle]]
##* [[File:Screenshot 2025-10-07 at 1.22.06 PM.png|600px|thumb|center|NewReleaseShipit]]
## Complete as follows and click Create Release:
## Complete as follows and click Create Release:
##* [[File:Screen Shot 2022-06-07 at 9.26.10 AM.png|thumb|center]]
##* [[File:Screen Shot 2022-06-07 at 9.26.10 AM.png|thumb|center]]
Line 471: Line 522:
# Confirm notification sent when Firefox Android builds finish.
# Confirm notification sent when Firefox Android builds finish.
# Push Firefox Android (AC, Fenix, Focus) release in Ship-It via Push.
# Push Firefox Android (AC, Fenix, Focus) release in Ship-It via Push.
# Confirm notification sent when the Firefox Android (AC, Fenix, Focus) push finishes
# Confirm notification sent when the Firefox Android (AC, Fenix, Focus) push finishes.
# Turn on managed publishing in the Play Console for Fenix/Focus/Klar.
# Manually create a Fenix/Focus/Klar release on the Production track with a 5% rollout.
# Submit the Fenix/Focus/Klar release for Play Store review.
# Submit the Fenix/Focus release for Samsung Store review with a 5% rollout.
#* Please Note: The submission is automatically created as part of the push.
#* Delete the N-2 version so that only the previous release and RC packages remain.
#* Set to publish manually, the review should complete during RC week.
# Submit the Fenix release for Huawei AppGallery Open Testing to release immediately
#* Please Note: The submission is separate from the release track
#* Create a new release (also considered an update) in Huawei App Gallery Connect
#* Make sure to select "Yes" for open testing.
#* [[File:Screenshot 2025-10-07 at 1.42.02 PM.png|600px|center]]
#* In the packages section, Upload the arm64-v8a apk (Huawei only allows one build per submission).
#* [[File:Screenshot 2025-10-07 at 1.42.15 PM.png|600px|center]]
#* Set to release immediately (only option when selecting open-testing)
# Submit the Fenix release for Huawei AppGallery on the Release track review with a 5% rollout.
#* Make sure to select "No" for open testing
#* All other information should be copied over from the previous submission.
#* Set to at 5% with the end date being the Wednesday after the release date, this is when it will rollout to 100% automatically
#** [[File:Screenshot 2025-10-07 at 1.42.31 PM.png|600px|center]]
# Push Desktop to Beta at 100% from Ship-It via Ship RC.
# Push Desktop to Beta at 100% from Ship-It via Ship RC.
#* [[File:Screenshot 2022-06-07 at 09-32-46 RelMan Activities Overview.png|thumb|center]]
#* [[File:Screenshot 2022-06-07 at 09-32-46 RelMan Activities Overview.png|thumb|center]]
Line 496: Line 567:
## Submit to the store for review
## Submit to the store for review
#* Please see [https://docs.microsoft.com/en-us/windows/uwp/publish/app-submissions App submissions] documentation for additional information on the Microsoft Store submission process.
#* Please see [https://docs.microsoft.com/en-us/windows/uwp/publish/app-submissions App submissions] documentation for additional information on the Microsoft Store submission process.
==The following tasks need to be performed at the start of RC week (week before go-live) for iOS ==
'''Firefox/Focus/Klar iOS'''
# Check if there are any missing backports from the previous release.
#* Ensure that any backports from the dot releases on the previous version were also backported.
# Check if there are any pending PRs for the firefox-ios release branch.
#* [https://github.com/mozilla-mobile/firefox-ios/pulls firefox-ios]
#* Example Filter: ''is:pr is:open base:release/v115''
# Sync with the iOS team for Hard Freeze.
#* Ask on [https://mozilla.slack.com/archives/C03PKCHHSSD #firefox-ios-releases] Slack channel
#* See [https://mozilla.slack.com/archives/C03PKCHHSSD/p1687795018726399 Example]
# Run the Firefox:import translations (strings sync) action, set the target branch to the release branch (ex: ''release/v118'').
#* See documentation [https://github.com/mozilla-mobile/firefox-ios/wiki/Localization-Process#github-action-import-process here].
# Trigger the firefox-ios SPM_Deploy_Prod_Beta bitrise build workflow for the release branch.
# Trigger the firefox-ios focus_Release bitrise build workflow for the release branch.
# Verify that Firefox iOS release is available in TestFlight.
#* [https://appstoreconnect.apple.com/apps/989804926/testflight Firefox TestFlight]
# Verify the Focus/Klar release is available in TestFlight.
#* [https://appstoreconnect.apple.com/apps/1055677337/testflight Firefox Focus TestFlight]
#* [https://appstoreconnect.apple.com/apps/1073435754/testflight Firefox Klar TestFlight]


==As available, the following should be monitored/performed during RC week for Desktop/Android==
==As available, the following should be monitored/performed during RC week for Desktop/Android==
# Phabricator patches for remote-settings updates are generated automatically. Typically this is every Monday and Thursday. These patches must be included in release/esr uplifts.
# Phabricator patches for remote-settings updates are generated automatically. Typically this is every Monday and Thursday. These patches must be included in release/esr uplifts.
#* Monitor email notifications sent by Phabricator: “No Bug, mozilla-release repo-update HSTS HPKP remote-settings tld-suffixes”/“No Bug, mozilla-esr91 repo-update HSTS HPKP remote-settings tld-suffixes”
#* Monitor email notifications sent by Phabricator: “No Bug, mozilla-release repo-update HSTS HPKP remote-settings tld-suffixes”/“No Bug, mozilla-esr91 repo-update HSTS HPKP remote-settings tld-suffixes”
#* Review the patch.
#* Review and land the patch.
#* Commit the patch to release/esr via the moz-phab tool
#** ''moz-phab patch <patch id> --no-bookmark --apply-to here''
#* Edit the commit message to add the approval.
# Update the Weekly Digest document, as requested on [https://mozilla.slack.com/archives/C01TTHGPSKB #fx-weekly-digest].
# Update the Weekly Digest document, as requested on [https://mozilla.slack.com/archives/C01TTHGPSKB #fx-weekly-digest].
#* Update the Release Milestones (Details) section to add Status (On Track, Delayed), Ship Date.
#* Update the Release Milestones (Details) section to add Status (On Track, Delayed), Ship Date.
Line 536: Line 582:
# Verify that QA have signed off update tests on release-localtest
# Verify that QA have signed off update tests on release-localtest
#* QA will post a message to the [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack channel when they complete update testing and another message when they complete functional testing.   
#* QA will post a message to the [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack channel when they complete update testing and another message when they complete functional testing.   
# Monitor for QA sign-off on Fenix/Focus build validation before proceeding with Steps 7 to 12.
# Monitor for QA sign-off on Fenix/Focus build validation before proceeding with Steps 7 to 10.
#* Please Note: Build Validation sign-off is usually provided the day after Fenix/Focus builds are produced.
#* Please Note: Build Validation sign-off is usually provided the day after Fenix/Focus builds are produced.
#* Focus and Fenix QA sign-off are sent via [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack Channel.
#* Focus and Fenix QA sign-off are sent via [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack Channel.
# Roll out Fenix to the Production track at 5% in google play
# Turn off managed publishing in the Play Console for Fenix to allow it to roll out to 5% once the app is reviewed
#* See [https://play.google.com/console/u/0/developers/7083182635971239206/app/4972519468758466290/app-dashboard?timespan=thirtyDays Firefox Fast & Private Browser]
#* See [https://play.google.com/console/u/0/developers/7083182635971239206/app/4972519468758466290/app-dashboard?timespan=thirtyDays Firefox Fast & Private Browser]
#* Reply to the QA sign-off slack message
#* Reply to the QA sign-off slack message
#** “Thanks, pushed to Production at 5% rollout.”
#** “Thanks, pushed to Production at 5% rollout.”
# Roll out Focus/Klar to the Production track at 5% and Open Testing track at 100% in google play
# Turn off managed publishing in the Play Console to allow it to roll out to 5% once the app is reviewed and push it to the Open Testing track at 100%
#* See [https://play.google.com/console/u/0/developers/7083182635971239206/app/4972436558672701695/app-dashboard?timespan=thirtyDays Firefox Focus: No Fuss Browser] and [https://play.google.com/console/u/0/developers/7083182635971239206/app/4974004938716340515/app-dashboard?timespan=thirtyDays Firefox Klar Browser]
#* See [https://play.google.com/console/u/0/developers/7083182635971239206/app/4972436558672701695/app-dashboard?timespan=thirtyDays Firefox Focus: No Fuss Browser] and [https://play.google.com/console/u/0/developers/7083182635971239206/app/4974004938716340515/app-dashboard?timespan=thirtyDays Firefox Klar Browser]
#* Reply to the QA sign-off slack message
#* Reply to the QA sign-off slack message
#** “Thanks, pushed to Production at 5% rolled out.
#** “Thanks, pushed to Production at 5% rolled out.
# Upload [https://seller.samsungapps.com/application/main.as?contentId=000002975732&platform=&readOnly=Y#/cert/info Fenix to Samsung Store] with 5% rollout when approved
# Publish Fenix/Focus on the Samsung Store.
#* Upload ARM32 and ARM64 APKs (armeabi-v7a/arm64-v8a)
#* Please note: It can take up to 2 days for review, so it might still be pending.
#** The APKs are available as an artifact in the signing-apk job from the Promote graph.
# Publish Fenix to the Huawei App Gallery.
#* Set the rollout rate to 5%
#* You can edit the percentage or release to all users
#* Set to publish automatically
#* Please note: It can take up to 2 days for review.
# Upload [https://seller.samsungapps.com/application/main.as?contentId=000003397900&platform=&readOnly=Y#/cert/info Focus to Samsung Store] with 5% rollout when approved
#* Perform the same steps as Step 9
 
==As available, the following should be monitored/performed during RC week for iOS==
'''Focus iOS'''
# Monitor for QA sign-off on Focus iOS build validation before proceeding with Steps 2 and 3.
#* Please Note: Build Validation sign-off is usually provided the day after the builds are produced.
#* Focus iOS QA sign-off is sent via [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack Channel.
# Submit iOS Focus and iOS Klar in the AppStore for review.
#* Select a phased rollout when submitting.
#* Select to automatically release after App Store Review on Sunday night Eastern prior to go-live (i.e. go-live date -2)
#** Note: If the Monday of go-live week is a Canadian public holiday, then set the automatic release date to Monday night Eastern instead.
# Tag the release in GitHub in the firefox-ios repo using the format `focus/klar-vXXX.X`
#* Wait until the Friday of RC week to avoid tagging if another RC is needed
#* [https://github.com/mozilla-mobile/firefox-ios/releases firefox-ios/releases]
#* See [https://github.com/mozilla-mobile/firefox-ios/releases/tag/focus%2Fklar-v124.1 Example]
 
'''Firefox iOS'''
# Monitor for QA sign-off on Firefox iOS build validation before proceeding with Steps 2 to 6.
#* Please Note: Build Validation sign-off is usually provided the day after the builds are produced.
#* Firefox iOS QA sign-off is sent via [https://mozilla.slack.com/archives/CAC9YSH3P #qa-coordination] Slack Channel.
# Add the External Beta Testers group to the Firefox Beta TestFlight Build
# Gather Firefox iOS release notes.
#* This can be done in parallel to the Desktop/Android release note gathering.
#* The store release notes are needed before submitting.
# Submit Firefox iOS in the AppStore for review.
#* Select a phased rollout when submitting.
#* Select to automatically release after App Store Review on Sunday night Eastern 10PM (Monday 2AM GMT) prior to go-live (i.e. go-live date -2)
#** Note: If the Monday of go-live week is a Canadian public holiday, then set the automatic release date to Monday night Eastern instead.
# Tag the release in GitHub in the firefox-ios repo using the format `firefox-vXXX.X`
#* Wait until the Friday of RC week to avoid tagging if another RC is needed
#* [https://github.com/mozilla-mobile/firefox-ios/releases firefox-ios/releases]
#* See [https://github.com/mozilla-mobile/firefox-ios/releases/tag/firefox-v124.0 Example]
 
'''General iOS tasks'''
# Bump the Firefox iOS version in the release branch to XXX.1
#* Wait until the Friday of RC week to avoid bumping the version if another RC is needed


=RC Uplifts=
=RC Uplifts=
Line 654: Line 661:
# Ensure that the security advisories are ready
# Ensure that the security advisories are ready
#* Check with the security team on the [https://mozilla.slack.com/archives/C495VS94P #security] Slack channel
#* Check with the security team on the [https://mozilla.slack.com/archives/C495VS94P #security] Slack channel
# Verify that the RC build candidate is available in the [https://launchpad.net/~mozilla-snaps/firefox/+snap/firefox-snap-stable Ubuntu Snap Store]


==The following tasks need to be performed on go-live day==
==The following tasks need to be performed on go-live day==
# Make release notes live in [https://nucleus.mozilla.org/ Nucleus]
#* Please Note: There is a [https://www.mozilla.org/healthz-cron/ 15-30min] lag between making the change in Nucleus and the live website picking up this change, so plan to do this 15-30min prior to go-live.
# Schedule push to release at 25% from [https://shipit.mozilla-releng.net/ Ship-It]
# Schedule push to release at 25% from [https://shipit.mozilla-releng.net/ Ship-It]
# Bump Fenix rollout rate in the play store to 25%
# Bump Fenix rollout rate in the play store to 25%
Line 664: Line 674:
# Bump Focus rollout rate in the [https://seller.samsungapps.com/application/main.as?contentId=000003397900&platform=&readOnly=Y#/cert/info Samsung Store]  to 25%
# Bump Focus rollout rate in the [https://seller.samsungapps.com/application/main.as?contentId=000003397900&platform=&readOnly=Y#/cert/info Samsung Store]  to 25%
# Ship Firefox Android (AC, Fenix, Focus) from Ship-It via Ship
# Ship Firefox Android (AC, Fenix, Focus) from Ship-It via Ship
# Verify that the [https://partner.microsoft.com/en-us/dashboard/products/9NZVDKPMR9RD/overview Microsoft Store] is published at 25% rollout
# Make release notes live in [https://nucleus.mozilla.org/ Nucleus]
#* Please Note: There is a [https://www.mozilla.org/healthz-cron/ 15-30min] lag between making the change in Nucleus and the live website picking up this change, so plan to do this 15-30min prior to go-live.
# Upload security advisories to GitHub
# Upload security advisories to GitHub
# Signoff on scheduled rule change in [https://balrog.services.mozilla.com/rules?product=Firefox&channel=release Balrog]
# Signoff on scheduled rule change in [https://balrog.services.mozilla.com/rules?product=Firefox&channel=release Balrog]
#* Set the rollout percentage to 25%
#* Set the rollout percentage to 25%
#* Sync with release management for another team member to signoff on the rule change.
#* Sync with release management for another team member to signoff on the rule change.
# Verify that the new release is live on [https://www.mozilla.org/firefox/all/ mozilla.org]
# Verify that the release notes are live [https://www.mozilla.org/en-US/firefox/releases/ here]
# Verify that security advisories are live [https://www.mozilla.org/en-US/security/advisories/ here]
# Verify that the [https://partner.microsoft.com/en-us/dashboard/products/9NZVDKPMR9RD/overview Microsoft Store] is published at 25% rollout
# Ship new Desktop release in Ubuntu Snap Store with a phased rollout starting a 25%
#* See [https://github.com/mozilla-releng/releasewarrior-2.0/blob/master/docs/release-promotion/desktop/ubuntu-snap.md#promote-a-snap-to-the-stable-channel Promote a snap to the stable channel] for more information
# Send Slack message to [https://mozilla.slack.com/archives/C6HD6P4TF #release-coordination] to notify of the release
# Send Slack message to [https://mozilla.slack.com/archives/C6HD6P4TF #release-coordination] to notify of the release
#* For example “Firefox Desktop 115.0, ESR 115.0.0, Fenix/Focus/Klar Android 115.0, and Firefox/Focus/Klar iOS 115.0 are live”
#* For example “Firefox Desktop 115.0, ESR 115.0.0, Fenix/Focus/Klar Android 115.0, and Firefox/Focus/Klar iOS 115.0 are live”
#* Include links to the release notes.
#* Include links to the release notes.
# Verify that the new release is live on [https://www.mozilla.org/firefox/all/ mozilla.org]
# Verify that the release notes are live [https://www.mozilla.org/en-US/firefox/releases/ here]
# Verify LATEST_FIREFOX_VERSION in [https://product-details.mozilla.org/1.0/firefox_versions.json firefox_versions.json]
# Verify LATEST_FIREFOX_VERSION in [https://product-details.mozilla.org/1.0/firefox_versions.json firefox_versions.json]
# Verify that security advisories are live [https://www.mozilla.org/en-US/security/advisories/ here]
# Ship new Desktop release in Ubuntu Snap Store
#* See [https://github.com/mozilla-releng/releasewarrior-2.0/blob/master/docs/release-promotion/desktop/ubuntu-snap.md#promote-a-snap-to-the-stable-channel Promote a snap to the stable channel] for more information
# Verify that the release is live on Flathub
# Verify that the release is live on Flathub
#* The `release-flatpak-push-firefox` job runs as part of the ship graph and the publication is handled by Flathub.
#* The `release-flatpak-push-firefox` job runs as part of the ship graph and the publication is handled by Flathub.
Line 708: Line 716:
# Bump the [https://partner.microsoft.com/en-us/dashboard/products/9NZVDKPMR9RD/overview Microsoft Store] rollout to 100%.
# Bump the [https://partner.microsoft.com/en-us/dashboard/products/9NZVDKPMR9RD/overview Microsoft Store] rollout to 100%.
#* Click Finalize package rollout
#* Click Finalize package rollout
# End the phased rollout in the Ubuntu Snap Store
#* Only if it has not already rolled out to 100%.
# Currently not supported via the web UI, but can be done via the snapcraft cli. See [https://documentation.ubuntu.com/snapcraft/latest/how-to/publishing/manage-revisions-and-releases/#close-the-release close the release] for more information.
# Review fenix/focus release crash rates, incoming bugs for new blockers, and spike/trend in negative play store reviews.
# Review fenix/focus release crash rates, incoming bugs for new blockers, and spike/trend in negative play store reviews.
#* Check to see if there is anything concerning that would prevent completing the rollout.
#* Check to see if there is anything concerning that would prevent completing the rollout.
Line 723: Line 734:
# Update the Weekly Digest document, as requested on [https://mozilla.slack.com/archives/C01TTHGPSKB #fx-weekly-digest].
# Update the Weekly Digest document, as requested on [https://mozilla.slack.com/archives/C01TTHGPSKB #fx-weekly-digest].
#* Update the Release Milestones (Details) section to add status on the release, dot release, etc.
#* Update the Release Milestones (Details) section to add status on the release, dot release, etc.
=iOS XXX.1 - XXX.3 Checklist=
Perform the same steps as *iOS XXX.0 Checklist* but with the following exceptions:
* Do not build Focus iOS
* If the QA sign-off is still yellow/red by Thursday during the version stabilization week, then that version will not ship.
** We will "burn" the version number and proceed with the next version branch on Friday as scheduled.




Line 741: Line 760:
* Is the patch uplifted to release?
* Is the patch uplifted to release?
* Does the bug need a release note?
* Does the bug need a release note?
* Is the patch for a security bug?
* Any additional notes
* Any additional notes
** For example, outline why the bug is being taken in a dot release.
** For example, outline why the bug is being taken in a dot release.
Line 782: Line 802:
##* If an app is still pending review on a closed track then you cannot promote it to a production track.
##* If an app is still pending review on a closed track then you cannot promote it to a production track.
##* See [https://support.google.com/googleplay/android-developer/answer/9859348?hl=en Prepare and roll out a release] for more information.
##* See [https://support.google.com/googleplay/android-developer/answer/9859348?hl=en Prepare and roll out a release] for more information.
## Submit the Fenix/Focus/Klar release for review.
## Submit the Fenix/Focus/Klar release for Play Store review.
##* Keep the same release notes as the major release. Add any new notes at the top prefixed by the dot release version.
##* Keep the same release notes as the major release. Add any new notes at the top prefixed by the dot release version.
##* With managed publishing turned on, the app will not automatically release after the store review.
##* With managed publishing turned on, the app will not automatically release after the store review.
## Submit the Fenix/Focus release for Samsung Store review with a 25% rollout and set to publish automatically
##* This allows the review to go through slightly faster
##* Set the publish time to later in the go-live day. This gives enough time to react if the build fails QA
# Follow the same process as monitoring when an RC build has QA sign-off with the following exceptions:
# Follow the same process as monitoring when an RC build has QA sign-off with the following exceptions:
## Turn off [https://support.google.com/googleplay/android-developer/answer/9859654?hl=en managed publishing] in the Play Console.
## Turn off [https://support.google.com/googleplay/android-developer/answer/9859654?hl=en managed publishing] in the Play Console.
238

edits