diff --git a/commands/github/check_workflows.py b/commands/github/check_workflows.py index fba3bff..f649a65 100644 --- a/commands/github/check_workflows.py +++ b/commands/github/check_workflows.py @@ -1,9 +1,8 @@ import sys - import aiohttp - from bot_init import bot from config import AUTHOR, GITHUB +from commands.misc.shutdows_deff import shutdown_def OWNER = AUTHOR REPO = 'Dev-bot' @@ -15,11 +14,10 @@ 'Accept': 'application/vnd.github.v3+json', } - async def check_workflows(): """ Проверяет состояние запущенных GitHub Actions workflows и завершает работу бота, - если обнаружено более одного процесса с состоянием 'in_progress'. + если обнаружено более одного процесса с состоянием 'in_progress' для workflow с именем 'Deploy Discord-Bot'. """ try: async with aiohttp.ClientSession(headers=HEADERS) as session: @@ -35,6 +33,11 @@ async def check_workflows(): # Проверяем все workflows for run in workflows.get('workflow_runs', []): run_name = run.get('name', 'Неизвестно') + + # Проверяем, что имя процесса соответствует 'Deploy Discord-Bot' + if run_name != 'Deploy Discord-Bot': + continue + status = run.get('status', 'Неизвестно') conclusion = run.get('conclusion', 'Не завершено') created_at = run.get('created_at', 'Неизвестно') @@ -52,15 +55,16 @@ async def check_workflows(): # Если больше одного процесса в статусе 'in_progress', завершаем работу if in_progress_count > 1: - print("❌ Обнаружено более одного запущенного workflow. Завершаем процесс...") + print("❌ Обнаружено более одного запущенного workflow 'Deploy Discord-Bot'. Завершаем процесс...") + await shutdown_def() await bot.close() sys.exit(0) # Логируем результат проверки if in_progress_count == 0: - print("✅ Нет запущенных workflow в статусе 'in_progress'. Продолжаем работу.") + print("✅ Нет запущенных workflow 'Deploy Discord-Bot' в статусе 'in_progress'. Продолжаем работу.") else: - print(f"⚠️ Обнаружено {in_progress_count} запущенный(ых) workflow в статусе 'in_progress'. Продолжаем работу.") + print(f"⚠️ Обнаружено {in_progress_count} запущенный(ых) workflow 'Deploy Discord-Bot' в статусе 'in_progress'. Продолжаем работу.") except aiohttp.ClientError as e: print(f"❌ Ошибка при подключении к GitHub API: {e}")