Punto de partida del programa
This commit is contained in:
53
entry/main.py
Normal file
53
entry/main.py
Normal file
@ -0,0 +1,53 @@
|
||||
import argparse
|
||||
import sys
|
||||
import os
|
||||
import pytz
|
||||
from common.helper.logging import Logging
|
||||
from setup.config import load_config
|
||||
from src.supervisor import Supervisor
|
||||
from src.bosses import Bosses
|
||||
|
||||
|
||||
def main(args):
|
||||
configs = load_config(args.config_folder)
|
||||
configs.set('timezone', pytz.timezone('America/Santiago'))
|
||||
params = {
|
||||
'folders': {
|
||||
'config': args.config_folder,
|
||||
'log': args.log_folder,
|
||||
'data': args.data_folder
|
||||
},
|
||||
'bosses': Bosses(args.data_folder),
|
||||
'logging': Logging(configs.get('timezone'), args.log_folder)
|
||||
}
|
||||
|
||||
params['logging'].log('Starting', caller='main')
|
||||
|
||||
supervisor = Supervisor(configs=configs, params=params)
|
||||
|
||||
supervisor.register_worker('common.helper.logger', 'Worker')
|
||||
supervisor.add_queue('log')
|
||||
supervisor.register_worker('src.email', 'RevisorEmailWorker')
|
||||
supervisor.register_worker('src.email', 'EmailInterpreter')
|
||||
supervisor.add_queue('emails')
|
||||
supervisor.add_queue('questions')
|
||||
supervisor.register_worker('src.action.questions', 'QuestionWorker')
|
||||
supervisor.register_worker('src.action.reminder', 'RemindRegisterWorker')
|
||||
supervisor.register_worker('src.action.reminder', 'ReminderWorker')
|
||||
supervisor.add_queue('reminders')
|
||||
supervisor.add_lock('reminders')
|
||||
|
||||
supervisor.start()
|
||||
supervisor.join()
|
||||
|
||||
params['logging'].log('Waiting for Supervisor', caller='main')
|
||||
# sys.exit()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('-c', '--config_folder', default=os.path.join(os.path.realpath('../'), 'config'))
|
||||
parser.add_argument('-d', '--data_folder', default=os.path.join(os.path.realpath('..'), 'data'))
|
||||
parser.add_argument('-l', '--log_folder', default=os.path.join(os.path.realpath('..'), 'logs'))
|
||||
_args = parser.parse_args()
|
||||
main(_args)
|
Reference in New Issue
Block a user