From 6318a77d6457f142fb688f1d7ef84dd42946a530 Mon Sep 17 00:00:00 2001 From: Spoorthi Satheesha <9302666+spoo-bar@users.noreply.github.com> Date: Fri, 15 Mar 2024 16:39:17 +0000 Subject: [PATCH 1/8] adding ica controller module --- app/app.go | 39 ++++++++++++++++++++++++++++++++------- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/app/app.go b/app/app.go index 59b2247a8..92144b96c 100644 --- a/app/app.go +++ b/app/app.go @@ -133,10 +133,14 @@ import ( // ica ica "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts" + icacontroller "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller" + icacontrollerkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/keeper" + icacontrollertypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/types" icahost "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host" icahostkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/keeper" icahosttypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/types" icatypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/types" + stargazerest "github.com/public-awesome/stargaze/v13/internal/rest" sgappparams "github.com/public-awesome/stargaze/v13/app/params" @@ -284,14 +288,16 @@ type App struct { ContractKeeper *wasmkeeper.PermissionedKeeper // IBC - IBCKeeper *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly - ICAHostKeeper icahostkeeper.Keeper + IBCKeeper *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly + ICAHostKeeper icahostkeeper.Keeper + ICAControllerKeeper icacontrollerkeeper.Keeper // make scoped keepers public for test purposes - ScopedIBCKeeper capabilitykeeper.ScopedKeeper - ScopedICAHostKeeper capabilitykeeper.ScopedKeeper - ScopedTransferKeeper capabilitykeeper.ScopedKeeper - ScopedWasmKeeper capabilitykeeper.ScopedKeeper + ScopedIBCKeeper capabilitykeeper.ScopedKeeper + ScopedICAHostKeeper capabilitykeeper.ScopedKeeper + ScopecICAControllerKeeper capabilitykeeper.ScopedKeeper + ScopedTransferKeeper capabilitykeeper.ScopedKeeper + ScopedWasmKeeper capabilitykeeper.ScopedKeeper // stargaze modules AllocKeeper allocmodulekeeper.Keeper @@ -347,6 +353,7 @@ func NewStargazeApp( cronmoduletypes.StoreKey, tokenfactorytypes.StoreKey, icahosttypes.StoreKey, + icacontrollertypes.StoreKey, globalfeemoduletypes.StoreKey, ibchookstypes.StoreKey, packetforwardtypes.StoreKey, @@ -385,6 +392,7 @@ func NewStargazeApp( scopedTransferKeeper := app.CapabilityKeeper.ScopeToModule(ibctransfertypes.ModuleName) scopedWasmKeeper := app.CapabilityKeeper.ScopeToModule(wasmtypes.ModuleName) scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName) + scopedICAControllerKeeper := app.CapabilityKeeper.ScopeToModule(icacontrollertypes.SubModuleName) app.CapabilityKeeper.Seal() // this line is used by starport scaffolding # stargate/app/scopedKeeper @@ -560,11 +568,26 @@ func NewStargazeApp( icaHostIBCModule := icahost.NewIBCModule(app.ICAHostKeeper) + app.ICAControllerKeeper = icacontrollerkeeper.NewKeeper( + appCodec, + app.keys[icacontrollertypes.StoreKey], + app.GetSubspace(icacontrollertypes.SubModuleName), + app.IBCKeeper.ChannelKeeper, + app.IBCKeeper.ChannelKeeper, + &app.IBCKeeper.PortKeeper, + scopedIBCKeeper, + app.MsgServiceRouter(), + ) + + var icaControllerStack ibcporttypes.IBCModule + icaControllerStack = icacontroller.NewIBCMiddleware(icaControllerStack, app.ICAControllerKeeper) + // Create static IBC router, add transfer route, then set and seal it ibcRouter := ibcporttypes.NewRouter() ibcRouter. AddRoute(icahosttypes.SubModuleName, icaHostIBCModule). + AddRoute(icacontrollertypes.SubModuleName, icaControllerStack). AddRoute(ibctransfertypes.ModuleName, transferStack) // this line is used by starport scaffolding # ibc/app/router @@ -703,7 +726,7 @@ func NewStargazeApp( upgrade.NewAppModule(&app.UpgradeKeeper), evidence.NewAppModule(app.EvidenceKeeper), ibc.NewAppModule(app.IBCKeeper), - ica.NewAppModule(nil, &app.ICAHostKeeper), + ica.NewAppModule(&app.ICAControllerKeeper, &app.ICAHostKeeper), params.NewAppModule(app.ParamsKeeper), transfer.NewAppModule(app.TransferKeeper), allocModule, @@ -871,6 +894,7 @@ func NewStargazeApp( } app.ScopedICAHostKeeper = scopedICAHostKeeper + app.ScopecICAControllerKeeper = scopedICAControllerKeeper app.ScopedIBCKeeper = scopedIBCKeeper app.ScopedTransferKeeper = scopedTransferKeeper app.ScopedIBCKeeper = scopedWasmKeeper @@ -1048,6 +1072,7 @@ func initParamsKeeper( paramsKeeper.Subspace(wasmtypes.ModuleName) paramsKeeper.Subspace(cronmoduletypes.ModuleName) paramsKeeper.Subspace(icahosttypes.SubModuleName) + paramsKeeper.Subspace(icacontrollertypes.SubModuleName).WithKeyTable(icacontrollertypes.ParamKeyTable()) paramsKeeper.Subspace(globalfeemoduletypes.ModuleName) paramsKeeper.Subspace(packetforwardtypes.ModuleName).WithKeyTable(packetforwardtypes.ParamKeyTable()) // this line is used by starport scaffolding # stargate/app/paramSubspace From c85b1ca9b00a78c4f37572ce5774c6c69751e73e Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sat, 16 Mar 2024 19:25:44 -0600 Subject: [PATCH 2/8] add storekey to upgrade --- app/upgrades.go | 1 + 1 file changed, 1 insertion(+) diff --git a/app/upgrades.go b/app/upgrades.go index ee31aec2b..f20ef4267 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -135,6 +135,7 @@ func (app *App) RegisterUpgradeHandlers(cfg module.Configurator) { Added: []string{ consensustypes.ModuleName, crisistypes.ModuleName, + icacontrollertypes.StoreKey, }, Deleted: []string{ claimModuleName, From bf3b27cfeaffe5669cb034bbdd9058e50bd7442c Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sat, 16 Mar 2024 19:28:15 -0600 Subject: [PATCH 3/8] enable ICA controller on upgrade --- app/upgrades.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/upgrades.go b/app/upgrades.go index f20ef4267..d44ee87b8 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -122,6 +122,10 @@ func (app *App) RegisterUpgradeHandlers(cfg module.Configurator) { return nil, err } + icaParams := app.ICAControllerKeeper.GetParams(ctx) + icaParams.ControllerEnabled = true + app.ICAControllerKeeper.SetParams(ctx, icaParams) + return migrations, nil }) From ad104879268ce4f9788327734beb5dd2424f825b Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sat, 16 Mar 2024 19:58:12 -0600 Subject: [PATCH 4/8] use default --- app/upgrades.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/upgrades.go b/app/upgrades.go index d44ee87b8..1ddb6fa8f 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -122,7 +122,8 @@ func (app *App) RegisterUpgradeHandlers(cfg module.Configurator) { return nil, err } - icaParams := app.ICAControllerKeeper.GetParams(ctx) + // since params where never initialized start with enabled + icaParams := icacontrollertypes.DefaultParams() icaParams.ControllerEnabled = true app.ICAControllerKeeper.SetParams(ctx, icaParams) From d6e570d03e22b6507c1954dc8ab959a2595193f9 Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sat, 16 Mar 2024 19:59:05 -0600 Subject: [PATCH 5/8] update drone upgrade --- .drone.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.drone.yml b/.drone.yml index ff328c52f..7b3054ca1 100644 --- a/.drone.yml +++ b/.drone.yml @@ -77,12 +77,12 @@ steps: password: from_secret: docker_password tags: - - 13.0.0-beta.7 + - 13.0.0-beta.8 when: event: - push branch: - - jhernandezb/bump-pfm-module + - spoorthi/ica-controller - name: docker_release image: plugins/docker settings: @@ -351,7 +351,7 @@ steps: - ./scripts/ci/upgrade/proposal.sh - name: stargaze-upgraded pull: always - image: publicawesome/stargaze:13.0.0-beta.7 + image: publicawesome/stargaze:13.0.0-beta.8 commands: - ./scripts/ci/upgrade/run-upgrade.sh environment: @@ -370,7 +370,7 @@ steps: - http://icad:26657 - name: check-params pull: always - image: publicawesome/stargaze:13.0.0-beta.7 + image: publicawesome/stargaze:13.0.0-beta.8 commands: - starsd q mint params --node http://stargaze-upgraded:26657 - starsd q alloc params --node http://stargaze-upgraded:26657 @@ -420,6 +420,6 @@ volumes: --- kind: signature -hmac: 0af94ca948b2acd8e09bb12c8d57e9805b26b12ea8ee85dca746cf461de65c00 +hmac: bfef8a9d13834f557423e96e9b3bc7956b3235eb3704328d149d4f5531456758 ... From 428061e67b8731fd7d169c6f95b0f0d25468f031 Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sun, 17 Mar 2024 12:06:23 -0600 Subject: [PATCH 6/8] fix typo --- app/app.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/app.go b/app/app.go index 92144b96c..61b51571b 100644 --- a/app/app.go +++ b/app/app.go @@ -295,7 +295,7 @@ type App struct { // make scoped keepers public for test purposes ScopedIBCKeeper capabilitykeeper.ScopedKeeper ScopedICAHostKeeper capabilitykeeper.ScopedKeeper - ScopecICAControllerKeeper capabilitykeeper.ScopedKeeper + ScopedICAControllerKeeper capabilitykeeper.ScopedKeeper ScopedTransferKeeper capabilitykeeper.ScopedKeeper ScopedWasmKeeper capabilitykeeper.ScopedKeeper @@ -894,7 +894,7 @@ func NewStargazeApp( } app.ScopedICAHostKeeper = scopedICAHostKeeper - app.ScopecICAControllerKeeper = scopedICAControllerKeeper + app.ScopedICAControllerKeeper = scopedICAControllerKeeper app.ScopedIBCKeeper = scopedIBCKeeper app.ScopedTransferKeeper = scopedTransferKeeper app.ScopedIBCKeeper = scopedWasmKeeper From 5f8d37600e57a447902fb9fd7d15b17084210859 Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sun, 17 Mar 2024 12:08:51 -0600 Subject: [PATCH 7/8] fix scoped keeper for ica controller --- app/app.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/app.go b/app/app.go index 61b51571b..588f01162 100644 --- a/app/app.go +++ b/app/app.go @@ -575,7 +575,7 @@ func NewStargazeApp( app.IBCKeeper.ChannelKeeper, app.IBCKeeper.ChannelKeeper, &app.IBCKeeper.PortKeeper, - scopedIBCKeeper, + scopedICAControllerKeeper, app.MsgServiceRouter(), ) From a171f12d5939cfa779efeef3bf2807bc3748567f Mon Sep 17 00:00:00 2001 From: jhernandezb Date: Sun, 17 Mar 2024 12:12:55 -0600 Subject: [PATCH 8/8] bump version --- .drone.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index 7b3054ca1..77d8dda14 100644 --- a/.drone.yml +++ b/.drone.yml @@ -77,7 +77,7 @@ steps: password: from_secret: docker_password tags: - - 13.0.0-beta.8 + - 13.0.0-beta.9 when: event: - push @@ -351,7 +351,7 @@ steps: - ./scripts/ci/upgrade/proposal.sh - name: stargaze-upgraded pull: always - image: publicawesome/stargaze:13.0.0-beta.8 + image: publicawesome/stargaze:13.0.0-beta.9 commands: - ./scripts/ci/upgrade/run-upgrade.sh environment: @@ -370,7 +370,7 @@ steps: - http://icad:26657 - name: check-params pull: always - image: publicawesome/stargaze:13.0.0-beta.8 + image: publicawesome/stargaze:13.0.0-beta.9 commands: - starsd q mint params --node http://stargaze-upgraded:26657 - starsd q alloc params --node http://stargaze-upgraded:26657 @@ -420,6 +420,6 @@ volumes: --- kind: signature -hmac: bfef8a9d13834f557423e96e9b3bc7956b3235eb3704328d149d4f5531456758 +hmac: 5731053a92a730984ac3a569c36c712eb78d3c917641f67cf733ddbf9db91a35 ...