Punto de partida del programa

This commit is contained in:
2020-11-02 00:55:06 -03:00
parent 7bdaeae37a
commit 78cbb5e786

53
entry/main.py Normal file
View 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)