xref: /aosp_15_r20/external/cronet/build/config/siso/configure_siso.py (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker#!/usr/bin/env python3
2*6777b538SAndroid Build Coastguard Worker# Copyright 2023 The Chromium Authors
3*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
4*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
5*6777b538SAndroid Build Coastguard Worker"""This script is used to configure siso."""
6*6777b538SAndroid Build Coastguard Worker
7*6777b538SAndroid Build Coastguard Workerimport argparse
8*6777b538SAndroid Build Coastguard Workerimport os
9*6777b538SAndroid Build Coastguard Workerimport sys
10*6777b538SAndroid Build Coastguard Worker
11*6777b538SAndroid Build Coastguard WorkerTHIS_DIR = os.path.abspath(os.path.dirname(__file__))
12*6777b538SAndroid Build Coastguard Worker
13*6777b538SAndroid Build Coastguard Worker
14*6777b538SAndroid Build Coastguard Workerdef main():
15*6777b538SAndroid Build Coastguard Worker  parser = argparse.ArgumentParser(description="configure siso")
16*6777b538SAndroid Build Coastguard Worker  parser.add_argument("--rbe_instance", help="RBE instance to use for Siso")
17*6777b538SAndroid Build Coastguard Worker  args = parser.parse_args()
18*6777b538SAndroid Build Coastguard Worker
19*6777b538SAndroid Build Coastguard Worker  project = None
20*6777b538SAndroid Build Coastguard Worker  rbe_instance = args.rbe_instance
21*6777b538SAndroid Build Coastguard Worker  if rbe_instance:
22*6777b538SAndroid Build Coastguard Worker    elems = rbe_instance.split("/")
23*6777b538SAndroid Build Coastguard Worker    if len(elems) == 4 and elems[0] == "projects":
24*6777b538SAndroid Build Coastguard Worker      project = elems[1]
25*6777b538SAndroid Build Coastguard Worker      rbe_instance = elems[-1]
26*6777b538SAndroid Build Coastguard Worker
27*6777b538SAndroid Build Coastguard Worker  siso_env_path = os.path.join(THIS_DIR, ".sisoenv")
28*6777b538SAndroid Build Coastguard Worker  with open(siso_env_path, "w") as f:
29*6777b538SAndroid Build Coastguard Worker    if project:
30*6777b538SAndroid Build Coastguard Worker      f.write("SISO_PROJECT=%s\n" % project)
31*6777b538SAndroid Build Coastguard Worker    if rbe_instance:
32*6777b538SAndroid Build Coastguard Worker      f.write("SISO_REAPI_INSTANCE=%s\n" % rbe_instance)
33*6777b538SAndroid Build Coastguard Worker  return 0
34*6777b538SAndroid Build Coastguard Worker
35*6777b538SAndroid Build Coastguard Worker
36*6777b538SAndroid Build Coastguard Workerif __name__ == "__main__":
37*6777b538SAndroid Build Coastguard Worker  sys.exit(main())
38