xref: /aosp_15_r20/external/cronet/build/ios/presubmit_support.py (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Copyright 2023 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker"""Presubmit helpers for ios
5*6777b538SAndroid Build Coastguard Worker
6*6777b538SAndroid Build Coastguard WorkerSee https://www.chromium.org/developers/how-tos/depottools/presubmit-scripts
7*6777b538SAndroid Build Coastguard Workerfor more details about the presubmit API built into depot_tools.
8*6777b538SAndroid Build Coastguard Worker"""
9*6777b538SAndroid Build Coastguard Worker
10*6777b538SAndroid Build Coastguard Workerfrom . import update_bundle_filelist
11*6777b538SAndroid Build Coastguard Worker
12*6777b538SAndroid Build Coastguard Worker
13*6777b538SAndroid Build Coastguard Workerdef CheckBundleData(input_api, output_api, base, globroot='//'):
14*6777b538SAndroid Build Coastguard Worker  root = input_api.change.RepositoryRoot()
15*6777b538SAndroid Build Coastguard Worker  filelist = input_api.os_path.join(input_api.PresubmitLocalPath(),
16*6777b538SAndroid Build Coastguard Worker                                    base + '.filelist')
17*6777b538SAndroid Build Coastguard Worker  globlist = input_api.os_path.join(input_api.PresubmitLocalPath(),
18*6777b538SAndroid Build Coastguard Worker                                    base + '.globlist')
19*6777b538SAndroid Build Coastguard Worker  if globroot.startswith('//'):
20*6777b538SAndroid Build Coastguard Worker    globroot = input_api.os_path.join(input_api.change.RepositoryRoot(),
21*6777b538SAndroid Build Coastguard Worker                                      globroot[2:])
22*6777b538SAndroid Build Coastguard Worker  else:
23*6777b538SAndroid Build Coastguard Worker    globroot = input_api.os_path.join(input_api.PresubmitLocalPath(), globroot)
24*6777b538SAndroid Build Coastguard Worker  if update_bundle_filelist.process_filelist(filelist,
25*6777b538SAndroid Build Coastguard Worker                                             globlist,
26*6777b538SAndroid Build Coastguard Worker                                             globroot,
27*6777b538SAndroid Build Coastguard Worker                                             check=True,
28*6777b538SAndroid Build Coastguard Worker                                             verbose=input_api.verbose) == 0:
29*6777b538SAndroid Build Coastguard Worker    return []
30*6777b538SAndroid Build Coastguard Worker  else:
31*6777b538SAndroid Build Coastguard Worker    script = input_api.os_path.join(input_api.change.RepositoryRoot(), 'build',
32*6777b538SAndroid Build Coastguard Worker                                    'ios', 'update_bundle_filelist.py')
33*6777b538SAndroid Build Coastguard Worker
34*6777b538SAndroid Build Coastguard Worker    return [
35*6777b538SAndroid Build Coastguard Worker        output_api.PresubmitError(
36*6777b538SAndroid Build Coastguard Worker            'Filelist needs to be re-generated. Please run \'python3 %s %s %s '
37*6777b538SAndroid Build Coastguard Worker            '%s\' and include the changes in this CL' %
38*6777b538SAndroid Build Coastguard Worker            (script, filelist, globlist, globroot))
39*6777b538SAndroid Build Coastguard Worker    ]
40