mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-28 14:17:17 +00:00
30 lines
472 B
Go
30 lines
472 B
Go
|
package kv
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
|
||
|
bolt "go.etcd.io/bbolt"
|
||
|
)
|
||
|
|
||
|
var migrationCompleted = []byte("done")
|
||
|
|
||
|
type migration func(*bolt.Tx) error
|
||
|
|
||
|
var migrations = []migration{
|
||
|
migrateSnappyAttestationHistory,
|
||
|
}
|
||
|
|
||
|
// RunMigrations defined in the migrations array.
|
||
|
func (s *Store) RunMigrations(ctx context.Context) error {
|
||
|
for _, m := range migrations {
|
||
|
if ctx.Err() != nil {
|
||
|
return ctx.Err()
|
||
|
}
|
||
|
|
||
|
if err := s.db.Update(m); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
}
|
||
|
return nil
|
||
|
}
|