From a469ae1c48c3cdb9267486fb68996a1d4c30b1f7 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Sun, 30 Oct 2022 20:06:59 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E7=BD=AE=E9=85=8D=E7=BD=AE=E7=9A=84?= =?UTF-8?q?=E5=90=8C=E6=97=B6=E4=B9=9F=E9=87=8D=E7=BD=AE=E6=9C=AC=E5=9C=B0?= =?UTF-8?q?API=E8=8A=82=E7=82=B9=E7=9A=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/edge-admin/main.go | 18 ++++++++++++++++++ internal/configs/api_config.go | 9 +++++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/cmd/edge-admin/main.go b/cmd/edge-admin/main.go index 783c61d0..36bc0eec 100644 --- a/cmd/edge-admin/main.go +++ b/cmd/edge-admin/main.go @@ -1,6 +1,7 @@ package main import ( + "bytes" "fmt" "github.com/TeaOSLab/EdgeAdmin/internal/apps" "github.com/TeaOSLab/EdgeAdmin/internal/configs" @@ -9,10 +10,13 @@ import ( "github.com/TeaOSLab/EdgeAdmin/internal/nodes" "github.com/TeaOSLab/EdgeAdmin/internal/utils" _ "github.com/TeaOSLab/EdgeAdmin/internal/web" + "github.com/iwind/TeaGo/Tea" _ "github.com/iwind/TeaGo/bootstrap" "github.com/iwind/TeaGo/maps" "github.com/iwind/gosock/pkg/gosock" "log" + "os" + "os/exec" "time" ) @@ -53,6 +57,20 @@ func main() { fmt.Println("[ERROR]reset failed: " + err.Error()) return } + + // reset local api + var apiNodeExe = Tea.Root + "/edge-api/bin/edge-api" + _, err = os.Stat(apiNodeExe) + if err == nil { + var cmd = exec.Command(apiNodeExe, "reset") + var stderr = &bytes.Buffer{} + cmd.Stderr = stderr + err = cmd.Run() + if err != nil { + fmt.Println("reset api node failed: " + stderr.String()) + } + } + fmt.Println("done") }) app.On("recover", func() { diff --git a/internal/configs/api_config.go b/internal/configs/api_config.go index 23b5444a..de78a1c1 100644 --- a/internal/configs/api_config.go +++ b/internal/configs/api_config.go @@ -61,10 +61,11 @@ func LoadAPIConfig() (*APIConfig, error) { // ResetAPIConfig 重置配置 func ResetAPIConfig() error { - filename := "api.yaml" + var filename = "api.yaml" + // 重置 configs/api.yaml { - configFile := Tea.ConfigFile(filename) + var configFile = Tea.ConfigFile(filename) stat, err := os.Stat(configFile) if err == nil && !stat.IsDir() { err = os.Remove(configFile) @@ -77,7 +78,7 @@ func ResetAPIConfig() error { // 重置 ~/.edge-admin/api.yaml homeDir, homeErr := os.UserHomeDir() if homeErr == nil { - configFile := homeDir + "/." + teaconst.ProcessName + "/" + filename + var configFile = homeDir + "/." + teaconst.ProcessName + "/" + filename stat, err := os.Stat(configFile) if err == nil && !stat.IsDir() { err = os.Remove(configFile) @@ -89,7 +90,7 @@ func ResetAPIConfig() error { // 重置 /etc/edge-admin/api.yaml { - configFile := "/etc/" + teaconst.ProcessName + "/" + filename + var configFile = "/etc/" + teaconst.ProcessName + "/" + filename stat, err := os.Stat(configFile) if err == nil && !stat.IsDir() { err = os.Remove(configFile)