Gaia/UpdatingNightlyBranch

From MozillaWiki
Jump to: navigation, search

Intro

This page is dedicated to people granted to update the Gaia Nightly branch. It's an how-to from repo fetch to repo merge with specific set of 27 smoketests in the middle.

Set up your local B2G environment

Follow the steps in the links to get a basic environment

Customize your environment to get the b2g18 fresh build

$ cd /home/b2g
$ hg clone http://hg.mozilla.org/releases/mozilla-b2g18 b2g18
$ cd b2g18
$ rm -rf out objdir-gecko

Create a .userconfig file to point to your fresh repo

$ cat > .userconfig << EOF
export VARIANT=user
export GECKO_PATH=/home/b2g/b2g18
EOF

Setting up the local Gaia repo

This page is dedicated to people granted to update the Gaia Nightly branch. It's an how-to from repo fetch to repo merge with specific set of 27 smoketests in the middle.

clone the repo ("yourgithubfork" is the name of your github fork)

create your local branches

  • cd gaia
  • git remote add upstream git://github.com/mozilla-b2g/gaia.git
  • git fetch upstream
  • git merge upstream/master
  • git checkout -b nightly
  • git checkout upstream/nightly
  • git checkout nightly
  • git branch
  • git fetch upstream
  • git merge upstream/nightly nightly
  • git merge upstream/nightly
  • git branch

Do the 27 smoketest list

We are reporting the smoke tests results into a googlespreadsheet. One spreadsheet per week starting on Monday. ie: https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AqDJxnTd7VDLdDRKOE1uanE3M3FtMDBOVjRIV253S1E#gid=66

Report the gecko and gaia change sets into the spreadsheet

Update GECKO

In your b2g18 gecko rep get the latest code source

  • hg pull -u

Get the change set and report it in the spreadsheet

  • hg tip

Build and flash gecko

cd ..
./build.sh gecko && ./flash.sh gecko

Update Gaia

be sure to be on your master branch

  • git checkout master
  • git fetch upstream
  • git merge upstream/master

get the change set and report it in the spreadsheet

  • git log -1

flash your phone with the new gaia

  • make reset-gaia

Do the smoke tests and fill the spreadsheet

  • If the test pass the cell background must be green
  • if the test fails
    • creates an issue in bugzilla
    • copy/paste the issue in the spreadsheet
    • the cell background must be red

Update the nightly branch to release Gaia Nightly

'The Nightly branch should be updated only if at least comms app and Browser are working:'

  • make/receive a call
  • make/receive a message
  • Browser is usable
  • add a picture from camera in Contact App is usable

in your Gaia repo, merge your local master into your local nightly branch

  • git checkout nightly
  • git merge master nightly

update your nightly branch in your remote fork

  • git push origin nightly

in a browser open Github at your gaia fork page

  • https://github.com/yourgithubfork/gaia
  • click the "Pull Request" button
  • on the base repo choose "nightly"
  • on the head repo choose "nightly"
  • click merge
  • scroll to the end of the page and choose "Merge automatically"
  • confirm the merge
  • Done

If you decide to hold Gaia Nightly

Send an email to dev-gaia@lists.mozilla.org with the list of issues that prevent Gaia Nightly branch to be updated.