mirror of
https://github.com/go-gitea/gitea.git
synced 2025-01-31 17:52:10 +02:00
d70af38447
Some checks failed
release-nightly / nightly-binary (push) Waiting to run
release-nightly / nightly-docker-rootful (push) Failing after 7m34s
release-nightly / nightly-docker-rootless (push) Failing after 7m2s
cron-translations / crowdin-pull (push) Has been skipped
cron-licenses / cron-licenses (push) Has been skipped
Introduce "idNumber" for each migration, and clarify the difference between the migration ID number and database version.
43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
// Copyright 2020 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package doctor
|
|
|
|
import (
|
|
"context"
|
|
|
|
"code.gitea.io/gitea/models/db"
|
|
"code.gitea.io/gitea/models/migrations"
|
|
"code.gitea.io/gitea/modules/log"
|
|
)
|
|
|
|
func checkDBVersion(ctx context.Context, logger log.Logger, autofix bool) error {
|
|
logger.Info("Expected database version: %d", migrations.ExpectedDBVersion())
|
|
if err := db.InitEngineWithMigration(ctx, migrations.EnsureUpToDate); err != nil {
|
|
if !autofix {
|
|
logger.Critical("Error: %v during ensure up to date", err)
|
|
return err
|
|
}
|
|
logger.Warn("Got Error: %v during ensure up to date", err)
|
|
logger.Warn("Attempting to migrate to the latest DB version to fix this.")
|
|
|
|
err = db.InitEngineWithMigration(ctx, migrations.Migrate)
|
|
if err != nil {
|
|
logger.Critical("Error: %v during migration", err)
|
|
}
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func init() {
|
|
Register(&Check{
|
|
Title: "Check Database Version",
|
|
Name: "check-db-version",
|
|
IsDefault: true,
|
|
Run: checkDBVersion,
|
|
AbortIfFailed: false,
|
|
Priority: 2,
|
|
})
|
|
}
|