Перейти к основному содержимому

Точки отката и хранение исходников

Каждый успешный деплой — готовая копия сайта или приложения. Пока копия лежит в хранилище, на неё можно вернуться за секунды, без пересборки. Копии хранятся не вечно: ниже — сколько их остаётся и что с этим делать.

Сколько деплоев доступно для отката​

ОкружениеХранится
Production10 последних успешных деплоев
Ветка с preview-адресом3 последних успешных деплоя
Ветка, которая не раздаётся и в которую не деплоили 30 днейничего

Production — это ветка по умолчанию и то окружение, деплой которого сейчас открывается по основному адресу проекта. У проектов без репозитория это обычно окружение cli.

Деплой, который раздаётся прямо сейчас, и предыдущий production-деплой хранятся всегда, сколько бы новых ни вышло после них. Кнопка «Откатить» поэтому работает, даже если production не обновляли год.

Откатиться можно только на успешный деплой. Файлы упавших и отменённых сборок удаляются: сайта в них нет.

Правило одно для статических сайтов и для приложений — SSR на Next, Node, Python.

Что происходит со старыми ветками​

Ветка «не раздаётся», когда у неё нет действующего preview-адреса: её удалили, слот превью занят другой веткой или сборка не дошла до конца. Если в такую ветку не деплоили 30 дней, её копии удаляются.

Вернуть такую ветку просто: сделайте в неё push. Layero соберёт её заново из репозитория.

Ветка с действующим preview-адресом под это правило не попадает, сколько бы она ни простояла без изменений.

Как вернуться на деплой, которого нет в списке​

Старше окна — значит, готовой копии уже нет. Остаётся пересобрать нужный коммит:

  • проект из репозитория — запустите деплой с нужного коммита или ветки;
  • проект из загруженных файлов — загрузите эту версию файлов заново.

Пересборка старого коммита не гарантирует тот же результат: зависимости ставятся сегодняшние. Поэтому версию, к которой может понадобиться вернуться, лучше отмечать тегом в репозитории.

Исходники, загруженные без репозитория​

Если проект публикуется загрузкой файлов — из панели, командой layero deploy или через агента, — Layero сохраняет загруженный архив, чтобы проект можно было пересобрать без повторной загрузки.

  • Архив последней загрузки проекта хранится, пока существует проект.
  • Архивы предыдущих загрузок хранятся 7 дней.

Кнопка «Redeploy» пересобирает проект из последнего загруженного архива. Если пересобирать нечего — файлы в проект ещё не загружали, — кнопка неактивна, а подсказка на ней объясняет почему. В этом случае нажмите «Обновить файлы» или выполните layero deploy.

Архив исходников — не резервная копия вашего кода. Храните исходники у себя или в репозитории: по архиву можно пересобрать проект, но скачать его обратно нельзя.

У проектов из репозитория исходники Layero не хранит вовсе: каждая сборка берёт код из репозитория заново.

Связано: Rollback, Окружения, preview и production.