Release Management/Release Notes

< Release Management
Revision as of 22:11, 3 March 2015 by Lizhenry (talk | contribs) (→‎Product Details: tip about how to get the revision number)

Release Notes

The release notes are managed through the Nucleus interface available on https://nucleus.mozilla.org/.

Release notes are using the tracking flag relnote-firefox:. By default, the value "?" is going to be set and some information requested (wording proposed, documentation/URL, etc). Release management checks this flag regularly.

Aurora and Beta Cycles

For the first aurora release, from the nucleus interface:

  • Create a new aurora release
  • Copy the requirements and description from the previous aurora release
  • Make sure that is_public is disabled
  • Ask for review to the various relevant teams (the list is available in the Release Team Calendar)
  • Enable is_public on the aurora release day

For the first beta release, from the nucleus interface:

  • Copy the aurora release (is_public is going to be disabled)
  • Update the title
  • Update the date
  • Ask for review (cf aurora)
  • Enable is_public on the beta release day

During the aurora/beta cycle:

  • Scan the relnote-firefox "?" flags
  • Try to find some important unresolved bugs
  • Check if some features have not been disabled


Release

  • Same step as Beta
  • Once the notes have been signed off and the release is live, is_public has to be turn on.


Product Details

How to update

Note that in the history classes, there's a stability release section for .1s and a release section for .0s.

Need to checkout libs/product-details:
     svn co svn+ssh://'youremail'@svn.mozilla.org/libs/product-details product-details
### in product-details 
 
% ls
README                       json                         regionDetails.class.php
export_json.php              localeDetails.class.php      regions
firefoxDetails.class.php     mobileDetails.class.php      thunderbirdBuildDetails.php
firefoxDetails.class.php~    mobileDetails.class.php~     thunderbirdDetails.class.php
history                      productDetails.class.php

% vim LATEST_FIREFOX_DEVEL_VERSION.php
# update to most recent version
-    const LATEST_FIREFOX_DEVEL_VERSION = '33.0b4';
+    const LATEST_FIREFOX_DEVEL_VERSION = '33.0b5';

% vim LATEST_FIREFOX_RELEASED_DEVEL_VERSION.php
# update to most recent version
-    const LATEST_FIREFOX_RELEASED_DEVEL_VERSION = '33.0b4';
+    const LATEST_FIREFOX_RELEASED_DEVEL_VERSION = '33.0b5';

% vim mobile_beta_version.php
# bump the const
-const beta_version_ = '33.0b2';
+const beta_version_ = '33.0b4';

% vim history/firefoxHistory.class.php
# add the newest version
                 '11.0b3' => '2012-02-17',
+                '11.0b4' => '2012-02-24',

% vim history/mobileHistory.class.php 
# add the newest version
                 '11.0b3' => '2012-02-17',
+                '11.0b4' => '2012-02-24',

% svn status
M       history/mobileHistory.class.php
M       history/firefoxHistory.class.php
M       firefoxDetails.class.php
M       mobileDetails.class.php

% ./export_json.php 
% svn status
M       history/mobileHistory.class.php
M       history/firefoxHistory.class.php
M       firefoxDetails.class.php
M       mobileDetails.class.php
M       json/firefox_primary_builds.json
M       json/firefox_history_development_releases.json
M       json/mobile_details.json
M       json/mobile_history_development_releases.json
M       json/firefox_versions.json
M       json/firefox_beta_builds.json

% svn ci -m "11.0b4 released"
Sending        firefoxDetails.class.php
Sending        history/firefoxHistory.class.php
Sending        history/mobileHistory.class.php
Sending        json/firefox_beta_builds.json
Sending        json/firefox_history_development_releases.json
Sending        json/firefox_primary_builds.json
Sending        json/firefox_versions.json
Sending        json/mobile_details.json
Sending        json/mobile_history_development_releases.json
Sending        mobileDetails.class.php
Transmitting file data ..........
Committed revision 102190.
# grab this commit rev

### Now edit the mozilla.com repo
### you will need to go up a directory and checkout mozilla.com
### svn co svn+ssh://'youremail'@svn.mozilla.org/projects/mozilla.com mozilla.com
### you can make sure you have the current commit number that has your changes, by checking on http://svn.mozilla.org/libs/product-details/

% svn propedit svn:externals tags/stage/includes
# paste in the new commit rev from the libs/product-details push & save
Set new value for property 'svn:externals' on 'tags/stage/includes'

% svn propedit svn:externals tags/production/includes
# paste in the new commit rev from the libs/product-details push & save
Set new value for property 'svn:externals' on 'tags/production/includes'

# probably want to update before trying to commit these
% svn up

% svn diff

Property changes on: tags/stage/includes
___________________________________________________________________
Modified: svn:externals
   - product-details -r101880 http://svn.mozilla.org/libs/product-details
certs http://svn.mozilla.org/libs/certs
   + product-details -r102190 http://svn.mozilla.org/libs/product-details
certs http://svn.mozilla.org/libs/certs


Property changes on: tags/production/includes
___________________________________________________________________
Modified: svn:externals
   - product-details -r101880 http://svn.mozilla.org/libs/product-details
certs http://svn.mozilla.org/libs/certs
   + product-details -r102190 http://svn.mozilla.org/libs/product-details
certs http://svn.mozilla.org/libs/certs



% svn ci -m "11.0b4 released"                        
Sending        tags/production/includes
Sending        tags/stage/includes
Committed revision 102191.

Updating Web Buttons

Now that the product-details and mozilla.com externals have been updated, you want the buttons on pages like:

To have the correct binary download links. This requires VPN access, and bedrock permissions - you should be able to see a big red button on this page

You'll need a password for this page (it's a single pw) and you want to put in:

username, password, and then "master" for the 'ref' space.

Click the BIG RED BUTTON and you should get output that bedrock is updating but you might get a blank page (which is a bug, but not a big deal because the end result is still correct) and within 10 minutes, the web pages will be refreshed with the current information.


Troubleshooting

  • If you get an error like "svn: Entry '/Users/synergy/Dropbox/Mozilla/relman/mozilla-europe.org/trunk/sv-SE' has unexpectedly changed special status" when trying to commit, do a revert `svn revert -R .` then `svn up` and try again, if that still fails - re-pull the repo.