MCPcopy Create free account
hub / github.com/Permify/permify / MigrateReset

Function MigrateReset

internal/storage/migration.go:211–240  ·  view source on GitHub ↗

MigrateReset roll back all migrations.

(engine, uri string)

Source from the content-addressed store, hash-verified

209
210// MigrateReset roll back all migrations.
211func MigrateReset(engine, uri string) (err error) {
212 switch engine {
213 case database.POSTGRES.String():
214 var db *PQDatabase.Postgres
215 db, err = PQDatabase.New(uri)
216 if err != nil {
217 return err
218 }
219 defer closeDB(db)
220
221 goose.SetTableName(migrationsTable)
222
223 if err = goose.SetDialect(postgresDialect); err != nil {
224 return err
225 }
226
227 goose.SetBaseFS(postgresMigrations)
228 pool := stdlib.OpenDBFromPool(db.WritePool)
229
230 if err = goose.Reset(pool, postgresMigrationDir); err != nil {
231 return err
232 }
233
234 return nil
235 case database.MEMORY.String():
236 return nil
237 default:
238 return fmt.Errorf("%s connection is unsupported", engine)
239 }
240}
241
242// MigrateStatus displays the status of all migrations.
243func MigrateStatus(engine, uri string) (err error) {

Callers 1

migrateResetFunction · 0.92

Calls 3

closeDBFunction · 0.85
StringMethod · 0.65
ResetMethod · 0.45

Tested by

no test coverage detected