Skip to content

add backend react dev autodeploy - #675

Merged
TThanos3000 merged 1 commit into
masterfrom
infra/dev-075-backend-react-dev-autodeploy
Jul 31, 2026
Merged

add backend react dev autodeploy#675
TThanos3000 merged 1 commit into
masterfrom
infra/dev-075-backend-react-dev-autodeploy

Conversation

@TThanos3000

@TThanos3000 TThanos3000 commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Что изменено

  • Добавлен workflow Backend React-dev deploy.
  • Deploy запускается только после успешного Backend PostgreSQL CI для push в master.
  • Разворачивается exact SHA, прошедший PostgreSQL CI.
  • Добавлена строгая SSH-проверка через pinned known_hosts.
  • Разрешён только React-dev backend /root/api-react-dev.
  • Старый backend /root/api и production не затрагиваются.
  • React-dev Compose project и config определяются по labels работающего контейнера.
  • Репозиторный legacy docker-compose.yml запрещён для автодеплоя.
  • Реализована последовательность build → Django check → migrate → recreate → health-check.
  • Пересоздаются только web и celery.
  • Redis, nginx и database containers не перезапускаются.
  • Добавлен rollback к предыдущему code SHA и предыдущим Docker images.
  • Добавлена защита от устаревшего deploy и параллельных запусков.
  • Добавлена русская документация.

GitHub Secrets

Перед первым deploy должны быть настроены:

  • REACT_DEV_SSH_HOST
  • REACT_DEV_SSH_PORT
  • REACT_DEV_SSH_USER
  • REACT_DEV_SSH_PRIVATE_KEY
  • REACT_DEV_SSH_KNOWN_HOSTS

Значения secrets не хранятся в репозитории и не передаются в серверный .env.

Проверка

  • bash -n scripts/deploy_react_dev.sh — успешно.
  • YAML parsing workflow — успешно.
  • Статический security-аудит — успешно.
  • Negative-path для некорректного SHA — успешно.
  • git diff --check — успешно.
  • Изменены только workflow, deploy script и документация.
  • Реальный SSH и deploy локально не выполнялись.

Риски и ограничения

  • Первый реальный deploy выполняется только после настройки GitHub Secrets.
  • Автоматический rollback возвращает code и containers, но не откатывает уже применённые миграции.
  • Новые миграции должны быть backward-compatible с предыдущим Docker image.
  • Старые Docker images пока не удаляются.
  • Первый deploy необходимо проверить через GitHub Actions, публичный React-dev API и основной пользовательский сценарий в браузере.

Roadmap

Roadmap-IDs: DEV-075
Roadmap-Partial: DEV-075

@TThanos3000
TThanos3000 merged commit 6af421f into master Jul 31, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant