apply_all_patches.py 887 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env python3
  2. import argparse
  3. import json
  4. import os
  5. from lib import git
  6. from lib.patches import patch_from_dir
  7. def apply_patches(dirs):
  8. threeway = os.environ.get("ELECTRON_USE_THREE_WAY_MERGE_FOR_PATCHES")
  9. for patch_dir, repo in dirs.items():
  10. git.import_patches(repo=repo, patch_data=patch_from_dir(patch_dir),
  11. threeway=threeway is not None,
  12. committer_name="Electron Scripts", committer_email="scripts@electron")
  13. def parse_args():
  14. parser = argparse.ArgumentParser(description='Apply Electron patches')
  15. parser.add_argument('config', nargs='+',
  16. type=argparse.FileType('r'),
  17. help='patches\' config(s) in the JSON format')
  18. return parser.parse_args()
  19. def main():
  20. configs = parse_args().config
  21. for config_json in configs:
  22. apply_patches(json.load(config_json))
  23. if __name__ == '__main__':
  24. main()