3
0
corteza/store/upgrade.go

23 lines
372 B
Go

package store
import (
"context"
"go.uber.org/zap"
)
type (
storeUpgrader interface {
Upgrade(context.Context, *zap.Logger) error
}
)
func Upgrade(ctx context.Context, log *zap.Logger, s Storer) error {
upgradableStore, ok := s.(storeUpgrader)
if !ok {
log.Debug("store does not support upgrades")
return nil
}
return upgradableStore.Upgrade(ctx, log)
}