1*da0073e9SAndroid Build Coastguard Workerimport argparse 2*da0073e9SAndroid Build Coastguard Workerimport os 3*da0073e9SAndroid Build Coastguard Workerimport os.path 4*da0073e9SAndroid Build Coastguard Worker 5*da0073e9SAndroid Build Coastguard Worker 6*da0073e9SAndroid Build Coastguard Workerdef main() -> None: 7*da0073e9SAndroid Build Coastguard Worker parser = argparse.ArgumentParser() 8*da0073e9SAndroid Build Coastguard Worker parser.add_argument("--input-file") 9*da0073e9SAndroid Build Coastguard Worker parser.add_argument("--output-file") 10*da0073e9SAndroid Build Coastguard Worker parser.add_argument("--install-dir", "--install_dir") 11*da0073e9SAndroid Build Coastguard Worker parser.add_argument("--replace", action="append", nargs=2) 12*da0073e9SAndroid Build Coastguard Worker options = parser.parse_args() 13*da0073e9SAndroid Build Coastguard Worker 14*da0073e9SAndroid Build Coastguard Worker with open(options.input_file) as f: 15*da0073e9SAndroid Build Coastguard Worker contents = f.read() 16*da0073e9SAndroid Build Coastguard Worker 17*da0073e9SAndroid Build Coastguard Worker output_file = os.path.join(options.install_dir, options.output_file) 18*da0073e9SAndroid Build Coastguard Worker os.makedirs(os.path.dirname(output_file), exist_ok=True) 19*da0073e9SAndroid Build Coastguard Worker 20*da0073e9SAndroid Build Coastguard Worker for old, new in options.replace: 21*da0073e9SAndroid Build Coastguard Worker contents = contents.replace(old, new) 22*da0073e9SAndroid Build Coastguard Worker 23*da0073e9SAndroid Build Coastguard Worker with open(output_file, "w") as f: 24*da0073e9SAndroid Build Coastguard Worker f.write(contents) 25*da0073e9SAndroid Build Coastguard Worker 26*da0073e9SAndroid Build Coastguard Worker 27*da0073e9SAndroid Build Coastguard Workerif __name__ == "__main__": 28*da0073e9SAndroid Build Coastguard Worker main() # pragma: no cover 29