__main__.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import logging
  2. import argparse
  3. import sys
  4. import tomllib
  5. import pika
  6. from palm import VERSION, start_server
  7. NAME = 'lily'
  8. if __name__ == '__main__':
  9. parser = argparse.ArgumentParser(
  10. prog=NAME,
  11. description='Background worker for palm',
  12. epilog='https://github.com/saturn-xiv/palm')
  13. parser.add_argument('-c', '--config',
  14. type=argparse.FileType(mode='rb'),
  15. default='config.toml',
  16. help='load configuration(toml)')
  17. parser.add_argument('-d', '--debug',
  18. action='store_true',
  19. help='run on debug mode')
  20. parser.add_argument('-v', '--version',
  21. action='store_true',
  22. help=('print %s version' % NAME))
  23. args = parser.parse_args()
  24. if args.version:
  25. print(VERSION)
  26. sys.exit()
  27. logging.basicConfig(level=(logging.DEBUG if args.debug else logging.INFO))
  28. if args.debug:
  29. logging.debug('run on debug mode with %s', args)
  30. logging.info('load configuration from %s', args.config.name)
  31. config = tomllib.load(args.config)
  32. rpc_params = config['rpc']
  33. start_server('0.0.0.0:%d' % (rpc_params['port']), rpc_params['workers'])