diff options
author | mtklein <mtklein@chromium.org> | 2016-09-14 11:15:54 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-14 11:15:54 -0700 |
commit | 7de2d40dccdd7db09fcd3460a9bde8cc9082874b (patch) | |
tree | 676790cd1e5fe60014471476149f9a35f710cc1c /infra/bots/recipe_modules/flavor/gn_android_flavor.py | |
parent | 7bbda991af353fbe6b34132132d211d23a3dba8c (diff) |
merge run and check-rc steps
This'll make the 'dm' or 'nanobench' step go red like you'd hope.
The N5 should pass and the N10 and N7 should fail, showing us both sides.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2339713003
Review-Url: https://codereview.chromium.org/2339713003
Diffstat (limited to 'infra/bots/recipe_modules/flavor/gn_android_flavor.py')
-rw-r--r-- | infra/bots/recipe_modules/flavor/gn_android_flavor.py | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/infra/bots/recipe_modules/flavor/gn_android_flavor.py b/infra/bots/recipe_modules/flavor/gn_android_flavor.py index 9cb5b546d4..80952e8c8e 100644 --- a/infra/bots/recipe_modules/flavor/gn_android_flavor.py +++ b/infra/bots/recipe_modules/flavor/gn_android_flavor.py @@ -37,7 +37,7 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): def _adb(self, title, *cmd, **kwargs): self._ever_ran_adb = True - # The only non-infra adb call (check rc) happens to not use _adb(). + # The only non-infra adb steps (dm / nanobench) happen to not use _adb(). if 'infra_step' not in kwargs: kwargs['infra_step'] = True return self._run(title, 'adb', *cmd, **kwargs) @@ -78,6 +78,7 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): def cleanup_steps(self): if self._ever_ran_adb: + self._adb('dump log', 'logcat', '-d') self._adb('reboot', 'reboot') self._adb('kill adb server', 'kill-server') @@ -94,15 +95,19 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): 'push', self.m.vars.tmp_dir.join(sh), _bin_dir) self._adb('clear log', 'logcat', '-c') - self._adb(cmd[0], 'shell', 'sh', _bin_dir + sh) - self._adb('dump log ', 'logcat', '-d') - - self.m.python.inline('check %s rc' % cmd[0], """ + self.m.python.inline('%s' % cmd[0], """ import subprocess import sys - sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat', - '%src']))) - """ % _bin_dir) + bin_dir = sys.argv[1] + sh = sys.argv[2] + subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh]) + try: + sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat', + bin_dir + 'rc']))) + except ValueError: + print "Couldn't read the return code. Probably killed for OOM." + sys.exit(1) + """, args=[_bin_dir, sh]) def copy_file_to_device(self, host, device): self._adb('push %s %s' % (host, device), 'push', host, device) |