Skip to content

Commit 21309d1

Browse files
committed
feat(moonbeam-moonriver): add remaining bridge commands
1 parent 18c5b2e commit 21309d1

File tree

5 files changed

+80
-2
lines changed

5 files changed

+80
-2
lines changed

substrate-relay/src/bridges/kusama_polkadot/moonbeam_polkadot_messages_to_moonriver_kusama.rs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,23 @@
1818
1919
use relay_moonbeam_client::Moonbeam;
2020
use relay_moonriver_client::Moonriver;
21-
use substrate_relay_helper::{messages::SubstrateMessageLane, UtilityPalletBatchCallBuilder};
21+
use substrate_relay_helper::{
22+
cli::bridge::{CliBridgeBase, MessagesCliBridge},
23+
messages::SubstrateMessageLane,
24+
UtilityPalletBatchCallBuilder,
25+
};
26+
27+
/// Moonbeam-to-Moonriver messages bridge.
28+
pub struct MoonbeamToMoonriverMessagesCliBridge {}
29+
30+
impl CliBridgeBase for MoonbeamToMoonriverMessagesCliBridge {
31+
type Source = Moonbeam;
32+
type Target = Moonriver;
33+
}
34+
35+
impl MessagesCliBridge for MoonbeamToMoonriverMessagesCliBridge {
36+
type MessagesLane = MoonbeamMessagesToMoonriverMessageLane;
37+
}
2238

