hwid: Load device info on the device if a filename is not given.
BUG=chrome-os-partner:19839
TEST=Manually on DUT.
Change-Id: I13eb66c2af6a961ba194ca5d5b01db6bb598a7f9
Reviewed-on: https://gerrit.chromium.org/gerrit/59867
Reviewed-by: Jon Salz <jsalz@chromium.org>
Tested-by: Ricky Liang <jcliang@chromium.org>
Commit-Queue: Ricky Liang <jcliang@chromium.org>
diff --git a/py/gooftool/gooftool.py b/py/gooftool/gooftool.py
index d1d4fbc..228658d 100755
--- a/py/gooftool/gooftool.py
+++ b/py/gooftool/gooftool.py
@@ -39,6 +39,7 @@
from cros.factory.hacked_argparse import verbosity_cmd_arg
from cros.factory.hwdb import hwid_tool
from cros.factory.hwid import common
+from cros.factory.test import shopfloor
from cros.factory.test.factory import FACTORY_LOG_PATH
from cros.factory.utils.process_utils import Spawn
from cros.factory.privacy import FilterDict
@@ -809,18 +810,18 @@
retrieved by probing the DUT. If there are conflits of component information
between device info and probe result, priority is given to device info.
"""
- try:
+ if options.device_info:
with open(options.device_info) as f:
device_info = yaml.load(f.read())
- except Exception, e:
- raise Error, 'Invalid device_info: %s' % e
+ else:
+ device_info = shopfloor.GetDeviceData()
if options.probe_results:
with open(options.probe_results) as f:
probe_results = hwid_tool.ProbeResults.Decode(f.read())
else:
probe_results = Probe()
print 'device_info:'
- print device_info
+ print yaml.dump(device_info)
print 'probe results:'
print probe_results.Encode()