Merge pull request 'Drop Gitea-specific columns from two tables' (#3475) from algernon/forgejo:wiki-branch-wars-episode-iii-a-new-migration into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3475 Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
This commit is contained in:
		
						commit
						d6c36ec406
					
				
					 2 changed files with 45 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -64,6 +64,8 @@ var migrations = []*Migration{
 | 
			
		|||
	NewMigration("Add repo_archive_download_count table", forgejo_v1_22.AddRepoArchiveDownloadCount),
 | 
			
		||||
	// v13 -> v14
 | 
			
		||||
	NewMigration("Add `hide_archive_links` column to `release` table", AddHideArchiveLinksToRelease),
 | 
			
		||||
	// v14 -> v15
 | 
			
		||||
	NewMigration("Remove Gitea-specific columns from the repository and badge tables", RemoveGiteaSpecificColumnsFromRepositoryAndBadge),
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetCurrentDBVersion returns the current Forgejo database version.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										43
									
								
								models/forgejo_migrations/v14.go
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								models/forgejo_migrations/v14.go
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,43 @@
 | 
			
		|||
// Copyright 2024 The Forgejo Authors. All rights reserved.
 | 
			
		||||
// SPDX-License-Identifier: MIT
 | 
			
		||||
 | 
			
		||||
package forgejo_migrations //nolint:revive
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"code.gitea.io/gitea/models/migrations/base"
 | 
			
		||||
 | 
			
		||||
	"xorm.io/xorm"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func RemoveGiteaSpecificColumnsFromRepositoryAndBadge(x *xorm.Engine) error {
 | 
			
		||||
	// Make sure the columns exist before dropping them
 | 
			
		||||
	type Repository struct {
 | 
			
		||||
		ID                int64
 | 
			
		||||
		DefaultWikiBranch string
 | 
			
		||||
	}
 | 
			
		||||
	if err := x.Sync(&Repository{}); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	type Badge struct {
 | 
			
		||||
		ID   int64 `xorm:"pk autoincr"`
 | 
			
		||||
		Slug string
 | 
			
		||||
	}
 | 
			
		||||
	err := x.Sync(new(Badge))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	sess := x.NewSession()
 | 
			
		||||
	defer sess.Close()
 | 
			
		||||
	if err := sess.Begin(); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := base.DropTableColumns(sess, "repository", "default_wiki_branch"); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := base.DropTableColumns(sess, "badge", "slug"); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return sess.Commit()
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue