diff options
Diffstat (limited to 'database')
| -rw-r--r-- | database/database.go | 2 | ||||
| -rw-r--r-- | database/migration.go | 22 |
2 files changed, 24 insertions, 0 deletions
diff --git a/database/database.go b/database/database.go index 27b99eb..ac06c98 100644 --- a/database/database.go +++ b/database/database.go @@ -33,4 +33,6 @@ func init() { sqlDB.SetConnMaxLifetime(MAX_CONNECTION_LIFETIME) logger.Successf(LOG_PREFIX, messages.DatabaseConnected, databaseDSN) + + migrate() } diff --git a/database/migration.go b/database/migration.go new file mode 100644 index 0000000..4d8363c --- /dev/null +++ b/database/migration.go @@ -0,0 +1,22 @@ +package database + +import ( + "dove/messages" + "dove/models" + "dove/utils/logger" +) + +func migrate() { + migrationError := DB.AutoMigrate( + &models.User{}, + &models.Mailbox{}, + &models.Alias{}, + &models.Email{}, + &models.Tag{}, + &models.Attachment{}, + ) + + if migrationError != nil { + logger.Fatalf(LOG_PREFIX, messages.DatabaseMigrationFailed, migrationError) + } +} |
