✨ cli with argparse
This commit is contained in:
+12
-2
@@ -1,3 +1,4 @@
|
|||||||
|
import argparse
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
@@ -54,11 +55,20 @@ def play_donjon(level: Level) -> None:
|
|||||||
|
|
||||||
|
|
||||||
def app() -> None:
|
def app() -> None:
|
||||||
|
parser = argparse.ArgumentParser(
|
||||||
|
prog='elironwars',
|
||||||
|
description='elironwars CLI',
|
||||||
|
)
|
||||||
|
parser.add_argument('--player', default='Jamin')
|
||||||
|
parser.add_argument('--ui', default='cli')
|
||||||
|
parser.add_argument('--log-level', default='ERROR')
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
os.makedirs('logs', exist_ok=True)
|
os.makedirs('logs', exist_ok=True)
|
||||||
logging.basicConfig(filename='logs/app.log', level=logging.getLevelName(os.environ.get('ELIRON_LOGS', 'ERROR')))
|
logging.basicConfig(filename='logs/app.log', level=logging.getLevelName(args.log_level))
|
||||||
logging.info('start')
|
logging.info('start')
|
||||||
|
|
||||||
loaded_character = load_character(sys.argv[1] if len(sys.argv) > 1 else "Jamin")
|
loaded_character = load_character(args.player)
|
||||||
if not loaded_character:
|
if not loaded_character:
|
||||||
sys.exit(-1)
|
sys.exit(-1)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user