diff --git a/cmd/commands/beegopro/beegopro.go b/cmd/commands/beegopro/beegopro.go index e30567e..eca1036 100644 --- a/cmd/commands/beegopro/beegopro.go +++ b/cmd/commands/beegopro/beegopro.go @@ -47,6 +47,8 @@ func BeegoPro(cmd *commands.Command, args []string) int { switch gcmd { case "gen": beegopro.DefaultBeegoPro.Run() + case "toml": + beegopro.DefaultBeegoPro.InitToml() case "config": beegopro.DefaultBeegoPro.GenConfig() case "migration": diff --git a/internal/app/module/beegopro/container.go b/internal/app/module/beegopro/container.go index 3046698..cbeb9b6 100644 --- a/internal/app/module/beegopro/container.go +++ b/internal/app/module/beegopro/container.go @@ -2,16 +2,18 @@ package beegopro import ( "fmt" + "io/ioutil" + "sync" + "time" + + "github.com/davecgh/go-spew/spew" + "github.com/pelletier/go-toml" + "github.com/spf13/viper" + "github.com/beego/bee/internal/pkg/git" "github.com/beego/bee/internal/pkg/system" beeLogger "github.com/beego/bee/logger" "github.com/beego/bee/utils" - "github.com/davecgh/go-spew/spew" - "github.com/pelletier/go-toml" - "github.com/spf13/viper" - "io/ioutil" - "sync" - "time" ) const MDateFormat = "20060102_150405" @@ -60,6 +62,24 @@ func (c *Container) Run() { c.flushTimestamp() } +func (c *Container) InitToml() { + if exist := utils.IsExist(c.BeegoProFile); exist { + beeLogger.Log.Fatalf("file beegopro.toml already exists") + } + sourceFile := c.UserOption.GitLocalPath + "/beegopro.toml" + input, err := ioutil.ReadFile(sourceFile) + if err != nil { + beeLogger.Log.Fatalf("read beegopro.toml file err, %s", err.Error()) + return + } + err = ioutil.WriteFile(c.BeegoProFile, input, 0644) + if err != nil { + beeLogger.Log.Fatalf("create beegopro.toml file err, %s", err.Error()) + return + } + beeLogger.Log.Success("Successfully created file beegopro.toml") +} + func (c *Container) initUserOption() { if !utils.IsExist(c.BeegoProFile) { beeLogger.Log.Fatalf("beego pro config is not exist, beego json path: %s", c.BeegoProFile)