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