Chromium Code Reviews| Index: tools/mb/mb.py |
| diff --git a/tools/mb/mb.py b/tools/mb/mb.py |
| index b03f03a7a4648eeee6afa97f529a2575bddc8fd6..f8ebdf4bd49473ab57c2810ffe99f86d7dbb6e6b 100755 |
| --- a/tools/mb/mb.py |
| +++ b/tools/mb/mb.py |
| @@ -262,7 +262,8 @@ class MetaBuildWrapper(object): |
| return 1 |
| if vals['type'] == 'gn': |
| - return self.RunGNIsolate(vals) |
| + gn_isolate_map = self.ReadGnIsolateMap() |
| + return self.RunGNIsolate(vals, gn_isolate_map) |
| else: |
| return self.Build('%s_run' % self.args.target[0]) |
| @@ -288,11 +289,15 @@ class MetaBuildWrapper(object): |
| target = self.args.target[0] |
| if vals['type'] == 'gn': |
| + gn_isolate_map = self.ReadGnIsolateMap() |
| + build_target = target |
| + if gn_isolate_map[target]['type'] == 'android_instrumentation': |
| + build_target = target + '_apk' |
|
jbudorick
2016/04/28 03:11:57
:(
|
| if self.args.build: |
| - ret = self.Build(target) |
| + ret = self.Build(build_target) |
| if ret: |
| return ret |
| - ret = self.RunGNIsolate(vals) |
| + ret = self.RunGNIsolate(vals, gn_isolate_map) |
| if ret: |
| return ret |
| else: |
| @@ -754,8 +759,7 @@ class MetaBuildWrapper(object): |
| output_path=None) |
| contents = self.ReadFile(path) |
| swarming_targets = set(contents.splitlines()) |
| - gn_isolate_map = ast.literal_eval(self.ReadFile(self.PathJoin( |
| - self.chromium_src_dir, 'testing', 'buildbot', 'gn_isolate_map.pyl'))) |
| + gn_isolate_map = self.ReadGnIsolateMap() |
| gn_labels = [] |
| err = '' |
| for target in swarming_targets: |
| @@ -828,10 +832,11 @@ class MetaBuildWrapper(object): |
| return 0 |
| - def RunGNIsolate(self, vals): |
| - gn_isolate_map = ast.literal_eval(self.ReadFile(self.PathJoin( |
| + def ReadGnIsolateMap(self): |
| + return ast.literal_eval(self.ReadFile(self.PathJoin( |
| self.chromium_src_dir, 'testing', 'buildbot', 'gn_isolate_map.pyl'))) |
| + def RunGNIsolate(self, vals, gn_isolate_map): |
| build_dir = self.args.path[0] |
| target = self.args.target[0] |
| target_name = self.GNTargetName(target) |
| @@ -990,6 +995,8 @@ class MetaBuildWrapper(object): |
| # TODO(jbudorick): This won't work with instrumentation test targets. |
| # Revisit this logic when those are added to gn_isolate_map.pyl. |
| cmdline = [self.PathJoin('bin', 'run_%s' % target_name)] |
| + if gn_isolate_map[target]['type'] == 'android_instrumentation': |
| + cmdline[0] += '_apk' |
| elif use_x11 and test_type == 'windowed_test_launcher': |
| extra_files = [ |
| 'xdisplaycheck', |