def setup_mender_logger(self): """Set the mender logger and deployment handler""" class Args: log_file = False log_level = "debug" no_syslog = False menderlogger.setup(Args())
def fixture_set_up_menderlogger(tmpdir): d = tmpdir.mkdir("test_logger") log_file = os.path.join(d, "deployment.log") settings.PATHS.deployment_log = d class Args: log_file = False log_level = "debug" no_syslog = False menderlogger.setup(Args()) return log_file
def main(testargs=None): parser = argparse.ArgumentParser( prog="mender", description="""mender integrates both the mender daemon and commands for manually performing tasks performed by the daemon (see list of COMMANDS below).""", formatter_class=argparse.ArgumentDefaultsHelpFormatter, ) # # Commands # subcommand_parser = parser.add_subparsers(title="COMMANDS") bootstrap_parser = subcommand_parser.add_parser( "bootstrap", help="Perform bootstrap and exit.") bootstrap_parser.set_defaults(func=run_bootstrap) daemon_parser = subcommand_parser.add_parser( "daemon", help="Start the client as a background service.") daemon_parser.set_defaults(func=run_daemon) show_artifact_parser = subcommand_parser.add_parser( "show-artifact", help="Print the current Artifact name to the command line and exit.", ) show_artifact_parser.set_defaults(func=show_artifact) report_parser = subcommand_parser.add_parser( "report", help= "Report the update status. Note: an update must be in progress for this to work", ) report_parser.set_defaults(func=report) report_parser.add_argument( "--success", help="Report a succesful update to the Mender server", default=False, action="store_true", ) report_parser.add_argument( "--failure", help="Report a failed update to the Mender server", default=False, action="store_true", ) # # Options # global_options = parser.add_argument_group("Global Options") global_options.add_argument( "--data", "-d", help="Mender state data DIRECTORY path.", default="/var/lib/mender", ) global_options.add_argument("--log-file", "-L", help="FILE to log to.", metavar="FILE") global_options.add_argument("--log-level", "-l", help="Set logging to level.", default="info") global_options.add_argument( "--forcebootstrap", "-F", help="Force bootstrap.", default=False, action="store_true", ) global_options.add_argument( "--no-syslog", help="Disble logging to syslog.", default=False, action="store_true", ) global_options.add_argument("--version", "-v", help="print the version", default=False, action="store_true") args = parser.parse_args(testargs) if args.version: run_version(args) return if args.data: log.info(f"Data store set to: {args.data}") settings.PATHS = settings.Path(data_store=args.data) else: log.info("Data store set to: '/var/lib/mender'") settings.PATHS = settings.Path() menderlogger.setup(args) if "func" not in vars(args): parser.print_usage() return if not testargs: args.func(args)