88 "os"
99 "path/filepath"
1010
11- // v0 "github.com/onomyprotocol/onex/app/upgrades/"
12-
1311 "github.com/cosmos/cosmos-sdk/baseapp"
1412 "github.com/cosmos/cosmos-sdk/client"
1513 "github.com/cosmos/cosmos-sdk/client/grpc/tmservice"
@@ -20,7 +18,6 @@ import (
2018 "github.com/cosmos/cosmos-sdk/server/config"
2119 servertypes "github.com/cosmos/cosmos-sdk/server/types"
2220 "github.com/cosmos/cosmos-sdk/simapp"
23- storetypes "github.com/cosmos/cosmos-sdk/store/types"
2421 sdk "github.com/cosmos/cosmos-sdk/types"
2522 "github.com/cosmos/cosmos-sdk/types/module"
2623 "github.com/cosmos/cosmos-sdk/version"
@@ -120,15 +117,20 @@ import (
120117 marketclient "github.com/pendulum-labs/market/x/market/client"
121118 marketkeeper "github.com/pendulum-labs/market/x/market/keeper"
122119 markettypes "github.com/pendulum-labs/market/x/market/types"
120+
121+ "github.com/onomyprotocol/onex/app/upgrades"
122+ v1_1_6 "github.com/onomyprotocol/onex/app/upgrades/v1.1.6"
123123)
124124
125125const (
126126 AppName = "onex"
127- upgradeName = "v1.1.0"
128127 AccountAddressPrefix = "onomy"
129128)
130129
131130var (
131+ Upgrades = []upgrades.Upgrade {}
132+ Forks = []upgrades.Fork {v1_1_6 .Fork }
133+
132134 // DefaultNodeHome default home directories for the application daemon
133135 DefaultNodeHome string
134136
@@ -554,6 +556,7 @@ func New(
554556 consumertypes .ModuleName ,
555557 )
556558 app .MM .SetOrderEndBlockers (
559+ upgradetypes .ModuleName ,
557560 crisistypes .ModuleName ,
558561 govtypes .ModuleName ,
559562 stakingtypes .ModuleName ,
@@ -567,7 +570,6 @@ func New(
567570 authz .ModuleName ,
568571 feegrant .ModuleName ,
569572 paramstypes .ModuleName ,
570- upgradetypes .ModuleName ,
571573 vestingtypes .ModuleName ,
572574 ibctransfertypes .ModuleName ,
573575 ibchost .ModuleName ,
@@ -582,6 +584,7 @@ func New(
582584 // so that other modules that want to create or claim capabilities afterwards in InitChain
583585 // can do so safely.
584586 app .MM .SetOrderInitGenesis (
587+ upgradetypes .ModuleName ,
585588 capabilitytypes .ModuleName ,
586589 authtypes .ModuleName ,
587590 banktypes .ModuleName ,
@@ -595,7 +598,6 @@ func New(
595598 authz .ModuleName ,
596599 feegrant .ModuleName ,
597600 paramstypes .ModuleName ,
598- upgradetypes .ModuleName ,
599601 vestingtypes .ModuleName ,
600602 ibchost .ModuleName ,
601603 ibctransfertypes .ModuleName ,
@@ -659,7 +661,8 @@ func New(
659661 app .SetBeginBlocker (app .BeginBlocker )
660662 app .SetEndBlocker (app .EndBlocker )
661663
662- app .setupUpgradeHandlers (app .configurator )
664+ app .setupUpgradeStoreLoaders ()
665+ app .setupUpgradeHandlers ()
663666
664667 if loadLatest {
665668 if err := app .LoadLatestVersion (); err != nil {
@@ -679,6 +682,7 @@ func (app *App) Name() string { return app.BaseApp.Name() }
679682
680683// BeginBlocker application updates every begin block
681684func (app * App ) BeginBlocker (ctx sdk.Context , req abci.RequestBeginBlock ) abci.ResponseBeginBlock {
685+ BeginBlockForks (ctx , app )
682686 return app .MM .BeginBlock (ctx , req )
683687}
684688
@@ -918,29 +922,35 @@ func initParamsKeeper(appCodec codec.BinaryCodec, legacyAmino *codec.LegacyAmino
918922 return paramsKeeper
919923}
920924
921- func (app * App ) setupUpgradeHandlers (cfg module.Configurator ) {
922- app .UpgradeKeeper .SetUpgradeHandler (upgradeName , func (ctx sdk.Context , plan upgradetypes.Plan , vm module.VersionMap ) (module.VersionMap , error ) {
923- return app .MM .RunMigrations (ctx , cfg , vm )
924- })
925-
925+ func (app * App ) setupUpgradeStoreLoaders () {
926926 upgradeInfo , err := app .UpgradeKeeper .ReadUpgradeInfoFromDisk ()
927927 if err != nil {
928- panic (fmt .Errorf ("failed to read upgrade info from disk: %w " , err ))
928+ panic (fmt .Sprintf ("failed to read upgrade info from disk %s " , err ))
929929 }
930930
931- // configure store loader that checks if version == upgradeHeight and applies store upgrades
932931 if app .UpgradeKeeper .IsSkipHeight (upgradeInfo .Height ) {
933932 return
934933 }
935934
936- var storeUpgrades * storetypes.StoreUpgrades
937-
938- switch upgradeInfo .Name {
939- default :
940- // no store upgrades
935+ for _ , upgrade := range Upgrades {
936+ if upgradeInfo .Name == upgrade .UpgradeName {
937+ app .SetStoreLoader (upgradetypes .UpgradeStoreLoader (upgradeInfo .Height , & upgrade .StoreUpgrades ))
938+ }
941939 }
940+ }
942941
943- if storeUpgrades != nil {
944- app .SetStoreLoader (upgradetypes .UpgradeStoreLoader (upgradeInfo .Height , storeUpgrades ))
942+ func (app * App ) setupUpgradeHandlers () {
943+ for _ , upgrade := range Upgrades {
944+ app .UpgradeKeeper .SetUpgradeHandler (
945+ upgrade .UpgradeName ,
946+ upgrade .CreateUpgradeHandler (
947+ app .MM ,
948+ app .configurator ,
949+ & upgrades.UpgradeKeepers {
950+ BankKeeper : app .BankKeeper ,
951+ MarketKeeper : app .MarketKeeper ,
952+ },
953+ ),
954+ )
945955 }
946956}
0 commit comments