xref: /aosp_15_r20/external/perfetto/infra/luci/PRESUBMIT.py (revision 6dbdd20afdafa5e3ca9b8809fa73465d530080dc)
1*6dbdd20aSAndroid Build Coastguard Worker# Copyright (C) 2017 The Android Open Source Project
2*6dbdd20aSAndroid Build Coastguard Worker#
3*6dbdd20aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*6dbdd20aSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*6dbdd20aSAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*6dbdd20aSAndroid Build Coastguard Worker#
7*6dbdd20aSAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
8*6dbdd20aSAndroid Build Coastguard Worker#
9*6dbdd20aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*6dbdd20aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*6dbdd20aSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*6dbdd20aSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*6dbdd20aSAndroid Build Coastguard Worker# limitations under the License.
14*6dbdd20aSAndroid Build Coastguard Worker
15*6dbdd20aSAndroid Build Coastguard Worker# This line is 'magic' in that git-cl looks for it to decide whether to
16*6dbdd20aSAndroid Build Coastguard Worker# use Python3 instead of Python2 when running the code in this file.
17*6dbdd20aSAndroid Build Coastguard WorkerUSE_PYTHON3 = True
18*6dbdd20aSAndroid Build Coastguard Worker
19*6dbdd20aSAndroid Build Coastguard Worker
20*6dbdd20aSAndroid Build Coastguard Workerdef CommonChecks(input_api, output_api):
21*6dbdd20aSAndroid Build Coastguard Worker  presubmit_dir = input_api.PresubmitLocalPath()
22*6dbdd20aSAndroid Build Coastguard Worker  recipes_py = input_api.os_path.join(presubmit_dir, 'recipes.py')
23*6dbdd20aSAndroid Build Coastguard Worker  recipes_cfg = input_api.os_path.join(
24*6dbdd20aSAndroid Build Coastguard Worker      presubmit_dir, '..', 'config', 'recipes.cfg'
25*6dbdd20aSAndroid Build Coastguard Worker  )
26*6dbdd20aSAndroid Build Coastguard Worker  return input_api.RunTests([
27*6dbdd20aSAndroid Build Coastguard Worker      input_api.Command(
28*6dbdd20aSAndroid Build Coastguard Worker          'Run recipe tests',
29*6dbdd20aSAndroid Build Coastguard Worker          ['python3', recipes_py, '--package', recipes_cfg, 'test', 'run'],
30*6dbdd20aSAndroid Build Coastguard Worker          {},
31*6dbdd20aSAndroid Build Coastguard Worker          output_api.PresubmitError,
32*6dbdd20aSAndroid Build Coastguard Worker      )
33*6dbdd20aSAndroid Build Coastguard Worker  ])
34*6dbdd20aSAndroid Build Coastguard Worker
35*6dbdd20aSAndroid Build Coastguard Worker
36*6dbdd20aSAndroid Build Coastguard Workerdef CheckChangeOnUpload(input_api, output_api):
37*6dbdd20aSAndroid Build Coastguard Worker  return CommonChecks(input_api, output_api)
38*6dbdd20aSAndroid Build Coastguard Worker
39*6dbdd20aSAndroid Build Coastguard Worker
40*6dbdd20aSAndroid Build Coastguard Workerdef CheckChangeOnCommit(input_api, output_api):
41*6dbdd20aSAndroid Build Coastguard Worker  return CommonChecks(input_api, output_api)
42