feat: add river_queue migration
This commit is contained in:
@@ -0,0 +1,35 @@
|
|||||||
|
package migrate
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"database/sql"
|
||||||
|
|
||||||
|
"github.com/pkg/errors"
|
||||||
|
"github.com/pressly/goose/v3"
|
||||||
|
"github.com/riverqueue/river/riverdriver/riverdatabasesql"
|
||||||
|
"github.com/riverqueue/river/rivermigrate"
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
goose.AddMigrationNoTxContext(RiverQueueUp, RiverQueueDown)
|
||||||
|
}
|
||||||
|
|
||||||
|
func RiverQueueUp(ctx context.Context, db *sql.DB) error {
|
||||||
|
migrator, err := rivermigrate.New(riverdatabasesql.New(db), nil)
|
||||||
|
if err != nil {
|
||||||
|
return errors.Wrap(err, "river migrate up failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
_, err = migrator.Migrate(ctx, rivermigrate.DirectionUp, &rivermigrate.MigrateOpts{TargetVersion: -1})
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
func RiverQueueDown(ctx context.Context, db *sql.DB) error {
|
||||||
|
migrator, err := rivermigrate.New(riverdatabasesql.New(db), nil)
|
||||||
|
if err != nil {
|
||||||
|
return errors.Wrap(err, "river migrate down failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
_, err = migrator.Migrate(ctx, rivermigrate.DirectionDown, &rivermigrate.MigrateOpts{TargetVersion: -1})
|
||||||
|
return err
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user