2339
substrate_relay_helper::generate_receive_message_proof_call_builder!(
2440
MoonbeamMessagesToMoonriverMessageLane,

substrate-relay/src/bridges/kusama_polkadot/moonriver_kusama_messages_to_moonbeam_polkadot.rs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,23 @@
1818
1919
use relay_moonbeam_client::Moonbeam;
2020
use relay_moonriver_client::Moonriver;
21-
use substrate_relay_helper::{messages::SubstrateMessageLane, UtilityPalletBatchCallBuilder};
21+
use substrate_relay_helper::{
22+
cli::bridge::{CliBridgeBase, MessagesCliBridge},
23+
messages::SubstrateMessageLane,
24+
UtilityPalletBatchCallBuilder,
25+
};
26+
27+
/// Moonriver-to-Moonbeam messages bridge.
28+
pub struct MoonriverToMoonbeamMessagesCliBridge {}
29+
30+
impl CliBridgeBase for MoonriverToMoonbeamMessagesCliBridge {
31+
type Source = Moonriver;
32+
type Target = Moonbeam;
33+
}
34+
35+
impl MessagesCliBridge for MoonriverToMoonbeamMessagesCliBridge {
36+
type MessagesLane = MoonriverMessagesToMoonbeamMessageLane;
37+
}
2238

2339
substrate_relay_helper::generate_receive_message_proof_call_builder!(
2440
MoonriverMessagesToMoonbeamMessageLane,

substrate-relay/src/cli/relay_headers.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@ use strum::{EnumString, VariantNames};
2020
use crate::bridges::{
2121
kusama_polkadot::{
2222
kusama_headers_to_bridge_hub_polkadot::KusamaToBridgeHubPolkadotCliBridge,
23+
kusama_headers_to_moonbeam::KusamaToMoonbeamCliBridge,
2324
polkadot_headers_to_bridge_hub_kusama::PolkadotToBridgeHubKusamaCliBridge,
25+
polkadot_headers_to_moonriver::PolkadotToMoonriverCliBridge,
2426
},
2527
polkadot_bulletin::{
2628
polkadot_bulletin_headers_to_bridge_hub_polkadot::PolkadotBulletinToBridgeHubPolkadotCliBridge,
@@ -72,6 +74,8 @@ pub enum RelayHeadersBridge {
7274
PolkadotBulletinToBridgeHubPolkadot,
7375
RococoToRococoBulletin,
7476
RococoBulletinToBridgeHubRococo,
77+
PolkadotToMoonriver,
78+
KusamaToMoonbeam,
7579
}
7680

7781
impl HeadersRelayer for RococoToBridgeHubWestendCliBridge {}
@@ -82,6 +86,8 @@ impl HeadersRelayer for PolkadotToPolkadotBulletinCliBridge {}
8286
impl HeadersRelayer for PolkadotBulletinToBridgeHubPolkadotCliBridge {}
8387
impl HeadersRelayer for RococoToRococoBulletinCliBridge {}
8488
impl HeadersRelayer for RococoBulletinToBridgeHubRococoCliBridge {}
89+
impl HeadersRelayer for PolkadotToMoonriverCliBridge {}
90+
impl HeadersRelayer for KusamaToMoonbeamCliBridge {}
8591

8692
impl RelayHeaders {
8793
/// Run the command.
@@ -103,6 +109,10 @@ impl RelayHeaders {
103109
RococoToRococoBulletinCliBridge::relay_headers(self.params),
104110
RelayHeadersBridge::RococoBulletinToBridgeHubRococo =>
105111
RococoBulletinToBridgeHubRococoCliBridge::relay_headers(self.params),
112+
RelayHeadersBridge::PolkadotToMoonriver =>
113+
PolkadotToMoonriverCliBridge::relay_headers(self.params),
114+
RelayHeadersBridge::KusamaToMoonbeam =>
115+
PolkadotToMoonriverCliBridge::relay_headers(self.params),
106116
}
107117
.await
108118
}
@@ -128,6 +138,10 @@ impl RelayHeader {
128138
RococoToRococoBulletinCliBridge::relay_header(self.params),
129139
RelayHeadersBridge::RococoBulletinToBridgeHubRococo =>
130140
RococoBulletinToBridgeHubRococoCliBridge::relay_header(self.params),
141+
RelayHeadersBridge::PolkadotToMoonriver =>
142+
PolkadotToMoonriverCliBridge::relay_header(self.params),
143+
RelayHeadersBridge::KusamaToMoonbeam =>
144+
PolkadotToMoonriverCliBridge::relay_header(self.params),
131145
}
132146
.await
133147
}

substrate-relay/src/cli/relay_messages.rs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ use crate::bridges::{
2121
kusama_polkadot::{
2222
bridge_hub_kusama_messages_to_bridge_hub_polkadot::BridgeHubKusamaToBridgeHubPolkadotMessagesCliBridge,
2323
bridge_hub_polkadot_messages_to_bridge_hub_kusama::BridgeHubPolkadotToBridgeHubKusamaMessagesCliBridge,
24+
moonbeam_polkadot_messages_to_moonriver_kusama::MoonbeamToMoonriverMessagesCliBridge,
25+
moonriver_kusama_messages_to_moonbeam_polkadot::MoonriverToMoonbeamMessagesCliBridge,
2426
},
2527
polkadot_bulletin::{
2628
bridge_hub_polkadot_messages_to_polkadot_bulletin::BridgeHubPolkadotToPolkadotBulletinMessagesCliBridge,
@@ -56,6 +58,8 @@ pub enum FullBridge {
5658
BridgeHubRococoToRococoBulletin,
5759
AssetHubRococoToBridgeHubWestend,
5860
AssetHubWestendToBridgeHubRococo,
61+
MoonbeamToMoonriver,
62+
MoonriverToMoonbeam,
5963
}
6064

6165
/// Start messages relayer process.
@@ -98,6 +102,8 @@ impl MessagesRelayer for RococoBulletinToBridgeHubRococoMessagesCliBridge {}
98102
impl MessagesRelayer for BridgeHubRococoToRococoBulletinMessagesCliBridge {}
99103
impl MessagesRelayer for AssetHubRococoToAssetHubWestendMessagesCliBridge {}
100104
impl MessagesRelayer for AssetHubWestendToAssetHubRococoMessagesCliBridge {}
105+
impl MessagesRelayer for MoonbeamToMoonriverMessagesCliBridge {}
106+
impl MessagesRelayer for MoonriverToMoonbeamMessagesCliBridge {}
101107

102108
impl RelayMessages {
103109
/// Run the command.
@@ -123,6 +129,10 @@ impl RelayMessages {
123129
AssetHubRococoToAssetHubWestendMessagesCliBridge::relay_messages(self.params),
124130
FullBridge::AssetHubWestendToBridgeHubRococo =>
125131
AssetHubWestendToAssetHubRococoMessagesCliBridge::relay_messages(self.params),
132+
FullBridge::MoonbeamToMoonriver =>
133+
MoonbeamToMoonriverMessagesCliBridge::relay_messages(self.params),
134+
FullBridge::MoonriverToMoonbeam =>
135+
MoonriverToMoonbeamMessagesCliBridge::relay_messages(self.params),
126136
}
127137
.await
128138
}
@@ -164,6 +174,10 @@ impl RelayMessagesRange {
164174
AssetHubRococoToAssetHubWestendMessagesCliBridge::relay_messages_range(self.params),
165175
FullBridge::AssetHubWestendToBridgeHubRococo =>
166176
AssetHubWestendToAssetHubRococoMessagesCliBridge::relay_messages_range(self.params),
177+
FullBridge::MoonbeamToMoonriver =>
178+
MoonbeamToMoonriverMessagesCliBridge::relay_messages_range(self.params),
179+
FullBridge::MoonriverToMoonbeam =>
180+
MoonriverToMoonbeamMessagesCliBridge::relay_messages_range(self.params),
167181
}
168182
.await
169183
}
@@ -205,6 +219,10 @@ impl RelayMessagesDeliveryConfirmation {
205219
AssetHubRococoToAssetHubWestendMessagesCliBridge::relay_messages_delivery_confirmation(self.params),
206220
FullBridge::AssetHubWestendToBridgeHubRococo =>
207221
AssetHubWestendToAssetHubRococoMessagesCliBridge::relay_messages_delivery_confirmation(self.params),
222+
FullBridge::MoonbeamToMoonriver =>
223+
MoonbeamToMoonriverMessagesCliBridge::relay_messages_delivery_confirmation(self.params),
224+
FullBridge::MoonriverToMoonbeam =>
225+
MoonriverToMoonbeamMessagesCliBridge::relay_messages_delivery_confirmation(self.params),
208226
}
209227
.await
210228
}

substrate-relay/src/cli/relay_parachains.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ use crate::bridges::{
1818
kusama_polkadot::{
1919
bridge_hub_kusama_parachains_to_bridge_hub_polkadot::BridgeHubKusamaToBridgeHubPolkadotCliBridge,
2020
bridge_hub_polkadot_parachains_to_bridge_hub_kusama::BridgeHubPolkadotToBridgeHubKusamaCliBridge,
21+
kusama_parachains_to_moonbeam_polkadot::MoonriverToMoonbeamCliBridge,
22+
polkadot_parachains_to_moonriver_kusama::MoonbeamToMoonriverCliBridge,
2123
},
2224
polkadot_bulletin::polkadot_parachains_to_polkadot_bulletin::PolkadotToPolkadotBulletinCliBridge,
2325
rococo_bulletin::rococo_parachains_to_rococo_bulletin::RococoToRococoBulletinCliBridge,
@@ -66,6 +68,8 @@ pub enum RelayParachainsBridge {
6668
BridgeHubWestendToBridgeHubRococo,
6769
AssetHubRococoToBridgeHubWestend,
6870
AssetHubWestendToBridgeHubRococo,
71+
MoonbeamToMoonriver,
72+
MoonriverToMoonbeam,
6973
}
7074

7175
impl ParachainsRelayer for BridgeHubRococoToBridgeHubWestendCliBridge {}
@@ -76,6 +80,8 @@ impl ParachainsRelayer for BridgeHubKusamaToBridgeHubPolkadotCliBridge {}
7680
impl ParachainsRelayer for BridgeHubPolkadotToBridgeHubKusamaCliBridge {}
7781
impl ParachainsRelayer for PolkadotToPolkadotBulletinCliBridge {}
7882
impl ParachainsRelayer for RococoToRococoBulletinCliBridge {}
83+
impl ParachainsRelayer for MoonbeamToMoonriverCliBridge {}
84+
impl ParachainsRelayer for MoonriverToMoonbeamCliBridge {}
7985

8086
impl RelayParachains {
8187
/// Run the command.
@@ -97,6 +103,10 @@ impl RelayParachains {
97103
PolkadotToPolkadotBulletinCliBridge::relay_parachains(self.params),
98104
RelayParachainsBridge::RococoToRococoBulletin =>
99105
RococoToRococoBulletinCliBridge::relay_parachains(self.params),
106+
RelayParachainsBridge::MoonbeamToMoonriver =>
107+
MoonbeamToMoonriverCliBridge::relay_parachains(self.params),
108+
RelayParachainsBridge::MoonriverToMoonbeam =>
109+
MoonriverToMoonbeamCliBridge::relay_parachains(self.params),
100110
}
101111
.await
102112
}
@@ -126,6 +136,10 @@ impl RelayParachainHead {
126136
PolkadotToPolkadotBulletinCliBridge::relay_parachain_head(self.params),
127137
RelayParachainsBridge::RococoToRococoBulletin =>
128138
RococoToRococoBulletinCliBridge::relay_parachain_head(self.params),
139+
RelayParachainsBridge::MoonbeamToMoonriver =>
140+
MoonbeamToMoonriverCliBridge::relay_parachain_head(self.params),
141+
RelayParachainsBridge::MoonriverToMoonbeam =>
142+
MoonriverToMoonbeamCliBridge::relay_parachain_head(self.params),
129143
}
130144
.await
131145
}

0 commit comments

Comments
 (0)