mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-11-14 12:20:27 +08:00
增加edge-admin reset命令,用来清理对应的配置
This commit is contained in:
@@ -6,3 +6,4 @@
|
|||||||
./build.sh linux mips64
|
./build.sh linux mips64
|
||||||
./build.sh linux mips64le
|
./build.sh linux mips64le
|
||||||
./build.sh darwin amd64
|
./build.sh darwin amd64
|
||||||
|
./build.sh darwin arm64
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package main
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/TeaOSLab/EdgeAdmin/internal/apps"
|
"github.com/TeaOSLab/EdgeAdmin/internal/apps"
|
||||||
|
"github.com/TeaOSLab/EdgeAdmin/internal/configs"
|
||||||
teaconst "github.com/TeaOSLab/EdgeAdmin/internal/const"
|
teaconst "github.com/TeaOSLab/EdgeAdmin/internal/const"
|
||||||
"github.com/TeaOSLab/EdgeAdmin/internal/nodes"
|
"github.com/TeaOSLab/EdgeAdmin/internal/nodes"
|
||||||
_ "github.com/TeaOSLab/EdgeAdmin/internal/web"
|
_ "github.com/TeaOSLab/EdgeAdmin/internal/web"
|
||||||
@@ -13,7 +14,14 @@ func main() {
|
|||||||
app := apps.NewAppCmd().
|
app := apps.NewAppCmd().
|
||||||
Version(teaconst.Version).
|
Version(teaconst.Version).
|
||||||
Product(teaconst.ProductName).
|
Product(teaconst.ProductName).
|
||||||
Usage(teaconst.ProcessName + " [-v|start|stop|restart|service|daemon]")
|
Usage(teaconst.ProcessName+" [-v|start|stop|restart|service|daemon|reset]").
|
||||||
|
Option("-h", "show this help").
|
||||||
|
Option("-v", "show version").
|
||||||
|
Option("start", "start the service").
|
||||||
|
Option("stop", "stop the service").
|
||||||
|
Option("service", "register service into systemd").
|
||||||
|
Option("daemon", "start the service with daemon").
|
||||||
|
Option("reset", "reset configs")
|
||||||
|
|
||||||
app.On("daemon", func() {
|
app.On("daemon", func() {
|
||||||
nodes.NewAdminNode().Daemon()
|
nodes.NewAdminNode().Daemon()
|
||||||
@@ -26,6 +34,14 @@ func main() {
|
|||||||
}
|
}
|
||||||
fmt.Println("done")
|
fmt.Println("done")
|
||||||
})
|
})
|
||||||
|
app.On("reset", func() {
|
||||||
|
err := configs.ResetAPIConfig()
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("[ERROR]reset failed: " + err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
fmt.Println("done")
|
||||||
|
})
|
||||||
app.Run(func() {
|
app.Run(func() {
|
||||||
adminNode := nodes.NewAdminNode()
|
adminNode := nodes.NewAdminNode()
|
||||||
adminNode.Run()
|
adminNode.Run()
|
||||||
|
|||||||
@@ -59,6 +59,49 @@ func LoadAPIConfig() (*APIConfig, error) {
|
|||||||
return config, nil
|
return config, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ResetAPIConfig 重置配置
|
||||||
|
func ResetAPIConfig() error {
|
||||||
|
filename := "api.yaml"
|
||||||
|
|
||||||
|
{
|
||||||
|
configFile := Tea.ConfigFile(filename)
|
||||||
|
stat, err := os.Stat(configFile)
|
||||||
|
if err == nil && !stat.IsDir() {
|
||||||
|
err = os.Remove(configFile)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重置 ~/.edge-admin/api.yaml
|
||||||
|
homeDir, homeErr := os.UserHomeDir()
|
||||||
|
if homeErr == nil {
|
||||||
|
configFile := homeDir + "/." + teaconst.ProcessName + "/" + filename
|
||||||
|
stat, err := os.Stat(configFile)
|
||||||
|
if err == nil && !stat.IsDir() {
|
||||||
|
err = os.Remove(configFile)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重置 /etc/edge-admin/api.yaml
|
||||||
|
{
|
||||||
|
configFile := "/etc/" + teaconst.ProcessName + "/" + filename
|
||||||
|
stat, err := os.Stat(configFile)
|
||||||
|
if err == nil && !stat.IsDir() {
|
||||||
|
err = os.Remove(configFile)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// WriteFile 写入API配置
|
// WriteFile 写入API配置
|
||||||
func (this *APIConfig) WriteFile(path string) error {
|
func (this *APIConfig) WriteFile(path string) error {
|
||||||
data, err := yaml.Marshal(this)
|
data, err := yaml.Marshal(this)
|
||||||
@@ -84,7 +127,7 @@ func (this *APIConfig) WriteFile(path string) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 写入 /etc/.edge-admin
|
// 写入 /etc/edge-admin
|
||||||
{
|
{
|
||||||
dir := "/etc/" + teaconst.ProcessName
|
dir := "/etc/" + teaconst.ProcessName
|
||||||
stat, err := os.Stat(dir)
|
stat, err := os.Stat(dir)
|
||||||
|
|||||||
Reference in New Issue
Block a user