Calendar:HowToRelease

Revision as of 04:49, 23 May 2007 by Ctalbert (talk | contribs)

Release Process

NOTES:

  • ${BRANCH_TAG} is the header for the BRANCH - for sunbird 0.5 this was SUNBIRD_0_5, other releases should follow the same convention

Create a branch

1. Create a branch from the branch you are releasing from this creates a ${BRANCH_TAG}_BRANCH from the MOZILLA_1_8_BRANCH, you also need to note the time this was done on a page like Calendar:Release:Sunbird_0.5.

cvs rtag -r MOZILLA_1_8_BRANCH -b ${BRANCH_TAG}_BRANCH mozilla
Note time this is done: May 22, 21:37 CDT

2. Test that the branch was properly created by checking out from the branch.

 cvs co -r ${BRANCH_TAG}_BRANCH mozilla/calendar 

Change the Version Number

  • You check out the branch you just created - use standard "check out code from mozilla cvs method", just substitute in the new branch for your branch parameter
  • On this branch, you change the follwing:
   * calendar/sunbird/app/module.ver
   * calendar/sunbird/config/version.txt
  • Then you:
cvs -d ${CVSROOT} co -r ${BRANCH_TAG}_BRANCH\
 mozilla/calendar/sunbird/app/module.ver mozilla/calendar/sunbird/config/version.txt

Create a minibranch

cvs tag -b ${BRANCH_TAG}_MINIBRANCH calendar/sunbird/app/module.ver \
 calendar/sunbird/config/version.txt
cvs up -r ${BRANCH_TAG}_MINIBRANCH calendar/sunbird/app/module.ver \
 calendar/sunbird/config/version.txt
cvs ci -m"bumping version number on calendar/sunbird on minibranch only"
  • remove firefox stuff from calendar/lightning/install.rdf

Tag the release

  • run "date" before you start and use this as date stamp.
  • the date should be in UTC and have this format: "yyyy-mm-dd hh:mm +0000"
  • You need to use an RC here in case we have RC builds that way RCs will move forward to the release (you can have multiple RC's but there is only one release) so ${RC} becomes 1 for the first attempt to release 0.5
screen
cd .. (one up from mozilla)
mkdir -p tags/${BRANCH_TAG}_RC${RC}
cd tags && ln -s ${BRANCH_TAG}_RC${RC} ${BRANCH_TAG}_RELEASE && \
  ln -s ${BRANCH_TAG}_RC${RC} ${BRANCH_TAG}_RELEASE

Next, check out mozilla/client.mk and any <something>/config/mozconfig files you need with statements like this:

  
  cvs co \
  -r $BRANCH_TAG \
  -D "$PULL_DATE" \
  mozilla/client.mk
  becomes: cvs co -r ${BRANCH_TAG}_BRANCH -D "2007-05-23 04:00 +0000" mozilla/client.mk