package models import ( "code.gitea.io/gitea/modules/log" "xorm.io/xorm" ) type CustomMigration struct { Description string Migrate func(*xorm.Engine) error } var customMigrations = []CustomMigration{ {"Custom v1 Topic struct change to support chinese", syncTopicStruct}, } func MigrateCustom(x *xorm.Engine) { for _, m := range customMigrations { log.Info("Migration: %s", m.Description) if err := m.Migrate(x); err != nil { log.Error("Migration: %v", err) } } } func syncTopicStruct(x *xorm.Engine) error { query := "ALTER TABLE topic ALTER COLUMN name TYPE varchar(105);" _, err := x.Exec(query) return err }