update_setup_requirements.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import os
  2. import sys
  3. from typing import Dict
  4. BASE_PATH = "./tools/packages"
  5. def __build_taipy_package_line(line: str, version: str, publish_on_py_pi: bool) -> str:
  6. _line = line.strip()
  7. if publish_on_py_pi:
  8. return f"{_line}=={version}"
  9. return f"{_line} @ https://github.com/Avaiga/taipy/releases/download/{version}/{version}.tar.gz\n"
  10. def update_setup_requirements(package: str, versions: Dict, publish_on_py_pi: bool) -> None:
  11. _path = os.path.join(BASE_PATH, package, "setup.requirements.txt")
  12. lines = []
  13. with open(_path, mode="r") as req:
  14. for line in req:
  15. if v := versions.get(line.strip()):
  16. line = __build_taipy_package_line(line, v, publish_on_py_pi)
  17. lines.append(line)
  18. with open(_path, 'w') as file:
  19. file.writelines(lines)
  20. if __name__ == "__main__":
  21. _package = sys.argv[1]
  22. _versions = {
  23. "taipy-config": sys.argv[2],
  24. "taipy-core": sys.argv[3],
  25. "taipy-gui": sys.argv[4],
  26. "taipy-rest": sys.argv[5],
  27. "taipy-templates": sys.argv[6],
  28. }
  29. _publish_on_py_pi = bool(sys.argv[7])
  30. update_setup_requirements(_package, _versions, _publish_on_py_pi)