diff --git a/api/bolt/migrator/migrate_dbversion20.go b/api/bolt/migrator/migrate_dbversion20.go new file mode 100644 index 000000000..09b642855 --- /dev/null +++ b/api/bolt/migrator/migrate_dbversion20.go @@ -0,0 +1,22 @@ +package migrator + +import ( + portainer "github.com/portainer/portainer/api" +) + +func (m *Migrator) updateUsersToDBVersion21() error { + legacyUsers, err := m.userService.Users() + if err != nil { + return err + } + + for _, user := range legacyUsers { + user.PortainerAuthorizations = portainer.DefaultPortainerAuthorizations() + err = m.userService.UpdateUser(user.ID, &user) + if err != nil { + return err + } + } + + return nil +} diff --git a/api/bolt/migrator/migrator.go b/api/bolt/migrator/migrator.go index 048ab11ac..fa012355c 100644 --- a/api/bolt/migrator/migrator.go +++ b/api/bolt/migrator/migrator.go @@ -287,5 +287,13 @@ func (m *Migrator) Migrate() error { } } + // Portainer next + if m.currentDBVersion < 21 { + err := m.updateUsersToDBVersion21() + if err != nil { + return err + } + } + return m.versionService.StoreDBVersion(portainer.DBVersion) } diff --git a/api/portainer.go b/api/portainer.go index d7997b2d7..aac60aad4 100644 --- a/api/portainer.go +++ b/api/portainer.go @@ -905,7 +905,7 @@ const ( // APIVersion is the version number of the Portainer API APIVersion = "1.22.1" // DBVersion is the version number of the Portainer database - DBVersion = 20 + DBVersion = 21 // AssetsServerURL represents the URL of the Portainer asset server AssetsServerURL = "https://portainer-io-assets.sfo2.digitaloceanspaces.com" // MessageOfTheDayURL represents the URL where Portainer MOTD message can be retrieved