You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.py 623B

123456789101112131415161718192021222324252627282930
  1. #! /usr/bin/env python3
  2. import sys
  3. import argparse
  4. import pydantic
  5. class Options(pydantic.BaseModel):
  6. config_path: str = pydantic.Field(alias='config')
  7. def main(argv):
  8. default_options = Options(**{
  9. 'config': './config.yml'
  10. })
  11. parser = argparse.ArgumentParser(description='Some awesome project')
  12. parser.add_argument('-c', '--config', type=str, default=default_options.config_path, help='Path to config file')
  13. args = parser.parse_args(argv[1:])
  14. options = Options(**vars(args))
  15. print(options.config_path)
  16. return 0
  17. if __name__ == '__main__':
  18. sys.exit(main(sys.argv))