Обновления: криптосервис ставится сам при любой лицензии; модули вне лицензии в списке не показываются

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
zuevav
2026-09-24 18:04:20 +03:00
parent 350c673764
commit dccd414643
2 changed files with 6 additions and 2 deletions
+3 -1
View File
@@ -324,7 +324,9 @@ func updateComponentRows(rc *RuntimeConfig) ([]release.ComponentState, bool) {
} }
r.Available = avail[r.Name] r.Available = avail[r.Name]
r.Update = r.Available != "" && (r.Present || r.Core) && (r.Installed == "" || release.IsNewer(r.Available, r.Installed)) r.Update = r.Available != "" && (r.Present || r.Core) && (r.Installed == "" || release.IsNewer(r.Available, r.Installed))
if r.Present || r.Core || r.Available != "" { // Модуль, которого нет на сервере и нет в лицензии, не показываем: поставить его нельзя,
// а в списке он выглядит так, будто входит в поставку.
if r.Present || r.Core || (r.Available != "" && moduleAllowed(rc, r.Feature)) {
out = append(out, r) out = append(out, r)
} }
} }
+3 -1
View File
@@ -36,7 +36,9 @@ var Components = []Component{
// они переписываются командой «bj-installer refresh-system» — правки установки приезжают // они переписываются командой «bj-installer refresh-system» — правки установки приезжают
// обновлением, образ ISO пересобирать не нужно. // обновлением, образ ISO пересобирать не нужно.
{Name: "bj-installer", Title: "Установщик и системные файлы (службы, скрипты)", Path: "/usr/local/sbin/bj-installer", Exec: true, Core: true, Feature: "updates"}, {Name: "bj-installer", Title: "Установщик и системные файлы (службы, скрипты)", Path: "/usr/local/sbin/bj-installer", Exec: true, Core: true, Feature: "updates"},
{Name: "crypto-service.jar", Title: "Криптосервис", Path: "/opt/bj/crypto-service.jar", Unit: "bj-crypto", Feature: "updates"}, // Криптосервис нужен любой установке (подпись и проверка через Валидату), но в образ не входит:
// ставится с первым обновлением после ввода ключа — как выделенный из ядра модуль.
{Name: "crypto-service.jar", Title: "Криптосервис", Path: "/opt/bj/crypto-service.jar", Unit: "bj-crypto", FromCore: true, Feature: "updates"},
{Name: "bj-lk", Title: "Личный кабинет клиента", Path: "/opt/bj/bj-lk", Unit: "bj-lk", Exec: true, Feature: "web-cabinet"}, {Name: "bj-lk", Title: "Личный кабинет клиента", Path: "/opt/bj/bj-lk", Unit: "bj-lk", Exec: true, Feature: "web-cabinet"},
{Name: "bj-npr", Title: "Риск-монитор НПР / УДС", Path: "/opt/bj/bj-npr", Unit: "bj-npr", Exec: true, FromCore: true, Feature: "npr"}, {Name: "bj-npr", Title: "Риск-монитор НПР / УДС", Path: "/opt/bj/bj-npr", Unit: "bj-npr", Exec: true, FromCore: true, Feature: "npr"},
{Name: "bj-quikexport", Title: "Экспорт QUIK", Path: "/opt/bj/bj-quikexport", Unit: "bj-quikexport", Exec: true, FromCore: true, Feature: "quik-export"}, {Name: "bj-quikexport", Title: "Экспорт QUIK", Path: "/opt/bj/bj-quikexport", Unit: "bj-quikexport", Exec: true, FromCore: true, Feature: "quik-export"},