Simple migration capabilities for any Go backend
|
преди 10 месеца | |
---|---|---|
.github | преди 10 месеца | |
.gitignore | преди 10 месеца | |
LICENSE.md | преди 10 месеца | |
README.md | преди 10 месеца | |
error.go | преди 10 месеца | |
func_migration.go | преди 10 месеца | |
go.mod | преди 10 месеца | |
interfaces.go | преди 10 месеца | |
module.go | преди 10 месеца | |
module_test.go | преди 10 месеца |
This package provides simple migration capabilities for any backend.
The key type in this package is Module
which allows mapping version strings to Migration
interfaces. For example:
import "github.com/annybs/migres"
type MyBackend struct{}
func (mb *MyBackend) Module() migres.Module {
return migres.Module{
"1.0.0": migres.Func(mb.upgradeV1, mb.downgradeV1),
"2.0.0": migres.Func(mb.upgradeV2, mb.downgradeV2),
}
}
Call Module.Upgrade(from, to)
or Module.Downgrade(from, to)
in order to execute migrations. The module ensures migrations are all run in the correct order.
See LICENSE.md