diff options
author | Kevin Lubick <kjlubick@google.com> | 2016-11-14 13:42:27 -0500 |
---|---|---|
committer | Kevin Lubick <kjlubick@google.com> | 2016-11-14 20:34:04 +0000 |
commit | b03b5aca54122d72204c17dcf3ef15036dbe120a (patch) | |
tree | 25e38438597b8b08a4525dc4e7e94e464f0810b1 /infra/bots/recipe_modules/flavor/gn_android_flavor.py | |
parent | 2e27207eb43b4459aeaf603636a9570576456618 (diff) |
Add skpbench job
This entails a few parts:
1. Isolating tools/skpbench/ to be used by the perf task.
2. Adding skpbench to BUILD_PRODUCTS_ISOLATE_WHITELIST
3. Add recipe commands to run skpbench. While it is conceptually similar
to nanobench, it doesn't support images nor svgs, only skps, so we don't
need to copy those to devices or bring them in via CIPD.
4. Add recipe commands to parse skpbench output and upload to Perf.
5. Update gen_tasks.go to handle skpbench jobs and tasks.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4551
Change-Id: I09bf0b078067279e138e95eca9316e55539ec735
Reviewed-on: https://skia-review.googlesource.com/4551
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Diffstat (limited to 'infra/bots/recipe_modules/flavor/gn_android_flavor.py')
-rw-r--r-- | infra/bots/recipe_modules/flavor/gn_android_flavor.py | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/infra/bots/recipe_modules/flavor/gn_android_flavor.py b/infra/bots/recipe_modules/flavor/gn_android_flavor.py index c409258134..67c8045b0d 100644 --- a/infra/bots/recipe_modules/flavor/gn_android_flavor.py +++ b/infra/bots/recipe_modules/flavor/gn_android_flavor.py @@ -5,10 +5,6 @@ import default_flavor import subprocess -# Data should go under in _data_dir, which may be preserved across runs. -_data_dir = '/sdcard/revenge_of_the_skiabot/' -# Executables go under _bin_dir, which, well, allows executable files. -_bin_dir = '/data/local/tmp/' """GN Android flavor utils, used for building Skia for Android with GN.""" class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): @@ -17,13 +13,13 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): self._ever_ran_adb = False self.device_dirs = default_flavor.DeviceDirs( - dm_dir = _data_dir + 'dm_out', - perf_data_dir = _data_dir + 'perf', - resource_dir = _data_dir + 'resources', - images_dir = _data_dir + 'images', - skp_dir = _data_dir + 'skps', - svg_dir = _data_dir + 'svgs', - tmp_dir = _data_dir) + dm_dir = self.m.vars.android_data_dir + 'dm_out', + perf_data_dir = self.m.vars.android_data_dir + 'perf', + resource_dir = self.m.vars.android_data_dir + 'resources', + images_dir = self.m.vars.android_data_dir + 'images', + skp_dir = self.m.vars.android_data_dir + 'skps', + svg_dir = self.m.vars.android_data_dir + 'svgs', + tmp_dir = self.m.vars.android_data_dir) def _strip_environment(self): self.m.vars.default_env = {k: v for (k,v) @@ -120,14 +116,15 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): def step(self, name, cmd, env=None, **kwargs): app = self.m.vars.skia_out.join(self.m.vars.configuration, cmd[0]) self._adb('push %s' % cmd[0], - 'push', app, _bin_dir) + 'push', app, self.m.vars.android_bin_dir) sh = '%s.sh' % cmd[0] self.m.run.writefile(self.m.vars.tmp_dir.join(sh), 'set -x; %s%s; echo $? >%src' % - (_bin_dir, subprocess.list2cmdline(map(str, cmd)), _bin_dir)) + (self.m.vars.android_bin_dir, subprocess.list2cmdline(map(str, cmd)), + self.m.vars.android_bin_dir)) self._adb('push %s' % sh, - 'push', self.m.vars.tmp_dir.join(sh), _bin_dir) + 'push', self.m.vars.tmp_dir.join(sh), self.m.vars.android_bin_dir) self._adb('clear log', 'logcat', '-c') self.m.python.inline('%s' % cmd[0], """ @@ -142,7 +139,7 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils): except ValueError: print "Couldn't read the return code. Probably killed for OOM." sys.exit(1) - """, args=[_bin_dir, sh]) + """, args=[self.m.vars.android_bin_dir, sh]) def copy_file_to_device(self, host, device): self._adb('push %s %s' % (host, device), 'push', host, device) |