1import os 2import pathlib 3import shutil 4import sys 5 6from python import runfiles 7 8 9def main(args): 10 if not args: 11 raise ValueError("Empty args: expected paths to copy") 12 13 if not (install_to := os.environ.get("READTHEDOCS_OUTPUT")): 14 raise ValueError("READTHEDOCS_OUTPUT environment variable not set") 15 16 install_to = pathlib.Path(install_to) 17 18 rf = runfiles.Create() 19 for doc_dir_runfiles_path in args: 20 doc_dir_path = pathlib.Path(rf.Rlocation(doc_dir_runfiles_path)) 21 dest = install_to / doc_dir_path.name 22 print(f"Copying {doc_dir_path} to {dest}") 23 shutil.copytree(src=doc_dir_path, dst=dest, dirs_exist_ok=True) 24 25 26if __name__ == "__main__": 27 sys.exit(main(sys.argv[1:])) 28