Skip to content

Commit

Permalink
feat: support to thirdweb
Browse files Browse the repository at this point in the history
  • Loading branch information
JoowonYun committed Jul 15, 2024
1 parent 1d4d588 commit c0cdace
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 2 deletions.
4 changes: 2 additions & 2 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ import (
"github.com/xpladev/xpla/app/openapiconsole"
xplaappparams "github.com/xpladev/xpla/app/params"
"github.com/xpladev/xpla/app/upgrades"
v1_5 "github.com/xpladev/xpla/app/upgrades/v1_5"
v1_6 "github.com/xpladev/xpla/app/upgrades/v1_6"
"github.com/xpladev/xpla/docs"

"github.com/CosmWasm/wasmd/x/wasm"
Expand All @@ -58,7 +58,7 @@ var (
DefaultNodeHome string

Upgrades = []upgrades.Upgrade{
v1_5.Upgrade,
v1_6.Upgrade,
}
)

Expand Down
25 changes: 25 additions & 0 deletions app/upgrades/v1_6/const.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package v1_6

import (
store "github.com/cosmos/cosmos-sdk/store/types"

"github.com/xpladev/xpla/app/upgrades"
)

const (
UpgradeName = "v1_6"
)

var Upgrade = upgrades.Upgrade{
UpgradeName: UpgradeName,
CreateUpgradeHandler: CreateUpgradeHandler,
StoreUpgrades: store.StoreUpgrades{
Added: []string{},
Deleted: []string{},
},
}

const (
// https://github.com/Arachnid/deterministic-deployment-proxy
thirdwebProxy = "0xf8a58085174876e800830186a08080b853604580600e600039806000f350fe7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a02222222222222222222222222222222222222222222222222222222222222222"
)
45 changes: 45 additions & 0 deletions app/upgrades/v1_6/upgrades.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package v1_6

import (
"github.com/cosmos/cosmos-sdk/codec"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/cosmos/cosmos-sdk/types/module"
upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types"
"github.com/ethereum/go-ethereum/common/hexutil"
"github.com/pkg/errors"

evmtypes "github.com/xpladev/ethermint/x/evm/types"
"github.com/xpladev/xpla/app/keepers"
)

func CreateUpgradeHandler(
mm *module.Manager,
configurator module.Configurator,
keepers *keepers.AppKeepers,
cdc codec.BinaryCodec,
) upgradetypes.UpgradeHandler {
return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) {
data, err := hexutil.Decode(thirdwebProxy)
if err != nil {
return nil, errors.Wrap(err, "failed to decode ethereum tx hex bytes")
}

msg := &evmtypes.MsgEthereumTx{}
if err := msg.UnmarshalBinary(data); err != nil {
return nil, err
}

if err := msg.ValidateBasic(); err != nil {
return nil, err
}

res, err := keepers.EvmKeeper.EthereumTx(ctx, msg)
if err != nil {
return nil, err
}

print(res.String())

return mm.RunMigrations(ctx, configurator, fromVM)
}
}

0 comments on commit c0cdace

Please sign in to comment.