xref: /aosp_15_r20/external/skia/infra/bots/recipe_modules/gsutil/examples/full.py (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
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
6# Recipe which runs the Skia gsutils tests.
7
8PYTHON_VERSION_COMPATIBILITY = "PY3"
9
10DEPS = [
11  'gsutil',
12  'recipe_engine/path',
13  'recipe_engine/properties',
14  'recipe_engine/step',
15  'run',
16  'vars',
17]
18
19
20def RunSteps(api):
21  api.vars.setup()
22  api.gsutil.cp('test file', '/foo/file', 'gs://bar-bucket/file',
23                extra_gsutil_args=['--blah'], extra_args=['-Z'],
24                multithread=True)
25
26def GenTests(api):
27  yield (
28      api.test('gsutil_tests') +
29      api.properties(buildername='Housekeeper-PerCommit-InfraTests',
30                     repository='https://skia.googlesource.com/skia.git',
31                     revision='abc123',
32                     path_config='kitchen',
33                     swarm_out_dir='[SWARM_OUT_DIR]')
34  )
35
36  yield (
37      api.test('gsutil_win_tests') +
38      api.properties(buildername='Test-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug-All',
39                     repository='https://skia.googlesource.com/skia.git',
40                     revision='abc123',
41                     path_config='kitchen',
42                     swarm_out_dir='[SWARM_OUT_DIR]')
43  )
44
45  yield (
46    api.test('failed_one_upload') +
47      api.properties(buildername='Housekeeper-PerCommit-InfraTests',
48                     repository='https://skia.googlesource.com/skia.git',
49                     revision='abc123',
50                     path_config='kitchen',
51                     swarm_out_dir='[SWARM_OUT_DIR]') +
52    api.step_data('upload test file', retcode=1)
53  )
54
55  yield (
56    api.test('failed_all_uploads') +
57      api.properties(buildername='Housekeeper-PerCommit-InfraTests',
58                     repository='https://skia.googlesource.com/skia.git',
59                     revision='abc123',
60                     path_config='kitchen',
61                     swarm_out_dir='[SWARM_OUT_DIR]') +
62    api.step_data('upload test file', retcode=1) +
63    api.step_data('upload test file (attempt 2)', retcode=1) +
64    api.step_data('upload test file (attempt 3)', retcode=1) +
65    api.step_data('upload test file (attempt 4)', retcode=1) +
66    api.step_data('upload test file (attempt 5)', retcode=1)
67  )
68