* gitea dump: include version * Check InstallLocktags/v1.12.5
@@ -66,6 +66,10 @@ func fatal(format string, args ...interface{}) { | |||
func runDump(ctx *cli.Context) error { | |||
setting.NewContext() | |||
if !setting.InstallLock { | |||
log.Error("Is '%s' really the right config path?\n", setting.CustomConf) | |||
return fmt.Errorf("gitea is not initialized") | |||
} | |||
setting.NewServices() // cannot access session settings otherwise | |||
err := models.SetEngine() |
@@ -264,6 +264,17 @@ func DumpDatabase(filePath string, dbType string) error { | |||
} | |||
tbs = append(tbs, t) | |||
} | |||
type Version struct { | |||
ID int64 `xorm:"pk autoincr"` | |||
Version int64 | |||
} | |||
t, err := x.TableInfo(Version{}) | |||
if err != nil { | |||
return err | |||
} | |||
tbs = append(tbs, t) | |||
if len(dbType) > 0 { | |||
return x.DumpTablesToFile(tbs, filePath, schemas.DBType(dbType)) | |||
} |
@@ -21,6 +21,12 @@ func TestDumpDatabase(t *testing.T) { | |||
dir, err := ioutil.TempDir(os.TempDir(), "dump") | |||
assert.NoError(t, err) | |||
type Version struct { | |||
ID int64 `xorm:"pk autoincr"` | |||
Version int64 | |||
} | |||
assert.NoError(t, x.Sync2(Version{})) | |||
for _, dbName := range setting.SupportedDatabases { | |||
dbType := setting.GetDBTypeByName(dbName) | |||
assert.NoError(t, DumpDatabase(filepath.Join(dir, dbType+".sql"), dbType)) |