| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # | 2 # |
| 3 # Copyright 2013 The Chromium Authors. All rights reserved. | 3 # Copyright 2013 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 """A class to keep track of devices across builds and report state.""" | 7 """A class to keep track of devices across builds and report state.""" |
| 8 | 8 |
| 9 import argparse | 9 import argparse |
| 10 import json | 10 import json |
| 11 import logging | 11 import logging |
| 12 import os | 12 import os |
| 13 import psutil | 13 import psutil |
| 14 import re | 14 import re |
| 15 import signal | 15 import signal |
| 16 import sys | 16 import sys |
| 17 | 17 |
| 18 sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) | 18 sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) |
| 19 from devil import devil_env | |
| 20 from devil.android import battery_utils | 19 from devil.android import battery_utils |
| 21 from devil.android import device_blacklist | 20 from devil.android import device_blacklist |
| 22 from devil.android import device_errors | 21 from devil.android import device_errors |
| 23 from devil.android import device_list | 22 from devil.android import device_list |
| 24 from devil.android import device_utils | 23 from devil.android import device_utils |
| 25 from devil.android.sdk import adb_wrapper | 24 from devil.android.sdk import adb_wrapper |
| 26 from devil.utils import lsusb | 25 from devil.utils import lsusb |
| 27 from devil.utils import reset_usb | 26 from devil.utils import reset_usb |
| 28 from devil.utils import run_tests_helper | 27 from devil.utils import run_tests_helper |
| 29 from pylib import constants | 28 from pylib import constants |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 parser.add_argument('--json-output', | 280 parser.add_argument('--json-output', |
| 282 help='Output JSON information into a specified file.') | 281 help='Output JSON information into a specified file.') |
| 283 parser.add_argument('--blacklist-file', help='Device blacklist JSON file.') | 282 parser.add_argument('--blacklist-file', help='Device blacklist JSON file.') |
| 284 parser.add_argument('-v', '--verbose', action='count', default=1, | 283 parser.add_argument('-v', '--verbose', action='count', default=1, |
| 285 help='Log more information.') | 284 help='Log more information.') |
| 286 | 285 |
| 287 args = parser.parse_args() | 286 args = parser.parse_args() |
| 288 | 287 |
| 289 run_tests_helper.SetLogLevel(args.verbose) | 288 run_tests_helper.SetLogLevel(args.verbose) |
| 290 | 289 |
| 291 devil_env.config.Initialize() | |
| 292 | |
| 293 blacklist = (device_blacklist.Blacklist(args.blacklist_file) | 290 blacklist = (device_blacklist.Blacklist(args.blacklist_file) |
| 294 if args.blacklist_file | 291 if args.blacklist_file |
| 295 else None) | 292 else None) |
| 296 | 293 |
| 297 last_devices_path = os.path.join( | 294 last_devices_path = os.path.join( |
| 298 args.out_dir, device_list.LAST_DEVICES_FILENAME) | 295 args.out_dir, device_list.LAST_DEVICES_FILENAME) |
| 299 try: | 296 try: |
| 300 expected_devices = set( | 297 expected_devices = set( |
| 301 device_list.GetPersistentDeviceList(last_devices_path)) | 298 device_list.GetPersistentDeviceList(last_devices_path)) |
| 302 except IOError: | 299 except IOError: |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 365 live_devices = [status['serial'] for status in statuses | 362 live_devices = [status['serial'] for status in statuses |
| 366 if (status['adb_status'] == 'device' | 363 if (status['adb_status'] == 'device' |
| 367 and not _IsBlacklisted(status['serial'], blacklist))] | 364 and not _IsBlacklisted(status['serial'], blacklist))] |
| 368 | 365 |
| 369 # If all devices failed, or if there are no devices, it's an infra error. | 366 # If all devices failed, or if there are no devices, it's an infra error. |
| 370 return 0 if live_devices else constants.INFRA_EXIT_CODE | 367 return 0 if live_devices else constants.INFRA_EXIT_CODE |
| 371 | 368 |
| 372 | 369 |
| 373 if __name__ == '__main__': | 370 if __name__ == '__main__': |
| 374 sys.exit(main()) | 371 sys.exit(main()) |
| OLD | NEW |