mirror of
https://github.com/0xJacky/nginx-ui.git
synced 2025-05-12 10:55:51 +02:00
enhance(upgrader): restart main proc manually and gracefully
This commit is contained in:
parent
31bbab71c9
commit
e72e8cef57
3 changed files with 7 additions and 12 deletions
|
@ -139,7 +139,7 @@ func PerformCoreUpgrade(c *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// bye, overseer will restart nginx-ui
|
// bye, will restart nginx-ui in performCoreUpgrade
|
||||||
err = u.PerformCoreUpgrade(tarName)
|
err = u.PerformCoreUpgrade(tarName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
_ = ws.WriteJSON(CoreUpgradeResp{
|
_ = ws.WriteJSON(CoreUpgradeResp{
|
||||||
|
|
|
@ -7,6 +7,7 @@ import (
|
||||||
"github.com/0xJacky/Nginx-UI/internal/helper"
|
"github.com/0xJacky/Nginx-UI/internal/helper"
|
||||||
"github.com/0xJacky/Nginx-UI/internal/logger"
|
"github.com/0xJacky/Nginx-UI/internal/logger"
|
||||||
"github.com/0xJacky/Nginx-UI/settings"
|
"github.com/0xJacky/Nginx-UI/settings"
|
||||||
|
"github.com/jpillora/overseer"
|
||||||
"github.com/minio/selfupdate"
|
"github.com/minio/selfupdate"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
"io"
|
"io"
|
||||||
|
@ -252,5 +253,8 @@ func (u *Upgrader) PerformCoreUpgrade(tarPath string) (err error) {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// gracefully restart
|
||||||
|
overseer.Restart()
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
13
main.go
13
main.go
|
@ -6,14 +6,12 @@ import (
|
||||||
"github.com/0xJacky/Nginx-UI/internal/kernal"
|
"github.com/0xJacky/Nginx-UI/internal/kernal"
|
||||||
"github.com/0xJacky/Nginx-UI/internal/logger"
|
"github.com/0xJacky/Nginx-UI/internal/logger"
|
||||||
"github.com/0xJacky/Nginx-UI/internal/nginx"
|
"github.com/0xJacky/Nginx-UI/internal/nginx"
|
||||||
"github.com/0xJacky/Nginx-UI/internal/upgrader"
|
|
||||||
"github.com/0xJacky/Nginx-UI/router"
|
"github.com/0xJacky/Nginx-UI/router"
|
||||||
"github.com/0xJacky/Nginx-UI/settings"
|
"github.com/0xJacky/Nginx-UI/settings"
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
"github.com/jpillora/overseer"
|
"github.com/jpillora/overseer"
|
||||||
"github.com/jpillora/overseer/fetcher"
|
|
||||||
"log"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Program(state overseer.State) {
|
func Program(state overseer.State) {
|
||||||
|
@ -42,16 +40,9 @@ func main() {
|
||||||
|
|
||||||
gin.SetMode(settings.ServerSettings.RunMode)
|
gin.SetMode(settings.ServerSettings.RunMode)
|
||||||
|
|
||||||
r, err := upgrader.GetRuntimeInfo()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Fatalln(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
overseer.Run(overseer.Config{
|
overseer.Run(overseer.Config{
|
||||||
Program: Program,
|
Program: Program,
|
||||||
Address: fmt.Sprintf("%s:%s", settings.ServerSettings.HttpHost, settings.ServerSettings.HttpPort),
|
Address: fmt.Sprintf("%s:%s", settings.ServerSettings.HttpHost, settings.ServerSettings.HttpPort),
|
||||||
Fetcher: &fetcher.File{Path: r.ExPath},
|
TerminateTimeout: 5 * time.Second,
|
||||||
TerminateTimeout: 0,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue