Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: implement cross-chain mechanism between op and greenfield #413

Merged
merged 3 commits into from
Aug 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -734,7 +734,7 @@ func (app *App) initModules(ctx sdk.Context) {

func (app *App) initCrossChain() {
app.CrossChainKeeper.SetSrcChainID(sdk.ChainID(app.appConfig.CrossChain.SrcChainId))
app.CrossChainKeeper.SetDestChainID(sdk.ChainID(app.appConfig.CrossChain.DestBscChainId))
app.CrossChainKeeper.SetDestBscChainID(sdk.ChainID(app.appConfig.CrossChain.DestBscChainId))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is DestOpChainID needed?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we need a hardfork to register the DestOpChainID

}

func (app *App) initBridge() {
Expand Down
12 changes: 6 additions & 6 deletions e2e/tests/storage_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@ func (s *StorageTestSuite) TestMirrorBucket() {
s.Require().Equal(queryHeadBucketResponse.BucketInfo.SourceType, storagetypes.SOURCE_TYPE_ORIGIN)

// MirrorBucket using id
msgMirrorBucket := storagetypes.NewMsgMirrorBucket(user.GetAddr(), queryHeadBucketResponse.BucketInfo.Id, "")
msgMirrorBucket := storagetypes.NewMsgMirrorBucket(user.GetAddr(), sdk.ChainID(714), queryHeadBucketResponse.BucketInfo.Id, "")
s.SendTxBlock(user, msgMirrorBucket)

// CreateBucket
Expand All @@ -548,7 +548,7 @@ func (s *StorageTestSuite) TestMirrorBucket() {
s.SendTxBlock(user, msgCreateBucket)

// MirrorBucket using name
msgMirrorBucket = storagetypes.NewMsgMirrorBucket(user.GetAddr(), sdk.NewUint(0), bucketName)
msgMirrorBucket = storagetypes.NewMsgMirrorBucket(user.GetAddr(), sdk.ChainID(714), sdk.NewUint(0), bucketName)
s.SendTxBlock(user, msgMirrorBucket)
}

Expand Down Expand Up @@ -653,7 +653,7 @@ func (s *StorageTestSuite) TestMirrorObject() {
s.Require().Equal(queryListObjectsResponse.ObjectInfos[0].ObjectName, objectName)

// MirrorObject using id
msgMirrorObject := storagetypes.NewMsgMirrorObject(user.GetAddr(), queryHeadObjectResponse.ObjectInfo.Id, "", "")
msgMirrorObject := storagetypes.NewMsgMirrorObject(user.GetAddr(), sdk.ChainID(714), queryHeadObjectResponse.ObjectInfo.Id, "", "")
s.SendTxBlock(user, msgMirrorObject)

// CreateObject
Expand Down Expand Up @@ -691,7 +691,7 @@ func (s *StorageTestSuite) TestMirrorObject() {
s.SendTxBlock(sp.SealKey, msgSealObject)

// MirrorObject using names
msgMirrorObject = storagetypes.NewMsgMirrorObject(user.GetAddr(), sdk.NewUint(0), bucketName, objectName)
msgMirrorObject = storagetypes.NewMsgMirrorObject(user.GetAddr(), sdk.ChainID(714), sdk.NewUint(0), bucketName, objectName)
s.SendTxBlock(user, msgMirrorObject)
}

Expand All @@ -714,7 +714,7 @@ func (s *StorageTestSuite) TestMirrorGroup() {
s.Require().Equal(queryHeadGroupResp.GroupInfo.Owner, owner.GetAddr().String())

// MirrorGroup using id
msgMirrorGroup := storagetypes.NewMsgMirrorGroup(owner.GetAddr(), queryHeadGroupResp.GroupInfo.Id, "")
msgMirrorGroup := storagetypes.NewMsgMirrorGroup(owner.GetAddr(), sdk.ChainID(714), queryHeadGroupResp.GroupInfo.Id, "")
s.SendTxBlock(owner, msgMirrorGroup)

// CreateGroup
Expand All @@ -723,7 +723,7 @@ func (s *StorageTestSuite) TestMirrorGroup() {
s.SendTxBlock(owner, msgCreateGroup)

// MirrorGroup using name
msgMirrorGroup = storagetypes.NewMsgMirrorGroup(owner.GetAddr(), sdk.NewUint(0), groupName)
msgMirrorGroup = storagetypes.NewMsgMirrorGroup(owner.GetAddr(), sdk.ChainID(714), sdk.NewUint(0), groupName)
s.SendTxBlock(owner, msgMirrorGroup)
}

Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ replace (
github.com/cometbft/cometbft => github.com/bnb-chain/greenfield-cometbft v0.0.2
github.com/cometbft/cometbft-db => github.com/bnb-chain/greenfield-cometbft-db v0.8.1-alpha.1
github.com/confio/ics23/go => github.com/cosmos/cosmos-sdk/ics23/go v0.8.0
github.com/cosmos/cosmos-sdk => github.com/bnb-chain/greenfield-cosmos-sdk v0.2.4-alpha.1
github.com/cosmos/cosmos-sdk => github.com/yutianwu/greenfield-cosmos-sdk v0.0.0-20230810000415-718b1f26fd54
github.com/cosmos/iavl => github.com/bnb-chain/greenfield-iavl v0.20.1
github.com/syndtr/goleveldb => github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7
)
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -163,8 +163,6 @@ github.com/bnb-chain/greenfield-cometbft v0.0.2 h1:bRamS8Lq1lA3ttRLZBha22uiNG5tq
github.com/bnb-chain/greenfield-cometbft v0.0.2/go.mod h1:EBmwmUdaNbGPyGjf1cMuoN3pAeM2tQu7Lfg95813EAw=
github.com/bnb-chain/greenfield-cometbft-db v0.8.1-alpha.1 h1:XcWulGacHVRiSCx90Q8Y//ajOrLNBQWR/KDB89dy3cU=
github.com/bnb-chain/greenfield-cometbft-db v0.8.1-alpha.1/go.mod h1:ey1CiK4bYo1RBNJLRiVbYr5CMdSxci9S/AZRINLtppI=
github.com/bnb-chain/greenfield-cosmos-sdk v0.2.4-alpha.1 h1:SpkwHzAjIllIQG8av7MybFjJ8mhW1ZZ+P9JqJIsENxI=
github.com/bnb-chain/greenfield-cosmos-sdk v0.2.4-alpha.1/go.mod h1:vyZi5fr4gZBVbhV/TLxbm6T8vylHXbfqQmDCUCUPPfo=
github.com/bnb-chain/greenfield-cosmos-sdk/api v0.0.0-20230425074444-eb5869b05fe9 h1:6fLpmmI0EZvDTfPvI0zy5dBaaTUboHnEkoC5/p/w8TQ=
github.com/bnb-chain/greenfield-cosmos-sdk/api v0.0.0-20230425074444-eb5869b05fe9/go.mod h1:rbc4o84RSEvhf09o2+4Qiazsv0snRJLiEZdk17HeIDw=
github.com/bnb-chain/greenfield-cosmos-sdk/math v0.0.0-20230425074444-eb5869b05fe9 h1:1ZdK+iR1Up02bOa2YTZCml7PBpP//kcdamOcK6aWO/s=
Expand Down Expand Up @@ -1425,6 +1423,8 @@ github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yutianwu/greenfield-cosmos-sdk v0.0.0-20230810000415-718b1f26fd54 h1:J6UL48UJAANjch7euMvJDh6z1wYtNGa/f+SX7DDExgQ=
github.com/yutianwu/greenfield-cosmos-sdk v0.0.0-20230810000415-718b1f26fd54/go.mod h1:hpvg93+VGXHAcv/pVVdp24Ik/9miw4uRh8+tD0DDYas=
github.com/zondax/hid v0.9.1 h1:gQe66rtmyZ8VeGFcOpbuH3r7erYtNEAezCAYu8LdkJo=
github.com/zondax/hid v0.9.1/go.mod h1:l5wttcP0jwtdLjqjMMWFVEE7d1zO0jvSPA9OPZxWpEM=
github.com/zondax/ledger-go v0.14.1 h1:Pip65OOl4iJ84WTpA4BKChvOufMhhbxED3BaihoZN4c=
Expand Down
5 changes: 3 additions & 2 deletions proto/greenfield/storage/common.proto
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@ enum SourceType {
option (gogoproto.goproto_enum_prefix) = false;

SOURCE_TYPE_ORIGIN = 0;
SOURCE_TYPE_BSC_CROSS_CHAIN = 1;
SOURCE_TYPE_MIRROR_PENDING = 2;
SOURCE_TYPE_MIRROR_PENDING = 1;
SOURCE_TYPE_BSC_CROSS_CHAIN = 2;
SOURCE_TYPE_OP_CROSS_CHAIN = 3;
}

// BucketStatus represents the status of a bucket. After a user successfully
Expand Down
12 changes: 12 additions & 0 deletions proto/greenfield/storage/params.proto
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,18 @@ message Params {
uint64 min_quota_update_interval = 16;
// the max number of local virtual group per bucket
uint32 max_local_virtual_group_num_per_bucket = 17;
// relayer fee for the mirror bucket tx to op chain
string op_mirror_bucket_relayer_fee = 18;
// relayer fee for the ACK or FAIL_ACK package of the mirror bucket tx to op chain
string op_mirror_bucket_ack_relayer_fee = 19;
// relayer fee for the mirror object tx to op chain
string op_mirror_object_relayer_fee = 20;
// Relayer fee for the ACK or FAIL_ACK package of the mirror object tx to op chain
string op_mirror_object_ack_relayer_fee = 21;
// relayer fee for the mirror object tx to op chain
string op_mirror_group_relayer_fee = 22;
// Relayer fee for the ACK or FAIL_ACK package of the mirror object tx to op chain
string op_mirror_group_ack_relayer_fee = 23;
}

// VersionedParams defines the parameters for the storage module with multi version, each version store with different timestamp.
Expand Down
9 changes: 9 additions & 0 deletions proto/greenfield/storage/tx.proto
Original file line number Diff line number Diff line change
Expand Up @@ -490,6 +490,9 @@ message MsgMirrorObject {

// object_name defines the name of object
string object_name = 4;

// destination chain id
uint32 dest_chain_id = 5;
}

message MsgMirrorObjectResponse {}
Expand All @@ -509,6 +512,9 @@ message MsgMirrorBucket {

// bucket_name defines a globally unique name of bucket
string bucket_name = 3;

// destination chain id
uint32 dest_chain_id = 4;
}

message MsgUpdateObjectInfoResponse {}
Expand Down Expand Up @@ -547,6 +553,9 @@ message MsgMirrorGroup {

// group_name defines the name of the group
string group_name = 3;

// destination chain id
uint32 dest_chain_id = 4;
}

message MsgMirrorGroupResponse {}
Expand Down
Loading
Loading