Skip to content

Добавить резервную копию и проверку данных dev перед обновлением зависимостей - #848

Merged
TThanos3000 merged 1 commit into
devfrom
codex/dependency-dev-guard
Nov 2, 2026
Merged

TThanos3000 merged 1 commit into
devfrom
codex/dependency-dev-guard

Conversation

@TThanos3000

@TThanos3000 TThanos3000 commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator

Что изменено

В штатный dev-workflow добавлены ручные операции dependency_backup и dependency_verify. Они выполняются из разрешенной ветки dev через существующий SSH-транспорт с проверкой ключа хоста.

Backup проверяет принадлежность контейнеров dev-compose, имя базы procollab_db_dev, версию PostgreSQL и свободное место. Архив pg_dump проверяется полным чтением pg_restore в /dev/null; архив, manifest и копия окружения сохраняются только на dev-сервере с закрытыми правами. Для отката сохраняется отдельный тег текущего образа. Снимок контрольных сумм записей вычисляется в read-only транзакции; значения пользовательских данных в Actions не выводятся.

Verify проверяет сохранность архива, существующих записей и их содержимого, допуская новые записи и изменение служебных полей активности. Удаление или изменение существующих данных завершает проверку ошибкой для разбора.

Изменения только этих двух служебных файлов не запускают автоматическую выкладку. Обычная выкладка исходников сохраняет прежний триггер; операции backup/verify отделены от deployment и solution acceptance.

Проверка

  • Проверены синтаксис host/probe Python, структура YAML, изоляция режимов workflow и flake8 нового скрипта.
  • Использован существующий проверенный scripts/dev_ci_ssh.cjs с закрепленным отпечатком хоста.
  • Контрольный SQL-probe проверен на изолированном PostgreSQL: 6 проверок прошли, включая обнаружение изменений/бинарных данных, запрет записи самим PostgreSQL и отказ для другой базы.
  • GitHub CI, PostgreSQL и мигратор PostgreSQL 14/18 — успешно.
  • Перед обновлением из PR Обновить backend до Django 5.2 LTS и совместимых безопасных зависимостей #847 требуется успешный backup; после обновления выполняется verify.

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

Операции ограничены dev, без миграций и изменения записей базы. Архив остается на сервере; проверка формата не выполняет восстановление в действующую базу. Изменение только dev-workflow требует ручного запуска deploy, если такая выкладка нужна.

@TThanos3000
TThanos3000 merged commit 68e8122 into dev Nov 2, 2026
5 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