Skip to content

Commit cfd8e8a

Browse files
authored
gitea dump: include version & Check InstallLock (#12760)
* gitea dump: include version * Check InstallLock (close #12759) * fix test * fix lint
1 parent 226aef7 commit cfd8e8a

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

cmd/dump.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,10 @@ func runDump(ctx *cli.Context) error {
186186
if _, err := setting.Cfg.Section("log.console").NewKey("STDERR", "true"); err != nil {
187187
fatal("Setting console logger to stderr failed: %v", err)
188188
}
189+
if !setting.InstallLock {
190+
log.Error("Is '%s' really the right config path?\n", setting.CustomConf)
191+
return fmt.Errorf("gitea is not initialized")
192+
}
189193
setting.NewServices() // cannot access session settings otherwise
190194

191195
err := models.SetEngine()

models/models.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,17 @@ func DumpDatabase(filePath string, dbType string) error {
302302
}
303303
tbs = append(tbs, t)
304304
}
305+
306+
type Version struct {
307+
ID int64 `xorm:"pk autoincr"`
308+
Version int64
309+
}
310+
t, err := x.TableInfo(Version{})
311+
if err != nil {
312+
return err
313+
}
314+
tbs = append(tbs, t)
315+
305316
if len(dbType) > 0 {
306317
return x.DumpTablesToFile(tbs, filePath, schemas.DBType(dbType))
307318
}

models/models_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@ func TestDumpDatabase(t *testing.T) {
2121
dir, err := ioutil.TempDir(os.TempDir(), "dump")
2222
assert.NoError(t, err)
2323

24+
type Version struct {
25+
ID int64 `xorm:"pk autoincr"`
26+
Version int64
27+
}
28+
assert.NoError(t, x.Sync2(Version{}))
29+
2430
for _, dbName := range setting.SupportedDatabases {
2531
dbType := setting.GetDBTypeByName(dbName)
2632
assert.NoError(t, DumpDatabase(filepath.Join(dir, dbType+".sql"), dbType))

0 commit comments

Comments
 (0)