Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1593)

Unified Diff: build/android/provision_devices.py

Issue 179333002: Update android device provisioning script to set some reliability settings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Patch for landing Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | build/android/pylib/content_settings.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/android/provision_devices.py
diff --git a/build/android/provision_devices.py b/build/android/provision_devices.py
index a3922469c8e765a221e055635483a6ecf9fc254b..5cf1cc5d5cd36a262244d06366ced7b78caf9fce 100755
--- a/build/android/provision_devices.py
+++ b/build/android/provision_devices.py
@@ -10,6 +10,7 @@ Usage:
./provision_devices.py [-d <device serial number>]
"""
+import logging
import optparse
import os
import re
@@ -19,6 +20,8 @@ import time
from pylib import android_commands
from pylib import constants
+from pylib import device_settings
+
def KillHostHeartbeat():
ps = subprocess.Popen(['ps', 'aux'], stdout = subprocess.PIPE)
@@ -65,6 +68,21 @@ def PushAndLaunchAdbReboot(devices, target):
LaunchHostHeartbeat()
+def _ConfigureLocalProperties(adb):
+ """Set standard readonly testing device properties prior to reboot."""
+ local_props = [
+ 'ro.monkey=1',
+ 'ro.test_harness=1',
+ 'ro.audio.silent=1',
+ 'ro.setupwizard.mode=DISABLED',
+ ]
+ adb.SetProtectedFileContents(android_commands.LOCAL_PROPERTIES_PATH,
+ '\n'.join(local_props))
+ # Android will not respect the local props file if it is world writable.
+ adb.RunShellCommandWithSU('chmod 644 %s' %
+ android_commands.LOCAL_PROPERTIES_PATH)
+
+
def ProvisionDevices(options):
if options.device is not None:
devices = [options.device]
@@ -72,12 +90,22 @@ def ProvisionDevices(options):
devices = android_commands.GetAttachedDevices()
for device in devices:
android_cmd = android_commands.AndroidCommands(device)
+ _ConfigureLocalProperties(android_cmd)
+ device_settings.ConfigureContentSettingsDict(
+ android_cmd, device_settings.DETERMINISTIC_DEVICE_SETTINGS)
+ # TODO(tonyg): We eventually want network on. However, currently radios
+ # can cause perfbots to drain faster than they charge.
+ if 'perf' in os.environ.get('BUILDBOT_BUILDERNAME', '').lower():
+ device_settings.ConfigureContentSettingsDict(
+ android_cmd, device_settings.NETWORK_DISABLED_SETTINGS)
android_cmd.RunShellCommandWithSU('date -u %f' % time.time())
if options.auto_reconnect:
PushAndLaunchAdbReboot(devices, options.target)
def main(argv):
+ logging.basicConfig(level=logging.INFO)
+
parser = optparse.OptionParser()
parser.add_option('-d', '--device',
help='The serial number of the device to be provisioned')
« no previous file with comments | « no previous file | build/android/pylib/content_settings.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698