<%- include('../partials/layout-start') %>

Обновление с Git

<%- include('../partials/admin-nav', { adminNav: 'system' }) %>
<% if (updateOk) { %>

Обновление выполнено успешно. Если сайт не открывается — подождите 10–20 сек и обновите страницу.

<% } %> <% if (updateFail) { %>

Обновление завершилось с ошибкой (код <%= updateCode %>).

<% } %> <% if (confirmError) { %>

Введите update для подтверждения.

<% } %> <% if (disabledError) { %>

Обновление из админки отключено на этом сервере.

<% } %>

Текущая версия

<% if (!git.available) { %>

<%= git.reason || 'Git недоступен' %>

<% } else { %>
Версия приложения
v<%= git.packageVersion || '?' %>
Каталог
<%= git.shopRoot %>
Ветка
<%= git.branch %>
Коммит
<%= git.commitShort %> — <%= git.commitSubject %> (<%= git.commitDate %>)
<% if (git.dirty) { %>
Состояние
Есть незакоммиченные изменения
<% } %> <% if (git.behind != null) { %>
На origin/main
<% if (git.behind > 0) { %> Доступно обновлений: <%= git.behind %> <% } else { %> Актуально <% } %>
<% } %> <% if (git.fetchError) { %>
origin
Не удалось проверить: <%= git.fetchError %>
<% } %>
<% } %>
<% if (git.updateEnabled) { %>

Обновить сейчас

Выполняется git pull, npm install и перезапуск службы shop. Страница может оборваться на несколько секунд — это нормально.

<% } else if (git.available) { %>

Обновление из админки отключено (Windows, нет .git или ADMIN_UPDATE_ENABLED=0). На сервере: bash "$SHOP_ROOT/scripts/server-update.sh"

<% } %>
<% if (updateLog) { %>

Журнал обновления

<%= updateLog %>
<% } %>

Настройка сервера

В .env: SHOP_ROOT=/opt/shop, ADMIN_UPDATE_ENABLED=1.

Если служба работает от www-data, добавьте в sudoers (от root):

www-data ALL=(root) NOPASSWD: <%= git.shopRoot || '/opt/shop' %>/scripts/admin-web-update.sh

И в .env: ADMIN_UPDATE_USE_SUDO=1

При ошибке dubious ownership один раз на сервере:

git config --global --add safe.directory <%= git.shopRoot || '/opt/shop/shop10' %>

(для пользователя службы shop, обычно www-data)

<%- include('../partials/layout-end') %>