/ init.py
init.py
 1  import argparse
 2  import constants
 3  
 4  def init_args():
 5      parser = argparse.ArgumentParser(description="get args")
 6      parser.add_argument("source", type=str, default="./", help="source")
 7      parser.add_argument("destination", type=str, help="destination")
 8  
 9      parser.add_argument("--file_types", type=str, help="copy/sync only these user selected filetypes")
10      parser.add_argument("--exclude_file_types", type=str, help="copy/sync all files except user select filetypes")
11  
12      parser.add_argument("--exclude_directories", type=str, help="copy/sync all files skipping over specified directories")
13  
14      args = parser.parse_args()
15  
16      if not args.source or not args.destination:
17          print("Error: must list source and destination")
18          exit(-1)
19  
20      if not args.exclude_file_types and not args.file_types:
21          print("Error: must use either the exclude_file_types or file_types flags")
22          exit(-2)
23  
24      if args.exclude_file_types and args.file_types:
25          print("Error, must use exclude_file_types or file_types, can not use both")
26          exit(-3)
27  
28      if args.exclude_file_types:
29          args.exclude_file_types = constants.options[args.exclude_file_types]
30  
31      if args.file_types:
32          args.file_types = constants.options[args.file_types]
33  
34      return args
35  
36  if __name__ == "__main__":
37      print("This is a support file, not intended to be called directly")