1# Copyright 2017 The Chromium Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5 6DEPS = [ 7 'build', 8 'recipe_engine/path', 9 'recipe_engine/properties', 10 'recipe_engine/raw_io', 11 'run', 12 'vars', 13] 14 15 16def RunSteps(api): 17 api.vars.setup() 18 checkout_root = api.vars.cache_dir.join('work') 19 out_dir = checkout_root.join( 20 'skia', 'out', api.vars.builder_name, api.vars.configuration) 21 api.build(checkout_root=checkout_root, out_dir=out_dir) 22 dst = api.vars.swarming_out_dir.join('out', api.vars.configuration) 23 api.build.copy_build_products(out_dir=out_dir, dst=dst) 24 api.run.check_failure() 25 26 27TEST_BUILDERS = [ 28 'Build-Debian9-Clang-arm-Release-Android_API26', 29 'Build-Debian9-Clang-arm-Release-Android_ASAN', 30 'Build-Debian9-Clang-arm-Release-Chromebook_GLES', 31 'Build-Debian9-Clang-arm-Release-Flutter_Android', 32 'Build-Debian9-Clang-x86-devrel-Android_SKQP', 33 'Build-Debian9-Clang-x86_64-Debug-Chromebook_GLES', 34 'Build-Debian9-Clang-x86_64-Debug-Coverage', 35 'Build-Debian9-Clang-x86_64-Debug-MSAN', 36 'Build-Debian9-Clang-x86_64-Debug-OpenCL', 37 'Build-Debian9-Clang-x86_64-Debug-SK_CPU_LIMIT_SSE41', 38 'Build-Debian9-Clang-x86_64-Debug-SafeStack', 39 'Build-Debian9-Clang-x86_64-Debug-Tidy', 40 'Build-Debian9-Clang-x86_64-Release-ASAN', 41 'Build-Debian9-Clang-x86_64-Release-CMake', 42 'Build-Debian9-Clang-x86_64-Release-Fast', 43 'Build-Debian9-Clang-x86_64-Release-NoDEPS', 44 'Build-Debian9-Clang-x86_64-Release-Static', 45 'Build-Debian9-Clang-x86_64-Release-SwiftShader', 46 'Build-Debian9-Clang-x86_64-Release-Vulkan', 47 'Build-Debian9-EMCC-asmjs-Debug-PathKit', 48 'Build-Debian9-EMCC-asmjs-Release-PathKit', 49 'Build-Debian9-EMCC-wasm-Debug-CanvasKit', 50 'Build-Debian9-EMCC-wasm-Debug-PathKit', 51 'Build-Debian9-EMCC-wasm-Release-CanvasKit_CPU', 52 'Build-Debian9-EMCC-wasm-Release-PathKit', 53 'Build-Debian9-GCC-arm-Release-Chromecast', 54 'Build-Debian9-GCC-loongson3a-Release', 55 'Build-Debian9-GCC-x86_64-Release-ANGLE', 56 'Build-Debian9-GCC-x86_64-Release-NoGPU', 57 'Build-Debian9-GCC-x86_64-Release-Shared', 58 'Build-Mac-Clang-arm64-Debug-Android_Vulkan', 59 'Build-Mac-Clang-arm64-Debug-iOS', 60 'Build-Mac-Clang-x86_64-Debug-ASAN', 61 'Build-Mac-Clang-x86_64-Debug-CommandBuffer', 62 'Build-Mac-Clang-x86_64-Debug-Metal', 63 'Build-Mac-Clang-x86_64-Release-MoltenVK_Vulkan', 64 'Build-Win-Clang-arm64-Release-Android', 65 'Build-Win-Clang-x86-Debug-Exceptions', 66 'Build-Win-Clang-x86_64-Debug-OpenCL', 67 'Build-Win-Clang-x86_64-Release-Vulkan', 68 'Test-Debian9-Clang-GCE-CPU-AVX2-universal-devrel-All-Android_SKQP', 69 'Housekeeper-PerCommit-CheckGeneratedFiles', 70] 71 72# Default properties used for TEST_BUILDERS. 73defaultProps = lambda buildername: dict( 74 buildername=buildername, 75 repository='https://skia.googlesource.com/skia.git', 76 revision='abc123', 77 path_config='kitchen', 78 patch_set=2, 79 swarm_out_dir='[SWARM_OUT_DIR]' 80) 81 82def GenTests(api): 83 for buildername in TEST_BUILDERS: 84 test = ( 85 api.test(buildername) + 86 api.properties(**defaultProps(buildername)) 87 ) 88 yield test 89