Move logic for adding a server to the database out to utils.cli and add a
--add-server flag for start.py, to add new server
This commit is contained in:
parent
fad4715b5c
commit
73c0c911d4
3 changed files with 32 additions and 19 deletions
|
@ -1,5 +1,5 @@
|
||||||
import decimal, io, re, typing
|
import decimal, io, re, typing
|
||||||
from src.utils import consts, irc, http, parse
|
from src.utils import cli, consts, irc, http, parse
|
||||||
|
|
||||||
TIME_SECOND = 1
|
TIME_SECOND = 1
|
||||||
TIME_MINUTE = TIME_SECOND*60
|
TIME_MINUTE = TIME_SECOND*60
|
||||||
|
|
19
src/utils/cli.py
Normal file
19
src/utils/cli.py
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
from src import Database
|
||||||
|
|
||||||
|
def bool_input(s: str):
|
||||||
|
result = input("%s (Y/n): " % s)
|
||||||
|
return not result or result[0].lower() in ["", "y"]
|
||||||
|
|
||||||
|
def add_server(database: Database.Database):
|
||||||
|
alias = input("alias: ")
|
||||||
|
hostname = input("hostname: ")
|
||||||
|
port = int(input("port: "))
|
||||||
|
tls = bool_input("tls?")
|
||||||
|
password = input("password?: ")
|
||||||
|
ipv4 = bool_input("ipv4?")
|
||||||
|
nickname = input("nickname: ")
|
||||||
|
username = input("username: ")
|
||||||
|
realname = input("realname: ")
|
||||||
|
bindhost = input("bindhost?: ")
|
||||||
|
database.servers.add(alias, hostname, port, password, ipv4, tls, bindhost, nickname, username, realname)
|
||||||
|
|
30
start.py
30
start.py
|
@ -2,11 +2,7 @@
|
||||||
|
|
||||||
import argparse, os, sys, time
|
import argparse, os, sys, time
|
||||||
from src import Cache, Config, Database, EventManager, Exports, IRCBot
|
from src import Cache, Config, Database, EventManager, Exports, IRCBot
|
||||||
from src import Logging, ModuleManager, Timers
|
from src import Logging, ModuleManager, Timers, utils
|
||||||
|
|
||||||
def bool_input(s):
|
|
||||||
result = input("%s (Y/n): " % s)
|
|
||||||
return not result or result[0].lower() in ["", "y"]
|
|
||||||
|
|
||||||
directory = os.path.dirname(os.path.realpath(__file__))
|
directory = os.path.dirname(os.path.realpath(__file__))
|
||||||
|
|
||||||
|
@ -25,15 +21,24 @@ arg_parser.add_argument("--log", "-l",
|
||||||
help="Location of the main log file",
|
help="Location of the main log file",
|
||||||
default=os.path.join(directory, "logs", "bot.log"))
|
default=os.path.join(directory, "logs", "bot.log"))
|
||||||
|
|
||||||
|
arg_parser.add_argument("--add-server", "-a",
|
||||||
|
help="Add a new server", action="store_true")
|
||||||
|
|
||||||
arg_parser.add_argument("--verbose", "-v", action="store_true")
|
arg_parser.add_argument("--verbose", "-v", action="store_true")
|
||||||
|
|
||||||
args = arg_parser.parse_args()
|
args = arg_parser.parse_args()
|
||||||
|
|
||||||
log_level = "debug" if args.verbose else "info"
|
log_level = "debug" if args.verbose else "info"
|
||||||
log = Logging.Log(log_level, args.log)
|
log = Logging.Log(log_level, args.log)
|
||||||
|
database = Database.Database(log, args.database)
|
||||||
|
|
||||||
|
if args.add_server:
|
||||||
|
print("Adding a new server")
|
||||||
|
utils.cli.add_server(database)
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
cache = Cache.Cache()
|
cache = Cache.Cache()
|
||||||
config = Config.Config(args.config)
|
config = Config.Config(args.config)
|
||||||
database = Database.Database(log, args.database)
|
|
||||||
events = events = EventManager.EventHook(log)
|
events = events = EventManager.EventHook(log)
|
||||||
exports = exports = Exports.Exports()
|
exports = exports = Exports.Exports()
|
||||||
timers = Timers.Timers(database, events, log)
|
timers = Timers.Timers(database, events, log)
|
||||||
|
@ -69,18 +74,7 @@ if len(server_configs):
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
if bool_input("no servers found, add one?"):
|
if bool_input("no servers found, add one?"):
|
||||||
alias = input("alias: ")
|
utils.cli.add_server(database)
|
||||||
hostname = input("hostname: ")
|
|
||||||
port = int(input("port: "))
|
|
||||||
tls = bool_input("tls?")
|
|
||||||
password = input("password?: ")
|
|
||||||
ipv4 = bool_input("ipv4?")
|
|
||||||
nickname = input("nickname: ")
|
|
||||||
username = input("username: ")
|
|
||||||
realname = input("realname: ")
|
|
||||||
bindhost = input("bindhost?: ")
|
|
||||||
bot.database.servers.add(alias, hostname, port, password, ipv4,
|
|
||||||
tls, bindhost, nickname, username, realname)
|
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
print()
|
print()
|
||||||
pass
|
pass
|
||||||
|
|
Loading…
Reference in a new issue