DROID!

If you have one of those shiny new Motorola Droid phones, every time something exciting happens (phone runs out of battery, you plug it in to the computer, you get an email etc) the phone says “DROID!”.  So in the spirit of that, let me share a picture with you:

Mochitests running on Android

DROID!

So, what, exactly, is this?  It’s Fennec running our Mochitests on an Android Harmony Development Board.  Now, you can see why I’m excited! DROID!

This is the tip of the iceberg.  We have a quite a bit more to do, I’ll file bugs for these tomorrow, but I want to get this down right now while I’m still thinking about it (in no particular order):

  • Finish the patch on bug 563860 – Joel and I have to work out a problem that patch has with how it figures out the xre-path to use to start httpd.js
  • Work out a better way for the devicemanager.py & sutagent to agree on where data gets stored – I’m thinking once I get an SDCard for the board, this will get a bit easier
  • When we first made the sutAgents & the devicemanager.py we assumed we would always be able to build our path to the installed application on the device.  That isn’t true with Android.  So, we need to figure out a way to not make “educated guesses” as to where Fennec gets installed.
  • We also can’t make any assumptions about what that executable name is: org.mozilla.fennec is the name, and it isn’t a directory.  For instance there is no “org.mozilla.fennec/chrome”.  So those shortcuts will have to be refactored.
  • We also need to actually install fennec automatically — still working that one out (I did this one by hand).
  • We need to land the Android SUTAgent in mozilla-central and build it from there (it’s been in our automation repo up to now).  We have to do this because we dev sign the Fennec build and in order to have the sutAgent and Fennec be able to see each other’s data directories, then they need to have a shared ID and be signed with the same certificate.  Bob and I have a patch for Fennec for this.  And I’ll have a patch to add the Android agent to the tree along with a real makefile (I used a very hacked up makefile to make this work tonight).
  • Fennec did launch with the correct profile, but it did not launch with the correct URL.  I had to hand-type the URL.  I’ll file a bug on this tomorrow.

So, that’s where we are right now.  Thanks a bunch to Bob and Joel for helping us get to this point.

DROID!

3 Comments:

  1. Great news. It’s also worth detailing that nightly builds of fennec for Android are now available for download and testing at:

    http://ftp.mozilla.org/pub/mozilla.org/mobile/nightly/latest-mobile-trunk/

  2. An update: I got this working and took that picture around 7:15PM last night. I got in at 8AM this morning, and it managed to run quite a while. It never made it out of the “content” tests, but here are the stats:
    Hung on: tests/content/html/content/test/test_bug417760.html
    Passed: 13,990
    Failed: 154,581
    Todo: 34

    This is pretty interesting because the first time we bring up a test harness, it rarely runs for more than a minute or two. It’s pretty spectacular that it ran as long as it did (unchunked, all tests, for those keeping that score).

  3. this is really awesome stuff. Automation up and running when builds are available…sounds like nirvana!

Leave a Reply