mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 01:34:27 +00: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