]> source.dussan.org Git - gitea.git/commitdiff
Bug fix #45
authorUnknown <joe2010xtmf@163.com>
Sun, 30 Mar 2014 15:09:59 +0000 (11:09 -0400)
committerUnknown <joe2010xtmf@163.com>
Sun, 30 Mar 2014 15:09:59 +0000 (11:09 -0400)
models/models.go
modules/base/conf.go
routers/install.go

index 06533e45f984ead1dadbdd132e2a34ef58437507..be176b5d39f2464068925edea7bdd9614a5096d3 100644 (file)
@@ -43,9 +43,9 @@ func NewTestEngine(x *xorm.Engine) (err error) {
        case "postgres":
                x, err = xorm.NewEngine("postgres", fmt.Sprintf("user=%s password=%s dbname=%s sslmode=%s",
                        DbCfg.User, DbCfg.Pwd, DbCfg.Name, DbCfg.SslMode))
-       case "sqlite3":
-               os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm)
-               x, err = xorm.NewEngine("sqlite3", DbCfg.Path)
+       // case "sqlite3":
+       //      os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm)
+       //      x, err = xorm.NewEngine("sqlite3", DbCfg.Path)
        default:
                return fmt.Errorf("Unknown database type: %s\n", DbCfg.Type)
        }
index f696d083f7b1e83ac92e0dc6ab0031215522195a..0233d0033590bcd0ad252785a455949ab990677c 100644 (file)
@@ -253,7 +253,7 @@ func NewConfigContext() {
        cfgPath := filepath.Join(workDir, "conf/app.ini")
        Cfg, err = goconfig.LoadConfigFile(cfgPath)
        if err != nil {
-               fmt.Printf("Cannot load config file '%s'\n", cfgPath)
+               fmt.Printf("Cannot load config file(%s): %v\n", cfgPath, err)
                os.Exit(2)
        }
        Cfg.BlockMode = false
@@ -261,7 +261,7 @@ func NewConfigContext() {
        cfgPath = filepath.Join(workDir, "custom/conf/app.ini")
        if com.IsFile(cfgPath) {
                if err = Cfg.AppendFiles(cfgPath); err != nil {
-                       fmt.Printf("Cannot load config file '%s'\n", cfgPath)
+                       fmt.Printf("Cannot load config file(%s): %v\n", cfgPath, err)
                        os.Exit(2)
                }
        }
index 20e4241954a6d668027c2ae2dc117bcf11539555..6f29badcfa6af47150d4aaae261de756b7930203 100644 (file)
@@ -11,7 +11,7 @@ import (
 
        "github.com/Unknwon/goconfig"
        "github.com/codegangsta/martini"
-       // "github.com/lunny/xorm"
+       "github.com/lunny/xorm"
 
        "github.com/gogits/gogs/models"
        "github.com/gogits/gogs/modules/auth"
@@ -113,12 +113,10 @@ func Install(ctx *middleware.Context, form auth.InstallForm) {
        models.DbCfg.SslMode = form.SslMode
        models.DbCfg.Path = form.DatabasePath
 
-       // ctx.RenderWithErr("Database setting is not correct: ", "install", &form)
-       // return
-       log.Trace("00000000000000000000000000000000000000000000")
+       // Set test engine.
        var x *xorm.Engine
        if err := models.NewTestEngine(x); err != nil {
-               if strings.Contains(err.Error(), `unknown driver "sqlite3"`) {
+               if strings.Contains(err.Error(), `Unknown database type: sqlite3`) {
                        ctx.RenderWithErr("Your release version does not support SQLite3, please download the official binary version "+
                                "from https://github.com/gogits/gogs/wiki/Install-from-binary, NOT the gobuild version.", "install", &form)
                } else {
@@ -133,15 +131,6 @@ func Install(ctx *middleware.Context, form auth.InstallForm) {
                return
        }
 
-       // Create admin account.
-       if _, err := models.RegisterUser(&models.User{Name: form.AdminName, Email: form.AdminEmail, Passwd: form.AdminPasswd,
-               IsAdmin: true, IsActive: true}); err != nil {
-               if err != models.ErrUserAlreadyExist {
-                       ctx.RenderWithErr("Admin account setting is invalid: "+err.Error(), "install", &form)
-                       return
-               }
-       }
-
        // Save settings.
        base.Cfg.SetValue("database", "DB_TYPE", models.DbCfg.Type)
        base.Cfg.SetValue("database", "HOST", models.DbCfg.Host)
@@ -168,13 +157,22 @@ func Install(ctx *middleware.Context, form auth.InstallForm) {
 
        base.Cfg.SetValue("security", "INSTALL_LOCK", "true")
 
-       if err := goconfig.SaveConfigFile(base.Cfg, "custom/conf/app1.ini"); err != nil {
+       if err := goconfig.SaveConfigFile(base.Cfg, "custom/conf/app.ini"); err != nil {
                ctx.RenderWithErr("Fail to save configuration: "+err.Error(), "install", &form)
                return
        }
 
        GlobalInit()
 
+       // Create admin account.
+       if _, err := models.RegisterUser(&models.User{Name: form.AdminName, Email: form.AdminEmail, Passwd: form.AdminPasswd,
+               IsAdmin: true, IsActive: true}); err != nil {
+               if err != models.ErrUserAlreadyExist {
+                       ctx.RenderWithErr("Admin account setting is invalid: "+err.Error(), "install", &form)
+                       return
+               }
+       }
+
        log.Info("First-time run install finished!")
        ctx.Redirect("/user/login")
 }