Source code for pyslurmutils.apps.cli.common

import getpass
import logging
import os

_LOG_LEVELS = {
    "debug": logging.DEBUG,
    "info": logging.INFO,
    "warning": logging.WARNING,
    "error": logging.ERROR,
    "critical": logging.CRITICAL,
}


[docs] def add_parameters(parser): parser.add_argument( "-l", "--log", dest="log_level", type=str.lower, choices=list(_LOG_LEVELS), default="warning", help="Log level (default: %(default)s)", ) parser.add_argument( "-u", "--user", dest="user_name", type=str, default=os.environ.get("SLURM_USER", getpass.getuser()), help="User name (default: %(default)s)", ) parser.add_argument( "-t", "--token", type=str, default=os.environ.get("SLURM_TOKEN"), help="SLURM access token (default: %(default)s)", ) parser.add_argument( "-v", "--api-version", type=str, default=os.environ.get("SLURM_API_VERSION"), help="SLURM access token (default: %(default)s)", ) parser.add_argument( "--url", type=str, default=os.environ.get("SLURM_URL"), help="SLURM Rest Server (default: %(default)s)", ) parser.add_argument( "--renewal-url", type=str, default=os.environ.get("SLURM_RENEWAL_URL"), help="URL for SLURM token renewal (default: %(default)s)", ) if os.path.isdir(os.path.join(os.path.sep, "tmp_14_days")): log_directory = os.path.join( os.path.sep, "tmp_14_days", "{user_name}", "slurm_logs" ) else: log_directory = None parser.add_argument( "--log-dir", dest="log_directory", type=str, default=log_directory, help="Directory of SLURM job logs (default: %(default)s)", )
[docs] def apply_parameters(args): logging.basicConfig(level=_LOG_LEVELS[args.log_level])