| # Copyright 2014 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. |
| |
| |
| # Recipe for the Skia PerCommit Housekeeper. |
| |
| |
| import calendar |
| |
| PYTHON_VERSION_COMPATIBILITY = "PY3" |
| |
| DEPS = [ |
| 'checkout', |
| 'doxygen', |
| 'recipe_engine/file', |
| 'recipe_engine/path', |
| 'recipe_engine/properties', |
| 'run', |
| 'vars', |
| ] |
| |
| |
| def RunSteps(api): |
| # Checkout, compile, etc. |
| api.vars.setup() |
| checkout_root = api.checkout.default_checkout_root |
| api.checkout.bot_update(checkout_root=checkout_root) |
| api.file.ensure_directory('makedirs tmp_dir', api.vars.tmp_dir) |
| |
| # TODO(borenet): Detect static initializers? |
| |
| skia_dir = checkout_root.join('skia') |
| if not api.vars.is_trybot: |
| api.doxygen.generate_and_upload(skia_dir) |
| |
| |
| def GenTests(api): |
| yield ( |
| api.test('Housekeeper-PerCommit') + |
| api.properties(buildername='Housekeeper-PerCommit', |
| repository='https://skia.googlesource.com/skia.git', |
| revision='abc123', |
| path_config='kitchen', |
| swarm_out_dir='[SWARM_OUT_DIR]') + |
| api.path.exists(api.path.start_dir) |
| ) |
| yield ( |
| api.test('Housekeeper-PerCommit-Trybot') + |
| api.properties(buildername='Housekeeper-PerCommit', |
| repository='https://skia.googlesource.com/skia.git', |
| revision='abc123', |
| path_config='kitchen', |
| patch_issue='456789', |
| patch_set='11', |
| patch_ref='refs/changes/89/456789/12', |
| patch_repo='https://skia.googlesource.com/skia.git', |
| patch_storage='gerrit', |
| swarm_out_dir='[SWARM_OUT_DIR]') + |
| api.path.exists(api.path.start_dir) |
| ) |