Skip to content

Commit

Permalink
chore: migrate user heartbeats timeout preferences
Browse files Browse the repository at this point in the history
  • Loading branch information
muety committed Feb 19, 2025
1 parent 5cb8e9f commit 08ef629
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions migrations/20250219_update_heartbeats_timeout.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package migrations

import (
"github.com/muety/wakapi/config"
"github.com/muety/wakapi/models"
"gorm.io/gorm"
)

func init() {
const name = "20250219-update_heartbeats_timeout"
f := migrationFunc{
name: name,
f: func(db *gorm.DB, cfg *config.Config) error {
if hasRun(name, db) {
return nil
}

minTimeout := models.MinHeartbeatsTimeout.Seconds()
maxTimeout := models.MaxHeartbeatsTimeout.Seconds()
defaultTimeout := models.DefaultHeartbeatsTimeout.Seconds()
defaultTimeoutLegacy := models.DefaultHeartbeatsTimeoutLegacy.Seconds()

db.
Model(&models.User{}).
Where("heartbeats_timeout_sec < ?", minTimeout).
Update("heartbeats_timeout_sec", minTimeout)

db.
Model(&models.User{}).
Where("heartbeats_timeout_sec > ?", maxTimeout).
Update("heartbeats_timeout_sec", maxTimeout)

db.
Model(&models.User{}).
Where("heartbeats_timeout_sec = ?", defaultTimeoutLegacy).
Update("heartbeats_timeout_sec", defaultTimeout)

setHasRun(name, db)
return nil
},
}

registerPostMigration(f)
}

0 comments on commit 08ef629

Please sign in to comment.