mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	* gitea dump: include version * Check InstallLock
This commit is contained in:
		| @@ -66,6 +66,10 @@ func fatal(format string, args ...interface{}) { | |||||||
|  |  | ||||||
| func runDump(ctx *cli.Context) error { | func runDump(ctx *cli.Context) error { | ||||||
| 	setting.NewContext() | 	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 | 	setting.NewServices() // cannot access session settings otherwise | ||||||
|  |  | ||||||
| 	err := models.SetEngine() | 	err := models.SetEngine() | ||||||
|   | |||||||
| @@ -264,6 +264,17 @@ func DumpDatabase(filePath string, dbType string) error { | |||||||
| 		} | 		} | ||||||
| 		tbs = append(tbs, t) | 		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 { | 	if len(dbType) > 0 { | ||||||
| 		return x.DumpTablesToFile(tbs, filePath, schemas.DBType(dbType)) | 		return x.DumpTablesToFile(tbs, filePath, schemas.DBType(dbType)) | ||||||
| 	} | 	} | ||||||
|   | |||||||
| @@ -21,6 +21,12 @@ func TestDumpDatabase(t *testing.T) { | |||||||
| 	dir, err := ioutil.TempDir(os.TempDir(), "dump") | 	dir, err := ioutil.TempDir(os.TempDir(), "dump") | ||||||
| 	assert.NoError(t, err) | 	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 { | 	for _, dbName := range setting.SupportedDatabases { | ||||||
| 		dbType := setting.GetDBTypeByName(dbName) | 		dbType := setting.GetDBTypeByName(dbName) | ||||||
| 		assert.NoError(t, DumpDatabase(filepath.Join(dir, dbType+".sql"), dbType)) | 		assert.NoError(t, DumpDatabase(filepath.Join(dir, dbType+".sql"), dbType)) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user