Files
snippets/eclipse-main-template.py
2024-03-14 22:17:41 +01:00

45 lines
1.3 KiB
Python

#!python3
# Created 5 Jul 2019 Andreas Balogh
# @author: baloan
""" Module: Main Template """
from argparse import ArgumentParser
import logging
import sys
import os
LOG = logging.getLogger()
def cli(argv=None):
# command line interface
if argv is None:
argv = sys.argv
LOG.info("%s %s", os.path.basename(argv[0]), " ".join(argv[1:]))
parser = ArgumentParser(description="Module Template")
parser.add_argument("action", help="mock action verb")
parser.add_argument("--database", help="database connection")
parser.add_argument("--config_file", help="json filepath, not used by mock")
parser.add_argument("--env", default=argparse.SUPPRESS, help="dump environment")
args = parser.parse_args(argv[1:])
argd = vars(args)
# arguments
for k, v in argd.items():
print(k, v)
# enviroment
if "env" in argd:
for k, v in os.environ.items():
print(k, v)
# feature
LOG.info("done")
return 0
if __name__ == "__main__":
logging.Formatter.default_time_format = '%H:%M:%S'
logging.Formatter.default_msec_format = '%s.%03d'
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s [%(process)i] %(levelname).4s %(module)s.%(funcName)s: %(message)s')
sys.exit(cli())