Мастер: «Настроить позже» и единый расчёт шагов для мастера и главной
- Необязательные шаги «Модули», «Оповещения и копии», «Учётные записи» и каждый модуль отдельно можно отложить кнопкой «Настроить позже»: мастер считает их завершёнными, глава «Запуск» закрывается. Отметку можно снять («Вернуть в мастер»); как только шаг настроен по-настоящему, отметка не показывается. Хранится в /var/lib/bj/.bj/wizard-deferred.json (wizdefer.go). - Шаг «Оповещения и копии» показывает, что уже настроено: почта, Zabbix, резервные копии — видно частичную настройку, сделанную в «Настройке». - Плашка «Требуется настройка — N из M» на главной считалась по старому списку из 9 шагов и расходилась с мастером. Теперь и мастер, и главная используют одну функцию wizDone и путь wizPath — те же шаги, лицензия и отметки «отложено». Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
This commit is contained in:
@@ -5,7 +5,6 @@ package lkgateway
|
||||
|
||||
import (
|
||||
"context"
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -41,28 +40,18 @@ func setupProbes(rc *RuntimeConfig) (string, int) {
|
||||
return setupProbeCache.validata, setupProbeCache.certs
|
||||
}
|
||||
|
||||
// setupSteps — шаги мастера, которые относятся к этой установке (по лицензии), и выполнены ли они.
|
||||
// setupSteps — шаги мастера этой установки и выполнены ли они: ровно тот путь и те же
|
||||
// правила, что в мастере (wizPath + wizDone), чтобы плашка на главной не расходилась с ним.
|
||||
func setupSteps(rc *RuntimeConfig) []SetupStep {
|
||||
s := rc.Snapshot()
|
||||
mnp := moduleAllowed(rc, "quik-mnp")
|
||||
validata, certs := setupProbes(rc)
|
||||
steps := []SetupStep{
|
||||
{1, "Лицензия", licenseStatus(rc).Valid},
|
||||
{2, "База bj", s.Postgres.DSN != ""},
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)
|
||||
defer cancel()
|
||||
done := wizDone(ctx, rc, validata, certs > 0)
|
||||
path, _ := wizPath(rc, done, 0)
|
||||
var steps []SetupStep
|
||||
for _, n := range path {
|
||||
steps = append(steps, SetupStep{n, wizStepTitles[n], done[n]})
|
||||
}
|
||||
if mnp {
|
||||
steps = append(steps, SetupStep{3, "Учёт DEPO", strings.TrimSpace(s.Fancy.Server) != "" && s.Fancy.DepoTablesCheckOK && s.Fancy.DepoJobCheckOK})
|
||||
}
|
||||
steps = append(steps, SetupStep{4, "Наша организация", doneOrg(s)})
|
||||
if mnp {
|
||||
steps = append(steps, SetupStep{5, "QUIK МНП", doneQuik(s)})
|
||||
}
|
||||
steps = append(steps,
|
||||
SetupStep{6, "Валидата", validata != "" || (s.Crypto.Provider != "" && s.Crypto.Provider != "stub" && s.Crypto.ModulePath != "")},
|
||||
SetupStep{7, "Шлюз НРД", doneNSD(s)},
|
||||
SetupStep{8, "Ключ и сертификаты", certs > 0},
|
||||
SetupStep{9, "Оповещения и копии", doneAlerts(s)},
|
||||
)
|
||||
return steps
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user