OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 """Base class for all slave-side build steps. """ | 5 """Base class for all slave-side build steps. """ |
6 | 6 |
7 import config | 7 import config |
8 # pylint: disable=W0611 | 8 # pylint: disable=W0611 |
9 import flavor_utils | 9 import flavor_utils |
10 import imp | 10 import imp |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 self._make_flags = shlex.split(args['make_flags'].replace('"', '')) | 184 self._make_flags = shlex.split(args['make_flags'].replace('"', '')) |
185 self._test_args = shlex.split(args['test_args'].replace('"', '')) | 185 self._test_args = shlex.split(args['test_args'].replace('"', '')) |
186 self._gm_args = shlex.split(args['gm_args'].replace('"', '')) | 186 self._gm_args = shlex.split(args['gm_args'].replace('"', '')) |
187 self._gm_args.append('--serialize') | 187 self._gm_args.append('--serialize') |
188 self._bench_args = shlex.split(args['bench_args'].replace('"', '')) | 188 self._bench_args = shlex.split(args['bench_args'].replace('"', '')) |
189 self._is_try = args['is_try'] == 'True' | 189 self._is_try = args['is_try'] == 'True' |
190 | 190 |
191 self._default_make_flags = [] | 191 self._default_make_flags = [] |
192 self._default_ninja_flags = [] | 192 self._default_ninja_flags = [] |
193 | 193 |
194 # TODO(epoger): Throughout the buildbot code, we use various terms to refer | |
195 # to the same thing: "skps", "pictures", "replay", "playback". | |
196 # We should pick one of those terms, and rename things so that we are | |
197 # consistent. | |
198 # See https://codereview.chromium.org/295753002/ for additional discussion. | |
199 | |
200 # Adding the playback directory transfer objects. | 194 # Adding the playback directory transfer objects. |
201 self._local_playback_dirs = LocalSkpPlaybackDirs( | 195 self._local_playback_dirs = LocalSkpPlaybackDirs( |
202 self._builder_name, | 196 self._builder_name, |
203 None if args['perf_output_basedir'] == 'None' | 197 None if args['perf_output_basedir'] == 'None' |
204 else args['perf_output_basedir']) | 198 else args['perf_output_basedir']) |
205 self._storage_playback_dirs = StorageSkpPlaybackDirs( | 199 self._storage_playback_dirs = StorageSkpPlaybackDirs( |
206 self._builder_name, | 200 self._builder_name, |
207 None if args['perf_output_basedir'] == 'None' | 201 None if args['perf_output_basedir'] == 'None' |
208 else args['perf_output_basedir']) | 202 else args['perf_output_basedir']) |
209 | 203 |
210 self.skp_dir = self._local_playback_dirs.PlaybackSkpDir() | 204 self.skp_dir = self._local_playback_dirs.PlaybackSkpDir() |
211 self.playback_actual_images_dir = ( | 205 self.skp_out_dir = self._local_playback_dirs.PlaybackImageResultsDir() |
212 self._local_playback_dirs.PlaybackActualImagesDir()) | |
213 self.playback_actual_summaries_dir = ( | |
214 self._local_playback_dirs.PlaybackActualSummariesDir()) | |
215 self.playback_expected_summaries_dir = ( | |
216 self._local_playback_dirs.PlaybackExpectedSummariesDir()) | |
217 | 206 |
218 # Figure out where we are going to store performance related data. | 207 # Figure out where we are going to store performance related data. |
219 if args['perf_output_basedir'] != 'None': | 208 if args['perf_output_basedir'] != 'None': |
220 self._perf_data_dir = os.path.join(args['perf_output_basedir'], | 209 self._perf_data_dir = os.path.join(args['perf_output_basedir'], |
221 self._builder_name, 'data') | 210 self._builder_name, 'data') |
222 self._perf_graphs_dir = os.path.join(args['perf_output_basedir'], | 211 self._perf_graphs_dir = os.path.join(args['perf_output_basedir'], |
223 self._builder_name, 'graphs') | 212 self._builder_name, 'graphs') |
224 self._perf_range_input_dir = os.path.join( | 213 self._perf_range_input_dir = os.path.join( |
225 args['perf_output_basedir'], self._builder_name, 'expectations') | 214 args['perf_output_basedir'], self._builder_name, 'expectations') |
226 self._perf_autogen_upload_dir = os.path.join( | 215 self._perf_autogen_upload_dir = os.path.join( |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
391 else: | 380 else: |
392 raise BuildStepFailure('Build step failed.') | 381 raise BuildStepFailure('Build step failed.') |
393 except Exception: | 382 except Exception: |
394 print traceback.format_exc() | 383 print traceback.format_exc() |
395 if attempt + 1 >= step.attempts: | 384 if attempt + 1 >= step.attempts: |
396 raise | 385 raise |
397 # pylint: disable=W0212 | 386 # pylint: disable=W0212 |
398 step._WaitFunc(attempt) | 387 step._WaitFunc(attempt) |
399 attempt += 1 | 388 attempt += 1 |
400 print '**** %s, attempt %d ****' % (StepType.__name__, attempt + 1) | 389 print '**** %s, attempt %d ****' % (StepType.__name__, attempt + 1) |
OLD | NEW |