diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2014-04-30 10:23:43 +0800 |
---|---|---|
committer | Lunny Xiao <xiaolunwen@gmail.com> | 2014-04-30 10:23:43 +0800 |
commit | cdc843f06b90acf71211a684ba32cd92c765230d (patch) | |
tree | d1ab0c699db13ec2c2bc16032fe8c73ff0eb8b09 | |
parent | 0da329462ec4f9164a258ca4d2b1552a6166827e (diff) | |
download | gitea-cdc843f06b90acf71211a684ba32cd92c765230d.tar.gz gitea-cdc843f06b90acf71211a684ba32cd92c765230d.zip |
add fix command for upgrade
-rw-r--r-- | fix.go | 44 | ||||
-rw-r--r-- | gogs.go | 1 | ||||
-rw-r--r-- | models/fix.go | 6 |
3 files changed, 51 insertions, 0 deletions
diff --git a/fix.go b/fix.go new file mode 100644 index 0000000000..afc1ea6ebf --- /dev/null +++ b/fix.go @@ -0,0 +1,44 @@ +// Copyright 2014 The Gogs Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package main + +import ( + "fmt" + "os" + + "github.com/codegangsta/cli" + "github.com/gogits/gogs/models" + "github.com/gogits/gogs/modules/base" +) + +var CmdFix = cli.Command{ + Name: "fix", + Usage: "This command for upgrade from old version", + Description: ` +gogs fix provide upgrade from old version`, + Action: runFix, + Flags: []cli.Flag{}, +} + +func runFix(k *cli.Context) { + execDir, _ := base.ExecDir() + newLogger(execDir) + + base.NewConfigContext() + models.LoadModelsConfig() + + if models.UseSQLite3 { + os.Chdir(execDir) + } + + models.SetEngine() + + err := models.Fix() + if err != nil { + fmt.Println(err) + } else { + fmt.Println("Fix successfully!") + } +} @@ -35,6 +35,7 @@ func main() { CmdWeb, CmdServ, CmdUpdate, + CmdFix, } app.Flags = append(app.Flags, []cli.Flag{}...) app.Run(os.Args) diff --git a/models/fix.go b/models/fix.go new file mode 100644 index 0000000000..9fc141bd26 --- /dev/null +++ b/models/fix.go @@ -0,0 +1,6 @@ +package models + +func Fix() error { + _, err := orm.Exec("alter table repository drop column num_releases") + return err +} |