ignore if adb root fails and prints more logging info for diagnosis

Change-Id: I7fa2776db5c2c43e2d872e9004e2e18b67e428ef
diff --git a/utils/python/controllers/android_device.py b/utils/python/controllers/android_device.py
index 607400a..7269a95 100644
--- a/utils/python/controllers/android_device.py
+++ b/utils/python/controllers/android_device.py
@@ -333,20 +333,19 @@
 
     @property
     def isBootloaderMode(self):
-        """True if the device is in bootloader mode.
-        """
+        """True if the device is in bootloader mode."""
         return self.serial in list_fastboot_devices()
 
     @property
     def isAdbRoot(self):
-        """True if adb is running as root for this device.
-        """
-        return "root" in self.adb.shell("id -u").decode("utf-8")
+        """True if adb is running as root for this device."""
+        id_str = self.adb.shell("id -u").decode("utf-8")
+        self.log.info(id_str)
+        return "root" in id_str
 
     @property
     def model(self):
-        """The Android code name for the device.
-        """
+        """The Android code name for the device."""
         # If device is in bootloader mode, get mode name from fastboot.
         if self.isBootloaderMode:
             out = self.fastboot.getvar("product").strip()
@@ -393,10 +392,13 @@
             setattr(self, k, v)
 
     def rootAdb(self):
-        """Change adb to root mode for this device.
-        """
+        """Changes adb to root mode for this device."""
         if not self.isAdbRoot:
-            self.adb.root()
+            try:
+                self.adb.root()
+            except adb.AdbError as e:
+                # adb root is not always possible in the lab
+                logging.exception(e)
             self.adb.wait_for_device()
             self.adb.remount()
             self.adb.wait_for_device()