ReleaseEngineering/How To/Create new ESR branch: Difference between revisions
(say how to update graphs databases) |
(update with templates for bugs to be filed) |
||
Line 54: | Line 54: | ||
== Update TBPL == | == Update TBPL == | ||
# Add new trees to TBPL. See {{bug|808017}} for | # Add new trees to TBPL, using [https://bugzilla.mozilla.org/enter_bug.cgi?alias=&assigned_to=nobody%40mozilla.org&attach_text=&blocked=&bug_file_loc=http%3A%2F%2F&bug_severity=normal&bug_status=NEW&cf_status_b2g18=---&cf_status_b2g18_1_0_0=---&cf_status_b2g18_1_0_1=---&cf_status_b2g_1_1_hd=---&cf_status_firefox22=---&cf_status_firefox23=---&cf_status_firefox24=---&cf_status_firefox25=---&cf_status_firefox_esr17=---&cf_tracking_b2g18=---&cf_tracking_firefox22=---&cf_tracking_firefox23=---&cf_tracking_firefox24=---&cf_tracking_firefox25=---&cf_tracking_firefox_esr17=---&cf_tracking_firefox_relnote=---&cf_tracking_relnote_b2g=---&comment=&component=Tinderboxpushlog&contenttypeentry=&contenttypemethod=autodetect&contenttypeselection=text%2Fplain&data=&defined_groups=1&dependson=&description=&flag_type-4=X&flag_type-607=X&flag_type-791=X&flag_type-800=X&form_name=enter_bug&keywords=&maketemplate=Remember%20values%20as%20bookmarkable%20template&op_sys=All&priority=--&product=Webtools&qa_contact=&rep_platform=All&requestee_type-4=&requestee_type-607=&requestee_type-791=&requestee_type-800=&short_desc=Update%20TBPL%20with%20XXXXXX&status_whiteboard=&target_milestone=---&version=Trunk this template] (See {{bug|808017}} for example, be sure to file in webtools::tinderboxpushlog). | ||
# Test after landing by seeing trees displayed as expected on [https://intranet.mozilla.org/Websites/Stage_Passwords#TBPL tbpl staging]. | # Test after landing by seeing trees displayed as expected on [https://intranet.mozilla.org/Websites/Stage_Passwords#TBPL tbpl staging]. | ||
# Requires deployment. Ed Morley can deploy it via chief. For urgent needs, IT can also deploy (see {{bug|809543}}, be sure to cc ":edmorley" on IT bug if you choose to file - often worth also checking for any other undeployed changes, in case they are not ready to push). | # Requires deployment - request using [https://bugzilla.mozilla.org/enter_bug.cgi?alias=&assigned_to=emorley%40mozilla.com&attach_text=&blocked=&bug_file_loc=http%3A%2F%2F&bug_severity=normal&bug_status=ASSIGNED&cc=ryanvm%40gmail.com&cc=kwierso%40gmail.com&cc=cbook%40mozilla.com&cc=philringnalda%40gmail.com&cf_status_b2g18=---&cf_status_b2g18_1_0_0=---&cf_status_b2g18_1_0_1=---&cf_status_b2g_1_1_hd=---&cf_status_firefox22=---&cf_status_firefox23=---&cf_status_firefox24=---&cf_status_firefox25=---&cf_status_firefox_esr17=---&cf_tracking_b2g18=---&cf_tracking_firefox22=---&cf_tracking_firefox23=---&cf_tracking_firefox24=---&cf_tracking_firefox25=---&cf_tracking_firefox_esr17=---&cf_tracking_firefox_relnote=---&cf_tracking_relnote_b2g=---&comment=https%3A%2F%2Fhg.mozilla.org%2Fwebtools%2Ftbpl%2Fpushloghtml%3Ffromchange%3DYYYYYYYYYYY%26tochange%3DZZZZZZZZZZZZ&component=Tinderboxpushlog&contenttypeentry=&contenttypemethod=autodetect&contenttypeselection=text%2Fplain&data=&defined_groups=1&dependson=&description=&flag_type-4=X&flag_type-607=X&flag_type-791=X&flag_type-800=X&flag_type-803=X&form_name=enter_bug&keywords=&maketemplate=Remember%20values%20as%20bookmarkable%20template&op_sys=All&priority=--&product=Webtools&qa_contact=&rep_platform=All&requestee_type-4=&requestee_type-607=&requestee_type-791=&requestee_type-800=&short_desc=Update%20TBPL%20production%20to%20ZZZZZZZZZZ&status_whiteboard=&target_milestone=---&version=Trunk this template]. Fill in pushlog url based on [https://tbpl.mozilla.org/cache/revision_info.txt revision_info.txt] for the prior changeset, or leave blank. Ed Morley can deploy it via chief. For urgent needs, IT can also deploy (see {{bug|809543}}, be sure to cc ":edmorley" on IT bug if you choose to file - often worth also checking for any other undeployed changes (see pushlog url), in case they are not ready to push). | ||
<small><em>Deployment process & details from [https://bugzil.la/816775 Ed].</em></small> | <small><em>Deployment process & details from [https://bugzil.la/816775 Ed].</em></small> | ||
Revision as of 16:39, 23 July 2013
This process also works, with slight (obvious?) modifications for new twigs and b2g gecko branches. ESR17 process was tracked by bug 796995 and the dependent bugs. The process can be split into 2 major parts: internal and external
Internal changes
This covers changes to configs, buildbotcustom and tools.
buildbotcustom changes for ESR17 were not critical and are not ESR specific.
tools changes
- adds new release branch to production-masters.json file
- adds new branch to buildapi's production-branches.json file
- since the config patch introduces new configurations file which are need to be symlinked to the build/scheduler master there is a need for a fabric methods to create the links
- mozconfig whitelist changes (tested in bug 808077)
- preproduction tweaks
buildbot-configs changes
Some highlights:
- Explicitly list the platforms (and use lock_platforms) since we don't ship ESR to all mozilla-central/release platforms (android, for example)
- Copy mozilla-beta configs, compare them to the previous ESR release and check if you understand what they stand for
- No dep/nightly L10N builds required, as a result no need to create Tinderbox trees
- check mozilla-beta exceptions (loops) and check if they are aplicable to the current ESR
- for every exception (MERGE DAY exceptions) file a bug to track it
- you may need to add shortening code for new branches
- be sure to run test-masters.sh to verify
- see, e.g. https://hg.mozilla.org/build/buildbotcustom/annotate/b863ef3d9559/common.py#l128
New release configs
- Make sure that the following variables set
releaseConfig['partialUpdates'] = {} releaseConfig['skip_updates'] = True releaseConfig['verifyConfigs'] = {} releaseConfig['ftpSymlinkName'] = 'latest-esr'
- File new tracking bug for the next minor esr release (17.0.1esr) to update these variables
- update previous release configs and set
releaseConfig['ftpSymlinkName'] = 'latest-10.0esr'
- add mozilla2/*/comm-esr17/release/l10n-mozconfig for every platform. Copy them from mozilla-beta and compare to the previous esr configs
- add mozilla2/linux/comm-esr17/release/mozconfig (linux only). We need this for source builder. Will be fixed by bug 748796
External changes
Ask IT to clone repos
See bug 807979 for the details. We usually clone ~1-2 weeks in advance off beta to test how automation works.
Add new branches to treestatus.m.o
Ask a treestatus admin to add the trees. Notice that Thunderbird trees have -thunderbird suffix (comm-esr17-thunderbird). (as of bug 823618, tree addition & deletion require admin rights. Current admins include sheriffs, catlee, hwine. See bug 877948 for futures.)
Update tree closure hooks
See bug 807983 for the details (fyi, ted has given us blanket approval to land branch-name-only updates - have someone else double check). Requires deployment by IT (see bug 807694).
Update graphs.m.o and graphs.allizom.org with
Graph server schema changes. Requires both sql update (bug 808007) & deployment to both staging and production servers using a process similar to slavealloc updates. (releng has add permissions, so IT deployment bug 808537 no longer needed except for deleting mistakes). (Use copy/modify/paste for all elements. Note that branch name is given in tbpl capitalization format.
Update TBPL
- Add new trees to TBPL, using this template (See bug 808017 for example, be sure to file in webtools::tinderboxpushlog).
- Test after landing by seeing trees displayed as expected on tbpl staging.
- Requires deployment - request using this template. Fill in pushlog url based on revision_info.txt for the prior changeset, or leave blank. Ed Morley can deploy it via chief. For urgent needs, IT can also deploy (see bug 809543, be sure to cc ":edmorley" on IT bug if you choose to file - often worth also checking for any other undeployed changes (see pushlog url), in case they are not ready to push).
Deployment process & details from Ed.
Update AUS2
Adds new entries for nightly builds. See bug 808543 for the details. Requires IT deployment (see bug 808543) Project and inbound branches usually do not have nightly builds.
Also need to create some symlinks for mac:
ssh aus3-staging.mozilla.org # using your ldap username, VPN running sudo su - ffxbld cd /opt/aus2/incoming/2/Firefox mkdir mozilla-esrNN # where NN is your new version ln -s Darwin_x86_64-gcc3 Darwin_x86_64-gcc3-u-i386-x86_64 ln -s Darwin_x86_64-gcc3 Darwin_x86-gcc3-u-i386-x86_64
Testing
CI builds
Make sure to run all esr and some other builds in staging. Run leak test and nightly builds 2 times to allow them to generate leak log and partial updates.
Release builds
Make sure to run a staging release. It takes less time then usual build, because there are no updates to be generated.
Ship it!
Close the bug and have some tea. :)