github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/beegoBundle/command.go.bak (about)

     1  package beegoBundle
     2  
     3  import (
     4  	"database/sql"
     5  	"fmt"
     6  	"github.com/astaxie/beego/orm"
     7  	"github.com/bronze1man/kmg/kmgConsole"
     8  	"github.com/bronze1man/kmg/kmgSql"
     9  	"os"
    10  	"github.com/bronze1man/kmg/kmgConfig"
    11  )
    12  
    13  func AddCommandList() {
    14  	kmgConsole.AddCommandWithName("BeegoOrmCreateDb", createDbCmd)
    15  	kmgConsole.AddCommandWithName("BeegoOrmSyncDb", syncDbCmd)
    16  }
    17  
    18  func createDbCmd() {
    19  	//work around for container bug
    20  	DbConfig := kmgSql.GetDbConfigFromConfig(kmgConfig.DefaultParameter())
    21  
    22  	db, err := sql.Open("mysql", DbConfig.GetDsnWithoutDbname())
    23  	kmgConsole.ExitOnErr(err)
    24  	_, err = db.Exec(fmt.Sprintf("create database %s", DbConfig.DbName))
    25  	kmgConsole.ExitOnErr(err)
    26  }
    27  
    28  func syncDbCmd() {
    29  	InitOrm()
    30  	//TODO register database config stuff.
    31  	os.Args = []string{
    32  		os.Args[0], "orm", "syncdb",
    33  	}
    34  	orm.RunCommand()
    35  }