mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-27 10:20:39 +00:00
noop (#14521)
Signed-off-by: jolheiser <john.olheiser@gmail.com> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
parent
0cd87d64ff
commit
e92552abb4
1 changed files with 3 additions and 98 deletions
|
@ -4,103 +4,8 @@
|
||||||
|
|
||||||
package migrations
|
package migrations
|
||||||
|
|
||||||
import (
|
import "xorm.io/xorm"
|
||||||
"xorm.io/builder"
|
|
||||||
"xorm.io/xorm"
|
|
||||||
"xorm.io/xorm/schemas"
|
|
||||||
)
|
|
||||||
|
|
||||||
func recreateUserTableToFixDefaultValues(x *xorm.Engine) error {
|
func recreateUserTableToFixDefaultValues(_ *xorm.Engine) error {
|
||||||
type User struct {
|
return nil
|
||||||
ID int64 `xorm:"pk autoincr"`
|
|
||||||
LowerName string `xorm:"UNIQUE NOT NULL"`
|
|
||||||
Name string `xorm:"UNIQUE NOT NULL"`
|
|
||||||
FullName string
|
|
||||||
Email string `xorm:"NOT NULL"`
|
|
||||||
KeepEmailPrivate bool
|
|
||||||
EmailNotificationsPreference string `xorm:"VARCHAR(20) NOT NULL DEFAULT 'enabled'"`
|
|
||||||
Passwd string `xorm:"NOT NULL"`
|
|
||||||
PasswdHashAlgo string `xorm:"NOT NULL DEFAULT 'argon2'"`
|
|
||||||
|
|
||||||
MustChangePassword bool `xorm:"NOT NULL DEFAULT false"`
|
|
||||||
|
|
||||||
LoginType int
|
|
||||||
LoginSource int64 `xorm:"NOT NULL DEFAULT 0"`
|
|
||||||
LoginName string
|
|
||||||
Type int
|
|
||||||
Location string
|
|
||||||
Website string
|
|
||||||
Rands string `xorm:"VARCHAR(10)"`
|
|
||||||
Salt string `xorm:"VARCHAR(10)"`
|
|
||||||
Language string `xorm:"VARCHAR(5)"`
|
|
||||||
Description string
|
|
||||||
|
|
||||||
CreatedUnix int64 `xorm:"INDEX created"`
|
|
||||||
UpdatedUnix int64 `xorm:"INDEX updated"`
|
|
||||||
LastLoginUnix int64 `xorm:"INDEX"`
|
|
||||||
|
|
||||||
LastRepoVisibility bool
|
|
||||||
MaxRepoCreation int `xorm:"NOT NULL DEFAULT -1"`
|
|
||||||
|
|
||||||
// Permissions
|
|
||||||
IsActive bool `xorm:"INDEX"`
|
|
||||||
IsAdmin bool
|
|
||||||
IsRestricted bool `xorm:"NOT NULL DEFAULT false"`
|
|
||||||
AllowGitHook bool
|
|
||||||
AllowImportLocal bool
|
|
||||||
AllowCreateOrganization bool `xorm:"DEFAULT true"`
|
|
||||||
ProhibitLogin bool `xorm:"NOT NULL DEFAULT false"`
|
|
||||||
|
|
||||||
// Avatar
|
|
||||||
Avatar string `xorm:"VARCHAR(2048) NOT NULL"`
|
|
||||||
AvatarEmail string `xorm:"NOT NULL"`
|
|
||||||
UseCustomAvatar bool
|
|
||||||
|
|
||||||
// Counters
|
|
||||||
NumFollowers int
|
|
||||||
NumFollowing int `xorm:"NOT NULL DEFAULT 0"`
|
|
||||||
NumStars int
|
|
||||||
NumRepos int
|
|
||||||
|
|
||||||
// For organization
|
|
||||||
NumTeams int
|
|
||||||
NumMembers int
|
|
||||||
Visibility int `xorm:"NOT NULL DEFAULT 0"`
|
|
||||||
RepoAdminChangeTeamAccess bool `xorm:"NOT NULL DEFAULT false"`
|
|
||||||
|
|
||||||
// Preferences
|
|
||||||
DiffViewStyle string `xorm:"NOT NULL DEFAULT ''"`
|
|
||||||
Theme string `xorm:"NOT NULL DEFAULT ''"`
|
|
||||||
KeepActivityPrivate bool `xorm:"NOT NULL DEFAULT false"`
|
|
||||||
}
|
|
||||||
|
|
||||||
if _, err := x.Where(builder.IsNull{"keep_activity_private"}).
|
|
||||||
Cols("keep_activity_private").
|
|
||||||
Update(User{KeepActivityPrivate: false}); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
switch x.Dialect().URI().DBType {
|
|
||||||
case schemas.MYSQL:
|
|
||||||
_, err := x.Exec("ALTER TABLE `user` MODIFY COLUMN keep_activity_private tinyint(1) DEFAULT 0 NOT NULL;")
|
|
||||||
return err
|
|
||||||
case schemas.POSTGRES:
|
|
||||||
if _, err := x.Exec("ALTER TABLE `user` ALTER COLUMN keep_activity_private SET NOT NULL;"); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
_, err := x.Exec("ALTER TABLE `user` ALTER COLUMN keep_activity_private SET DEFAULT false;")
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
sess := x.NewSession()
|
|
||||||
defer sess.Close()
|
|
||||||
if err := sess.Begin(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
if err := recreateTable(sess, new(User)); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return sess.Commit()
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue