Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(201)

Side by Side Diff: scripts/slave/recipe_modules/skia/api.py

Issue 1919193002: build: roll infra_paths changes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 5
6 import json 6 import json
7 import os 7 import os
8 import re 8 import re
9 import sys 9 import sys
10 10
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 149
150 def setup(self, running_in_swarming=False): 150 def setup(self, running_in_swarming=False):
151 """Prepare the bot to run.""" 151 """Prepare the bot to run."""
152 # Setup 152 # Setup
153 self.failed = [] 153 self.failed = []
154 154
155 self.builder_name = self.m.properties['buildername'] 155 self.builder_name = self.m.properties['buildername']
156 self.master_name = self.m.properties['mastername'] 156 self.master_name = self.m.properties['mastername']
157 self.slave_name = self.m.properties['slavename'] 157 self.slave_name = self.m.properties['slavename']
158 158
159 self.slave_dir = self.m.path['slave_build'] 159 self.slave_dir = self.m.infra_paths['slave_build']
160 self.skia_dir = self.slave_dir.join('skia') 160 self.skia_dir = self.slave_dir.join('skia')
161 self.infrabots_dir = self.skia_dir.join('infra', 'bots') 161 self.infrabots_dir = self.skia_dir.join('infra', 'bots')
162 162
163 self.default_env = {} 163 self.default_env = {}
164 if running_in_swarming: 164 if running_in_swarming:
165 self.default_env['CHROME_HEADLESS'] = '1' 165 self.default_env['CHROME_HEADLESS'] = '1'
166 depot_tools = self.slave_dir.join('depot_tools') 166 depot_tools = self.slave_dir.join('depot_tools')
167 self.default_env['PATH'] = '%s:%%(PATH)s' % depot_tools 167 self.default_env['PATH'] = '%s:%%(PATH)s' % depot_tools
168 168
169 # We run through this recipe in one of two ways: 169 # We run through this recipe in one of two ways:
(...skipping 19 matching lines...) Expand all
189 # Set some important variables. 189 # Set some important variables.
190 self.resource_dir = self.skia_dir.join('resources') 190 self.resource_dir = self.skia_dir.join('resources')
191 self.images_dir = self.slave_dir.join('images') 191 self.images_dir = self.slave_dir.join('images')
192 if self.running_in_swarming: 192 if self.running_in_swarming:
193 self.swarming_out_dir = self.m.properties['swarm_out_dir'] 193 self.swarming_out_dir = self.m.properties['swarm_out_dir']
194 self.out_dir = self.slave_dir.join('out') 194 self.out_dir = self.slave_dir.join('out')
195 self.local_skp_dir = self.slave_dir.join('skps') 195 self.local_skp_dir = self.slave_dir.join('skps')
196 else: 196 else:
197 self.out_dir = self.m.path['checkout'].join('out', self.builder_name) 197 self.out_dir = self.m.path['checkout'].join('out', self.builder_name)
198 self.local_skp_dir = self.slave_dir.join('playback', 'skps') 198 self.local_skp_dir = self.slave_dir.join('playback', 'skps')
199 self.tmp_dir = self.m.path['slave_build'].join('tmp') 199 self.tmp_dir = self.m.infra_paths['slave_build'].join('tmp')
200 200
201 self.gsutil_env_chromium_skia_gm = self.gsutil_env(BOTO_CHROMIUM_SKIA_GM) 201 self.gsutil_env_chromium_skia_gm = self.gsutil_env(BOTO_CHROMIUM_SKIA_GM)
202 202
203 self.device_dirs = None 203 self.device_dirs = None
204 self._ccache = None 204 self._ccache = None
205 self._checked_for_ccache = False 205 self._checked_for_ccache = False
206 self.configuration = self.builder_spec['configuration'] 206 self.configuration = self.builder_spec['configuration']
207 self.default_env.update({'SKIA_OUT': self.out_dir, 207 self.default_env.update({'SKIA_OUT': self.out_dir,
208 'BUILDTYPE': self.configuration}) 208 'BUILDTYPE': self.configuration})
209 self.default_env.update(self.builder_spec['env']) 209 self.default_env.update(self.builder_spec['env'])
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 249
250 def _run_once(self, fn, *args, **kwargs): 250 def _run_once(self, fn, *args, **kwargs):
251 if not hasattr(self, '_already_ran'): 251 if not hasattr(self, '_already_ran'):
252 self._already_ran = {} 252 self._already_ran = {}
253 if not fn.__name__ in self._already_ran: 253 if not fn.__name__ in self._already_ran:
254 self._already_ran[fn.__name__] = True 254 self._already_ran[fn.__name__] = True
255 fn(*args, **kwargs) 255 fn(*args, **kwargs)
256 256
257 def update_repo(self, repo): 257 def update_repo(self, repo):
258 """Update an existing repo. This is safe to call without gen_steps.""" 258 """Update an existing repo. This is safe to call without gen_steps."""
259 repo_path = self.m.path['slave_build'].join(repo.name) 259 repo_path = self.m.infra_paths['slave_build'].join(repo.name)
260 if self.m.path.exists(repo_path): 260 if self.m.path.exists(repo_path):
261 if self.m.platform.is_win: 261 if self.m.platform.is_win:
262 git = 'git.bat' 262 git = 'git.bat'
263 else: 263 else:
264 git = 'git' 264 git = 'git'
265 self.m.step('git remote set-url', 265 self.m.step('git remote set-url',
266 cmd=[git, 'remote', 'set-url', 'origin', repo.url], 266 cmd=[git, 'remote', 'set-url', 'origin', repo.url],
267 cwd=repo_path, 267 cwd=repo_path,
268 infra_step=True) 268 infra_step=True)
269 self.m.step('git fetch', 269 self.m.step('git fetch',
270 cmd=[git, 'fetch'], 270 cmd=[git, 'fetch'],
271 cwd=repo_path, 271 cwd=repo_path,
272 infra_step=True) 272 infra_step=True)
273 self.m.step('git reset', 273 self.m.step('git reset',
274 cmd=[git, 'reset', '--hard', repo.revision], 274 cmd=[git, 'reset', '--hard', repo.revision],
275 cwd=repo_path, 275 cwd=repo_path,
276 infra_step=True) 276 infra_step=True)
277 self.m.step('git clean', 277 self.m.step('git clean',
278 cmd=[git, 'clean', '-d', '-f'], 278 cmd=[git, 'clean', '-d', '-f'],
279 cwd=repo_path, 279 cwd=repo_path,
280 infra_step=True) 280 infra_step=True)
281 281
282 def checkout_steps(self): 282 def checkout_steps(self):
283 """Run the steps to obtain a checkout of Skia.""" 283 """Run the steps to obtain a checkout of Skia."""
284 if self.running_in_swarming: 284 if self.running_in_swarming:
285 # We should've obtained the Skia checkout through isolates, so we don't 285 # We should've obtained the Skia checkout through isolates, so we don't
286 # need to perform the checkout ourselves. 286 # need to perform the checkout ourselves.
287 self.m.path['checkout'] = self.m.path['slave_build'].join('skia') 287 self.m.path['checkout'] = self.m.infra_paths['slave_build'].join('skia')
288 self.got_revision = self.m.properties['revision'] 288 self.got_revision = self.m.properties['revision']
289 return 289 return
290 290
291 # Initial cleanup. 291 # Initial cleanup.
292 gclient_cfg = self.m.gclient.make_config() 292 gclient_cfg = self.m.gclient.make_config()
293 skia = gclient_cfg.solutions.add() 293 skia = gclient_cfg.solutions.add()
294 skia.name = 'skia' 294 skia.name = 'skia'
295 skia.managed = False 295 skia.managed = False
296 skia.url = global_constants.SKIA_REPO 296 skia.url = global_constants.SKIA_REPO
297 skia.revision = self.m.properties.get('revision') or 'origin/master' 297 skia.revision = self.m.properties.get('revision') or 'origin/master'
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 self.run( 704 self.run(
705 self.m.python, 705 self.m.python,
706 'Upload DM Results', 706 'Upload DM Results',
707 script=self.resource('upload_dm_results.py'), 707 script=self.resource('upload_dm_results.py'),
708 args=[ 708 args=[
709 self.dm_dir, 709 self.dm_dir,
710 self.got_revision, 710 self.got_revision,
711 self.builder_name, 711 self.builder_name,
712 self.m.properties['buildnumber'], 712 self.m.properties['buildnumber'],
713 self.m.properties['issue'] if self.is_trybot else '', 713 self.m.properties['issue'] if self.is_trybot else '',
714 self.m.path['slave_build'].join('skia', 'common', 'py', 'utils'), 714 self.m.infra_paths['slave_build'].join('skia', 'common', 'py', 'ut ils'),
715 ], 715 ],
716 cwd=self.m.path['checkout'], 716 cwd=self.m.path['checkout'],
717 env=self.gsutil_env_chromium_skia_gm, 717 env=self.gsutil_env_chromium_skia_gm,
718 abort_on_failure=False, 718 abort_on_failure=False,
719 infra_step=True) 719 infra_step=True)
720 720
721 # See skia:2789. 721 # See skia:2789.
722 if ('Valgrind' in self.builder_name and 722 if ('Valgrind' in self.builder_name and
723 self.builder_cfg.get('cpu_or_gpu') == 'GPU'): 723 self.builder_cfg.get('cpu_or_gpu') == 'GPU'):
724 abandonGpuContext = list(args) 724 abandonGpuContext = list(args)
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
809 if self.upload_perf_results: 809 if self.upload_perf_results:
810 self.m.file.makedirs('perf_dir', self.perf_data_dir) 810 self.m.file.makedirs('perf_dir', self.perf_data_dir)
811 self.flavor.copy_directory_contents_to_host( 811 self.flavor.copy_directory_contents_to_host(
812 self.device_dirs.perf_data_dir, self.perf_data_dir) 812 self.device_dirs.perf_data_dir, self.perf_data_dir)
813 813
814 if self.running_in_swarming: 814 if self.running_in_swarming:
815 # If we're running in Swarming, we wrote the results into the Swarming 815 # If we're running in Swarming, we wrote the results into the Swarming
816 # out dir, so we don't need to upload. 816 # out dir, so we don't need to upload.
817 return 817 return
818 818
819 gsutil_path = self.m.path['depot_tools'].join( 819 gsutil_path = self.m.infra_paths['depot_tools'].join(
820 'third_party', 'gsutil', 'gsutil') 820 'third_party', 'gsutil', 'gsutil')
821 upload_args = [self.builder_name, self.m.properties['buildnumber'], 821 upload_args = [self.builder_name, self.m.properties['buildnumber'],
822 self.perf_data_dir, self.got_revision, gsutil_path] 822 self.perf_data_dir, self.got_revision, gsutil_path]
823 if self.is_trybot: 823 if self.is_trybot:
824 upload_args.append(self.m.properties['issue']) 824 upload_args.append(self.m.properties['issue'])
825 self.run(self.m.python, 825 self.run(self.m.python,
826 'Upload %s Results' % target, 826 'Upload %s Results' % target,
827 script=self.resource('upload_bench_results.py'), 827 script=self.resource('upload_bench_results.py'),
828 args=upload_args, 828 args=upload_args,
829 cwd=self.m.path['checkout'], 829 cwd=self.m.path['checkout'],
(...skipping 26 matching lines...) Expand all
856 # Don't bother to include role, which is always Test. 856 # Don't bother to include role, which is always Test.
857 # TryBots are uploaded elsewhere so they can use the same key. 857 # TryBots are uploaded elsewhere so they can use the same key.
858 blacklist = ['role', 'is_trybot'] 858 blacklist = ['role', 'is_trybot']
859 859
860 flat = [] 860 flat = []
861 for k in sorted(self.builder_cfg.keys()): 861 for k in sorted(self.builder_cfg.keys()):
862 if k not in blacklist: 862 if k not in blacklist:
863 flat.append(k) 863 flat.append(k)
864 flat.append(self.builder_cfg[k]) 864 flat.append(self.builder_cfg[k])
865 return flat 865 return flat
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698