45 lines
1.3 KiB
Python
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())
|