@ -59,7 +59,7 @@ type SqlStore struct {
engine * xorm . Engine
log log . Logger
Dialect migrator . Dialect
skipEnsureAdmin bool
skipEnsureDefaultOrgAndUser bool
}
func ( ss * SqlStore ) Init ( ) error {
@ -100,19 +100,16 @@ func (ss *SqlStore) Init() error {
// Register handlers
ss . addUserQueryAndCommandHandlers ( )
// ensure admin user
if ss . skipEnsureAdmin {
if ss . skipEnsureDefaultOrgAndUser {
return nil
}
return ss . ensureAdminUser ( )
return ss . ensureMainOrgAnd AdminUser ( )
}
func ( ss * SqlStore ) ensureAdminUser ( ) error {
systemUserCountQuery := m . GetSystemUserCountStatsQuery { }
func ( ss * SqlStore ) ensureMainOrgAndAdminUser ( ) error {
err := ss . InTransaction ( context . Background ( ) , func ( ctx context . Context ) error {
systemUserCountQuery := m . GetSystemUserCountStatsQuery { }
err := bus . DispatchCtx ( ctx , & systemUserCountQuery )
if err != nil {
return fmt . Errorf ( "Could not determine if admin user exists: %v" , err )
@ -122,6 +119,8 @@ func (ss *SqlStore) ensureAdminUser() error {
return nil
}
// ensure admin user
if ! ss . Cfg . DisableInitAdminCreation {
cmd := m . CreateUserCommand { }
cmd . Login = setting . AdminUser
cmd . Email = setting . AdminUser + "@localhost"
@ -133,7 +132,15 @@ func (ss *SqlStore) ensureAdminUser() error {
}
ss . log . Info ( "Created default admin" , "user" , setting . AdminUser )
return nil
}
// ensure default org if default admin user is disabled
if err := createDefaultOrg ( ctx ) ; err != nil {
return errutil . Wrap ( "Failed to create default organization" , err )
}
ss . log . Info ( "Created default organization" )
return nil
} )
@ -305,9 +312,9 @@ type ITestDB interface {
func InitTestDB ( t ITestDB ) * SqlStore {
t . Helper ( )
sqlstore := & SqlStore { }
sqlstore . skipEnsureAdmin = true
sqlstore . Bus = bus . New ( )
sqlstore . CacheService = localcache . New ( 5 * time . Minute , 10 * time . Minute )
sqlstore . skipEnsureDefaultOrgAndUser = true
dbType := migrator . SQLITE