/
Paff
/
declarant
Обзор
Документация
Войти
/
Paff
/
declarant
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
_force_rebuild.py
34 строки
1 KB
1pash1985-gif
Unified doc list UI + AI prompt for FORM_A
05 авг 2026, 10:09
05 авг 2026, 10:09
e439f08
Код
Авторство
О чём код?
# -*- coding: utf-8 -*- import os import paramiko, sys sys.stdout.reconfigure(encoding='utf-8') HOST = os.environ.get('DEPLOY_HOST', '104.171.138.49') USER = os.environ.get('DEPLOY_USER', 'root') PASS = os.environ.get('DEPLOY_PASS') if not PASS: print('Set DEPLOY_PASS environment variable', file=sys.stderr) sys.exit(1) # Принудительный сброс BuildKit-кэша и полная пересборка CMD = ( 'cd /opt/declarant && ' 'git pull origin main && ' 'docker builder prune -f && ' 'docker compose build --no-cache app && ' 'docker compose up -d && ' 'sleep 2 && ' 'docker ps --format "table {{.Names}}\\t{{.Status}}" | grep declarant && ' 'echo "=== VERSION ===" && ' 'cat web/frontend/dist/version.json' ) client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(HOST, username=USER, password=PASS, timeout=180) stdin, stdout, stderr = client.exec_command(CMD, get_pty=True) for line in iter(stdout.readline, ''): print(line, end='', flush=True) ec = stdout.channel.recv_exit_status() client.close() print(f'\nExit: {ec}')