diff options
author | 2017-01-13 13:37:53 -0500 | |
---|---|---|
committer | 2017-01-17 12:58:30 +0000 | |
commit | 6441a4645be53e124ec88b8f6c59b8ca2ca4b427 (patch) | |
tree | 91892859ad02d4267d6f494dee5284254bb9b12b /infra/bots/recipe_modules/vars | |
parent | 2103cf0ff09763aeaa35508734f765aec9b75665 (diff) |
Move recipe modules to shared repo
BUG=skia:6070
Change-Id: I6c487e77ddfddb6164b983981dff5ee8ae870376
Reviewed-on: https://skia-review.googlesource.com/6946
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Diffstat (limited to 'infra/bots/recipe_modules/vars')
-rw-r--r-- | infra/bots/recipe_modules/vars/__init__.py | 13 | ||||
-rw-r--r-- | infra/bots/recipe_modules/vars/api.py | 210 |
2 files changed, 0 insertions, 223 deletions
diff --git a/infra/bots/recipe_modules/vars/__init__.py b/infra/bots/recipe_modules/vars/__init__.py deleted file mode 100644 index e74431efac..0000000000 --- a/infra/bots/recipe_modules/vars/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2016 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -DEPS = [ - 'builder_name_schema', - 'recipe_engine/json', - 'recipe_engine/path', - 'recipe_engine/properties', - 'recipe_engine/python', - 'recipe_engine/raw_io', - 'recipe_engine/step', -] diff --git a/infra/bots/recipe_modules/vars/api.py b/infra/bots/recipe_modules/vars/api.py deleted file mode 100644 index 537a682165..0000000000 --- a/infra/bots/recipe_modules/vars/api.py +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright 2016 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - - -# pylint: disable=W0201 - - -from recipe_engine import recipe_api - - -CONFIG_DEBUG = 'Debug' -CONFIG_RELEASE = 'Release' - - -class SkiaVarsApi(recipe_api.RecipeApi): - - def make_path(self, *path): - """Return a Path object for the given path.""" - key = 'custom_%s' % '_'.join(path) - self.m.path.c.base_paths[key] = tuple(path) - return self.m.path[key] - - def setup(self): - """Prepare the variables.""" - # Setup - self.builder_name = self.m.properties['buildername'] - self.master_name = self.m.properties['mastername'] - self.slave_name = self.m.properties['slavename'] - self.build_number = self.m.properties['buildnumber'] - - self.slave_dir = self.m.path['start_dir'] - self.checkout_root = self.slave_dir - self.default_env = {} - self.gclient_env = {} - self.is_compile_bot = self.builder_name.startswith('Build-') - self.no_buildbot = self.m.properties.get('nobuildbot', '') == 'True' - self.skia_task_id = self.m.properties.get('skia_task_id', None) - - self.default_env['CHROME_HEADLESS'] = '1' - # The 'depot_tools' directory comes from recipe DEPS and isn't provided by - # default. We have to set it manually. - self.m.path.c.base_paths['depot_tools'] = ( - self.m.path.c.base_paths['start_dir'] + - ('skia', 'infra', 'bots', '.recipe_deps', 'depot_tools')) - if 'Win' in self.builder_name: - self.m.path.c.base_paths['depot_tools'] = ( - 'c:\\', 'Users', 'chrome-bot', 'depot_tools') - - # Compile bots keep a persistent checkout. - self.persistent_checkout = (self.is_compile_bot or - 'RecreateSKPs' in self.builder_name or - '-CT_' in self.builder_name or - 'Presubmit' in self.builder_name or - 'InfraTests' in self.builder_name or - self.builder_name == "Housekeeper-PerCommit") - if self.persistent_checkout: - if 'Win' in self.builder_name: - self.checkout_root = self.make_path('C:\\', 'b', 'work') - self.gclient_cache = self.make_path('C:\\', 'b', 'cache') - else: - self.checkout_root = self.make_path('/', 'b', 'work') - self.gclient_cache = self.make_path('/', 'b', 'cache') - - # got_revision is filled in after checkout steps. - self.got_revision = None - else: - # If there's no persistent checkout, then we have to asume we got the - # correct revision of the files from isolate. - self.got_revision = self.m.properties['revision'] - - self.skia_dir = self.checkout_root.join('skia') - if not self.persistent_checkout: - self.m.path['checkout'] = self.skia_dir - - self.infrabots_dir = self.skia_dir.join('infra', 'bots') - self.resource_dir = self.skia_dir.join('resources') - self.images_dir = self.slave_dir.join('skimage') - self.skia_out = self.skia_dir.join('out', self.builder_name) - self.swarming_out_dir = self.make_path(self.m.properties['swarm_out_dir']) - self.local_skp_dir = self.slave_dir.join('skp') - self.local_svg_dir = self.slave_dir.join('svg') - if not self.is_compile_bot: - self.skia_out = self.slave_dir.join('out') - self.tmp_dir = self.m.path['start_dir'].join('tmp') - - # Some bots also require a checkout of chromium. - self.need_chromium_checkout = False - if 'CommandBuffer' in self.builder_name: - self.need_chromium_checkout = True - self.gclient_env['GYP_CHROMIUM_NO_ACTION'] = '0' - if 'RecreateSKPs' in self.builder_name: - self.need_chromium_checkout = True - self.gclient_env['CPPFLAGS'] = ( - '-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1') - - # Some bots also require a checkout of PDFium. - self.need_pdfium_checkout = 'PDFium' in self.builder_name - - self.builder_cfg = self.m.builder_name_schema.DictForBuilderName( - self.builder_name) - self.role = self.builder_cfg['role'] - if self.role == self.m.builder_name_schema.BUILDER_ROLE_HOUSEKEEPER: - self.configuration = CONFIG_RELEASE - else: - self.configuration = self.builder_cfg.get('configuration', CONFIG_DEBUG) - arch = (self.builder_cfg.get('arch') or self.builder_cfg.get('target_arch')) - if ('Win' in self.builder_cfg.get('os', '') and arch == 'x86_64'): - self.configuration += '_x64' - - self.default_env.update({'SKIA_OUT': self.skia_out, - 'BUILDTYPE': self.configuration}) - - self.patch_storage = self.m.properties.get('patch_storage', 'rietveld') - self.issue = None - self.patchset = None - if self.no_buildbot: - self.is_trybot = False - if (self.m.properties.get('issue', '') and - self.m.properties.get('patchset', '')): - self.is_trybot = True - self.issue = self.m.properties['issue'] - self.patchset = self.m.properties['patchset'] - elif (self.m.properties.get('patch_issue', '') and - self.m.properties.get('patch_set', '')): - self.is_trybot = True - self.issue = self.m.properties['patch_issue'] - self.patchset = self.m.properties['patch_set'] - else: - self.is_trybot = self.builder_cfg['is_trybot'] - if self.is_trybot: - if self.patch_storage == 'gerrit': - self.issue = self.m.properties['patch_issue'] - self.patchset = self.m.properties['patch_set'] - else: - self.issue = self.m.properties['issue'] - self.patchset = self.m.properties['patchset'] - - self.dm_dir = self.m.path.join( - self.swarming_out_dir, 'dm') - self.perf_data_dir = self.m.path.join(self.swarming_out_dir, - 'perfdata', self.builder_name, 'data') - self._swarming_bot_id = None - self._swarming_task_id = None - - # Data should go under in _data_dir, which may be preserved across runs. - self.android_data_dir = '/sdcard/revenge_of_the_skiabot/' - # Executables go under _bin_dir, which, well, allows executable files. - self.android_bin_dir = '/data/local/tmp/' - - @property - def upload_dm_results(self): - # TODO(borenet): Move this into the swarm_test recipe. - skip_upload_bots = [ - 'ASAN', - 'Coverage', - 'MSAN', - 'TSAN', - 'UBSAN', - 'Valgrind', - ] - upload_dm_results = True - for s in skip_upload_bots: - if s in self.m.properties['buildername']: - upload_dm_results = False - break - return upload_dm_results - - @property - def upload_perf_results(self): - # TODO(borenet): Move this into the swarm_perf recipe. - if 'Release' not in self.m.properties['buildername']: - return False - skip_upload_bots = [ - 'ASAN', - 'Coverage', - 'MSAN', - 'TSAN', - 'UBSAN', - 'Valgrind', - ] - upload_perf_results = True - for s in skip_upload_bots: - if s in self.m.properties['buildername']: - upload_perf_results = False - break - return upload_perf_results - - @property - def swarming_bot_id(self): - if not self._swarming_bot_id: - self._swarming_bot_id = self.m.python.inline( - name='get swarming bot id', - program='''import os -print os.environ.get('SWARMING_BOT_ID', '') -''', - stdout=self.m.raw_io.output()).stdout.rstrip() - return self._swarming_bot_id - - @property - def swarming_task_id(self): - if not self._swarming_task_id: - self._swarming_task_id = self.m.python.inline( - name='get swarming task id', - program='''import os -print os.environ.get('SWARMING_TASK_ID', '') -''', - stdout=self.m.raw_io.output()).stdout.rstrip() - return self._swarming_task_id - |