package service import ( "errors" "github.com/sirupsen/logrus" "hy2xs-admin/dao" "hy2xs-admin/model/constant" "hy2xs-admin/util" ) // Жизненный цикл Hysteria принадлежит systemd и install-оркестратору. // Панель умеет только наблюдать состояние: функций Start/Stop/Restart и // смены версии здесь нет намеренно, а не «временно отключены». func InitHysteria2() error { if !util.Exists(util.GetHysteria2BinPath()) { return errors.New("systemd-managed hysteria binary not found") } config, err := dao.GetConfig("key = ?", constant.Hysteria2Enable) if err != nil { return err } if *config.Value == "1" { logrus.Infof("hysteria2 lifecycle is managed by systemd in HY2XS production package") } return nil } func Hysteria2IsRunning() bool { _, err := util.Exec("systemctl is-active --quiet hysteria-server") return err == nil } func ReleaseHysteria2() error { return nil }