Fix some style

This commit is contained in:
Antonio J. Delgado 2023-05-18 11:52:53 +03:00
parent 35a64c4775
commit f42c53dbd4
2 changed files with 47 additions and 20 deletions

View file

@ -3,24 +3,32 @@
#
# This script is licensed under GNU GPL version 2.0 or above
# (c) __authoring_date__ __author__
# __description__
"""__description__"""
import sys
import os
import logging
from logging.handlers import SysLogHandler
import click
import click_config_file
from logging.handlers import SysLogHandler
class __project_codename__:
def __init__(self, debug_level, log_file, **kwargs):
''' Initial function called when object is created '''
self.config = dict()
self.config['debug_level'] = debug_level
if log_file is None:
log_file = os.path.join(os.environ.get('HOME', os.environ.get('USERPROFILE', os.getcwd())), 'log', '__project_codename__.log')
self.config['log_file'] = log_file
def __init__(self, **kwargs):
self.config = kwargs
if 'log_file' not in kwargs or kwargs['log_file'] is None:
self.config['log_file'] = os.path.join(
os.environ.get(
'HOME',
os.environ.get(
'USERPROFILE',
os.getcwd()
)
),
'log',
'__project_codename__.log'
)
self._init_log()
def _init_log(self):
@ -33,39 +41,54 @@ class __project_codename__:
self._log.addHandler(sysloghandler)
streamhandler = logging.StreamHandler(sys.stdout)
streamhandler.setLevel(logging.getLevelName(self.config.get("debug_level", 'INFO')))
streamhandler.setLevel(
logging.getLevelName(self.config.get("debug_level", 'INFO'))
)
self._log.addHandler(streamhandler)
if 'log_file' in self.config:
log_file = self.config['log_file']
else:
home_folder = os.environ.get('HOME', os.environ.get('USERPROFILE', ''))
home_folder = os.environ.get(
'HOME', os.environ.get('USERPROFILE', '')
)
log_folder = os.path.join(home_folder, "log")
log_file = os.path.join(log_folder, "__project_codename__.log")
if not os.path.exists(os.path.dirname(log_file)):
os.mkdir(os.path.dirname(log_file))
filehandler = logging.handlers.RotatingFileHandler(log_file, maxBytes=102400000)
filehandler = logging.handlers.RotatingFileHandler(
log_file, maxBytes=102400000
)
# create formatter
formatter = logging.Formatter('%(asctime)s %(name)-12s %(levelname)-8s %(message)s')
formatter = logging.Formatter(
'%(asctime)s %(name)-12s %(levelname)-8s %(message)s'
)
filehandler.setFormatter(formatter)
filehandler.setLevel(logging.DEBUG)
self._log.addHandler(filehandler)
return True
@click.command()
@click.option("--debug-level", "-d", default="INFO",
@click.option(
"--debug-level",
"-d",
default="INFO",
type=click.Choice(
["CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG", "NOTSET"],
case_sensitive=False,
), help='Set the debug level for the standard output.')
),
help='Set the debug level for the standard output.'
)
@click.option('--log-file', '-l', help="File to store all debug messages.")
#@click.option("--dummy","-n", is_flag=True, help="Don't do anything, just show what would be done.") # Don't forget to add dummy to parameters of main function
# @click.option("--dummy","-n", is_flag=True,
# help="Don't do anything, just show what would be done.")
@click_config_file.configuration_option()
def __main__(debug_level, log_file, **kwargs):
return __project_codename__(debug_level, log_file, **kwargs)
def __main__(**kwargs):
return __project_codename__(**kwargs)
if __name__ == "__main__":
__main__()

View file

@ -1,3 +1,7 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Setup script"""
import setuptools
setuptools.setup(
scripts=['__project_codename__/__project_codename__.py'],
@ -10,5 +14,5 @@ setuptools.setup(
long_description="README.md",
long_description_content_type="text/markdown",
license="__license__",
#keywords=["my", "script", "does", "things"]
# keywords=["my", "script", "does", "things"]
)