dev@locazia: fix startup args
This commit is contained in:
parent
a427d75d61
commit
7f06ee9bd3
194
app/__main__.py
194
app/__main__.py
|
|
@ -1,100 +1,98 @@
|
||||||
import sys
|
import sys
|
||||||
print(sys.argv)
|
import traceback
|
||||||
|
from asyncio import sleep
|
||||||
|
from datetime import datetime
|
||||||
|
import asyncio, sys
|
||||||
|
|
||||||
# import sys
|
from aiogram import Bot
|
||||||
# import traceback
|
|
||||||
# from asyncio import sleep
|
from app.api import app
|
||||||
# from datetime import datetime
|
from app.bot import dp
|
||||||
# import asyncio, sys
|
from app.core._config import SANIC_PORT, MYSQL_URI, TELEGRAM_API_KEY
|
||||||
#
|
from app.core._utils.create_maria_tables import create_maria_tables
|
||||||
# from aiogram import Bot
|
from app.core.logger import make_log
|
||||||
#
|
from app.core.models import Memory
|
||||||
# from app.api import app
|
from app.core.storage import engine
|
||||||
# from app.bot import dp
|
|
||||||
# from app.core._config import SANIC_PORT, MYSQL_URI, TELEGRAM_API_KEY
|
|
||||||
# from app.core._utils.create_maria_tables import create_maria_tables
|
async def queue_daemon(app):
|
||||||
# from app.core.logger import make_log
|
await sleep(3)
|
||||||
# from app.core.models import Memory
|
|
||||||
# from app.core.storage import engine
|
while True:
|
||||||
#
|
delayed_list = {k: v for k, v in app.ctx.memory._delayed_queue.items()}
|
||||||
#
|
for _execute_ts in delayed_list:
|
||||||
# async def queue_daemon(app):
|
if _execute_ts <= datetime.now().timestamp():
|
||||||
# await sleep(3)
|
del app.ctx.memory._delayed_queue[_execute_ts]
|
||||||
#
|
app.ctx.memory._execute_queue.append(delayed_list[_execute_ts])
|
||||||
# while True:
|
|
||||||
# delayed_list = {k: v for k, v in app.ctx.memory._delayed_queue.items()}
|
await sleep(.7)
|
||||||
# for _execute_ts in delayed_list:
|
|
||||||
# if _execute_ts <= datetime.now().timestamp():
|
|
||||||
# del app.ctx.memory._delayed_queue[_execute_ts]
|
async def execute_queue(app):
|
||||||
# app.ctx.memory._execute_queue.append(delayed_list[_execute_ts])
|
await create_maria_tables(engine)
|
||||||
#
|
|
||||||
# await sleep(.7)
|
telegram_bot_username = (await app.ctx.memory._telegram_bot.get_me()).username
|
||||||
#
|
make_log(None, f"Application normally started. HTTP port: {SANIC_PORT}")
|
||||||
#
|
make_log(None, f"Telegram bot: https://t.me/{telegram_bot_username}")
|
||||||
# async def execute_queue(app):
|
make_log(None, f"MariaDB host: {MYSQL_URI.split('@')[1].split('/')[0].replace('/', '')}")
|
||||||
# await create_maria_tables(engine)
|
while True:
|
||||||
#
|
try:
|
||||||
# telegram_bot_username = (await app.ctx.memory._telegram_bot.get_me()).username
|
_cmd = app.ctx.memory._execute_queue.pop(0)
|
||||||
# make_log(None, f"Application normally started. HTTP port: {SANIC_PORT}")
|
except IndexError:
|
||||||
# make_log(None, f"Telegram bot: https://t.me/{telegram_bot_username}")
|
await sleep(.05)
|
||||||
# make_log(None, f"MariaDB host: {MYSQL_URI.split('@')[1].split('/')[0].replace('/', '')}")
|
continue
|
||||||
# while True:
|
|
||||||
# try:
|
_fn = _cmd.pop(0)
|
||||||
# _cmd = app.ctx.memory._execute_queue.pop(0)
|
assert _fn
|
||||||
# except IndexError:
|
_args = _cmd.pop(0)
|
||||||
# await sleep(.05)
|
assert type(_args) is tuple
|
||||||
# continue
|
try:
|
||||||
#
|
_kwargs = _cmd.pop(0)
|
||||||
# _fn = _cmd.pop(0)
|
assert type(_kwargs) is dict
|
||||||
# assert _fn
|
except IndexError:
|
||||||
# _args = _cmd.pop(0)
|
_kwargs = {}
|
||||||
# assert type(_args) is tuple
|
|
||||||
# try:
|
try:
|
||||||
# _kwargs = _cmd.pop(0)
|
make_log("Queue.execute", f"{_fn} {_args} {_kwargs}", level='debug')
|
||||||
# assert type(_kwargs) is dict
|
await _fn(*_args, **_kwargs)
|
||||||
# except IndexError:
|
except BaseException as e:
|
||||||
# _kwargs = {}
|
make_log("Queue.execute", f"{_fn} {_args} {_kwargs} => Error: {e}" + '\n' + str(traceback.format_exc()))
|
||||||
#
|
|
||||||
# try:
|
|
||||||
# make_log("Queue.execute", f"{_fn} {_args} {_kwargs}", level='debug')
|
if __name__ == '__main__':
|
||||||
# await _fn(*_args, **_kwargs)
|
startup_target = '__main__'
|
||||||
# except BaseException as e:
|
try:
|
||||||
# make_log("Queue.execute", f"{_fn} {_args} {_kwargs} => Error: {e}" + '\n' + str(traceback.format_exc()))
|
startup_target = sys.argv[1]
|
||||||
#
|
except BaseException:
|
||||||
#
|
pass
|
||||||
# if __name__ == '__main__':
|
|
||||||
# startup_target = '__main__'
|
if startup_target == '__main__':
|
||||||
# try:
|
app.ctx.memory = Memory()
|
||||||
# startup_target = sys.argv[3]
|
app.ctx.memory._telegram_bot = Bot(TELEGRAM_API_KEY)
|
||||||
# except IndexError:
|
dp._s_memory = app.ctx.memory
|
||||||
# pass
|
app.ctx.memory._app = app
|
||||||
#
|
|
||||||
# if startup_target == '__main__':
|
app.add_task(execute_queue(app))
|
||||||
# app.ctx.memory = Memory()
|
app.add_task(queue_daemon(app))
|
||||||
# app.ctx.memory._telegram_bot = Bot(TELEGRAM_API_KEY)
|
app.add_task(dp.start_polling(app.ctx.memory._telegram_bot))
|
||||||
# dp._s_memory = app.ctx.memory
|
|
||||||
# app.ctx.memory._app = app
|
app.run(host='0.0.0.0', port=SANIC_PORT)
|
||||||
#
|
else:
|
||||||
# app.add_task(execute_queue(app))
|
loop = asyncio.get_event_loop()
|
||||||
# app.add_task(queue_daemon(app))
|
startup_fn = None
|
||||||
# app.add_task(dp.start_polling(app.ctx.memory._telegram_bot))
|
if startup_target == 'indexator':
|
||||||
#
|
from app.core.background.indexator_service import main as target_fn
|
||||||
# app.run(host='0.0.0.0', port=SANIC_PORT)
|
elif startup_target == 'uploader':
|
||||||
# else:
|
from app.core.background.uploader_service import main as target_fn
|
||||||
# loop = asyncio.get_event_loop()
|
|
||||||
# startup_fn = None
|
startup_fn = startup_fn or target_fn
|
||||||
# if startup_target == 'indexator':
|
assert startup_fn
|
||||||
# from app.core.background.indexator_service import main as target_fn
|
|
||||||
# elif startup_target == 'uploader':
|
try:
|
||||||
# from app.core.background.uploader_service import main as target_fn
|
loop.run_until_complete(startup_fn())
|
||||||
#
|
except BaseException as e:
|
||||||
# startup_fn = startup_fn or target_fn
|
make_log(startup_target[0].upper() + startup_target[1:], f"Error: {e}" + '\n' + str(traceback.format_exc()),
|
||||||
# assert startup_fn
|
level='error')
|
||||||
#
|
sys.exit(1)
|
||||||
# try:
|
finally:
|
||||||
# loop.run_until_complete(startup_fn())
|
loop.close()
|
||||||
# except BaseException as e:
|
|
||||||
# make_log(startup_target[0].upper() + startup_target[1:], f"Error: {e}" + '\n' + str(traceback.format_exc()), level='error')
|
|
||||||
# sys.exit(1)
|
|
||||||
# finally:
|
|
||||||
# loop.close()
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue