From 104e948b9cbc1679711642eb3a139f82f39fa5ec Mon Sep 17 00:00:00 2001 From: Aine Date: Wed, 31 Aug 2022 10:33:13 +0300 Subject: [PATCH] remove migrations --- README.md | 1 - bot/bot.go | 5 ++--- bot/command.go | 2 +- bot/data.go | 1 - bot/{mutext.go => mutex.go} | 0 bot/settings_bot.go | 19 ++++++------------- bot/settings_room.go | 31 ------------------------------- cmd/cmd.go | 2 +- config/config.go | 1 - config/types.go | 2 -- 10 files changed, 10 insertions(+), 54 deletions(-) rename bot/{mutext.go => mutex.go} (100%) diff --git a/README.md b/README.md index 631e933..c7ea409 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,6 @@ env vars * **POSTMOOGLE_DB_DIALECT** - database dialect (postgres, sqlite3) * **POSTMOOGLE_MAXSIZE** - max email size (including attachments) in megabytes * **POSTMOOGLE_ADMINS** - a space-separated list of admin users. See `POSTMOOGLE_USERS` for syntax examples -* **POSTMOOGLE_USERS** - deprecated and ignored, use `!pm users` instead You can find default values in [config/defaults.go](config/defaults.go) diff --git a/bot/bot.go b/bot/bot.go index 9365e5e..d3a695b 100644 --- a/bot/bot.go +++ b/bot/bot.go @@ -37,7 +37,6 @@ func New( log *logger.Logger, prefix string, domain string, - envUsers []string, admins []string, ) (*Bot, error) { b := &Bot{ @@ -50,7 +49,7 @@ func New( lp: lp, mu: map[id.RoomID]*sync.Mutex{}, } - users, err := b.initBotUsers(envUsers) + users, err := b.initBotUsers() if err != nil { return nil, err } @@ -66,7 +65,7 @@ func New( } b.allowedAdmins = allowedAdmins - b.commands = b.buildCommandList() + b.commands = b.initCommands() return b, nil } diff --git a/bot/command.go b/bot/command.go index 09ba665..9d6436b 100644 --- a/bot/command.go +++ b/bot/command.go @@ -38,7 +38,7 @@ func (c commandList) get(key string) *command { return nil } -func (b *Bot) buildCommandList() commandList { +func (b *Bot) initCommands() commandList { return commandList{ // special commands { diff --git a/bot/data.go b/bot/data.go index 160cc72..db8f82a 100644 --- a/bot/data.go +++ b/bot/data.go @@ -37,7 +37,6 @@ func (b *Bot) syncRooms() error { return err } for _, roomID := range resp.JoinedRooms { - b.migrateSettings(roomID) cfg, serr := b.getRoomSettings(roomID) if serr != nil { b.log.Warn("cannot get %s settings: %v", roomID, err) diff --git a/bot/mutext.go b/bot/mutex.go similarity index 100% rename from bot/mutext.go rename to bot/mutex.go diff --git a/bot/settings_bot.go b/bot/settings_bot.go index 72ee168..23ba72a 100644 --- a/bot/settings_bot.go +++ b/bot/settings_bot.go @@ -40,25 +40,18 @@ func (s botSettings) Users() []string { return []string{value} } -func (b *Bot) initBotUsers(envUsers []string) ([]string, error) { +func (b *Bot) initBotUsers() ([]string, error) { config := b.getBotSettings() cfgUsers := config.Users() if len(cfgUsers) > 0 { - // already migrated return cfgUsers, nil } - if len(envUsers) == 0 { - _, homeserver, err := b.lp.GetClient().UserID.Parse() - if err != nil { - return nil, err - } - config.Set(botOptionUsers, "@*:"+homeserver) - } else { - // Initialize from environment variable - // TODO: remove this migration later and always initialize to `"@*:"+homeserver` - config.Set(botOptionUsers, strings.Join(envUsers, " ")) - } + _, homeserver, err := b.lp.GetClient().UserID.Parse() + if err != nil { + return nil, err + } + config.Set(botOptionUsers, "@*:"+homeserver) return config.Users(), b.setBotSettings(config) } diff --git a/bot/settings_room.go b/bot/settings_room.go index ce0bfd6..6e357d9 100644 --- a/bot/settings_room.go +++ b/bot/settings_room.go @@ -1,7 +1,6 @@ package bot import ( - "strconv" "strings" "maunium.net/go/mautrix/id" @@ -25,13 +24,6 @@ const ( type roomSettings map[string]string -// settingsOld of a room -type settingsOld struct { - Mailbox string - Owner id.UserID - NoSender bool -} - // Get option func (s roomSettings) Get(key string) string { return s[strings.ToLower(strings.TrimSpace(key))] @@ -70,29 +62,6 @@ func (s roomSettings) NoFiles() bool { return utils.Bool(s.Get(roomOptionNoFiles)) } -// TODO: remove after migration -func (b *Bot) migrateSettings(roomID id.RoomID) { - var config settingsOld - err := b.lp.GetClient().GetRoomAccountData(roomID, acRoomSettingsKey, &config) - if err != nil { - // any error = no need to migrate - return - } - - if config.Mailbox == "" { - return - } - cfg := roomSettings{} - cfg.Set(roomOptionMailbox, config.Mailbox) - cfg.Set(roomOptionOwner, config.Owner.String()) - cfg.Set(roomOptionNoSender, strconv.FormatBool(config.NoSender)) - - err = b.setRoomSettings(roomID, cfg) - if err != nil { - b.log.Error("cannot migrate settings: %v", err) - } -} - func (b *Bot) getRoomSettings(roomID id.RoomID) (roomSettings, error) { cfg := b.cfg.Get(roomID.String()) if cfg != nil { diff --git a/cmd/cmd.go b/cmd/cmd.go index a76978c..9d578bd 100644 --- a/cmd/cmd.go +++ b/cmd/cmd.go @@ -83,7 +83,7 @@ func initBot(cfg *config.Config) { log.Fatal("cannot initialize matrix bot: %v", err) } - mxb, err = bot.New(lp, mxlog, cfg.Prefix, cfg.Domain, cfg.Users, cfg.Admins) + mxb, err = bot.New(lp, mxlog, cfg.Prefix, cfg.Domain, cfg.Admins) if err != nil { // nolint // Fatal = panic, not os.Exit() log.Fatal("cannot start matrix bot: %v", err) diff --git a/config/config.go b/config/config.go index 9d3cec2..82950da 100644 --- a/config/config.go +++ b/config/config.go @@ -20,7 +20,6 @@ func New() *Config { NoEncryption: env.Bool("noencryption"), MaxSize: env.Int("maxsize", defaultConfig.MaxSize), StatusMsg: env.String("statusmsg", defaultConfig.StatusMsg), - Users: env.Slice("users"), Admins: env.Slice("admins"), Sentry: Sentry{ DSN: env.String("sentry.dsn", defaultConfig.Sentry.DSN), diff --git a/config/types.go b/config/types.go index 605d8a5..50ca24b 100644 --- a/config/types.go +++ b/config/types.go @@ -22,8 +22,6 @@ type Config struct { MaxSize int // StatusMsg of the bot StatusMsg string - // Users DEPRECATED holds list of allowed users (wildcards supported), e.g.: @*:example.com, @bot.*:example.com, @admin:*. Empty = homeserver only - Users []string // Admins holds list of admin users (wildcards supported), e.g.: @*:example.com, @bot.*:example.com, @admin:*. Empty = no admins Admins []string