From 5c9fda56c377e2818ab082412392ce06eea3f34f Mon Sep 17 00:00:00 2001 From: Rohit Sarpotdar <rohi7ns@gmail.com> Date: Tue, 18 Feb 2025 22:07:59 +0530 Subject: [PATCH] Bridges: Remove obsolete relayer CLI args: host, port, path, secure (#7549) Closes: #7291 ## Description *Removes obsolete relayer CLI args from bridges and resolves following issue: (https://github.com/paritytech/polkadot-sdk/issues/7291)* --------- Co-authored-by: Branislav Kontur <bkontur@gmail.com> --- .../relays/client-substrate/src/client/rpc.rs | 16 +------ bridges/relays/client-substrate/src/lib.rs | 19 ++------ .../src/cli/chain_schema.rs | 20 +------- .../src/cli/relay_headers_and_messages/mod.rs | 48 +++++-------------- .../rococo-westend/bridges_rococo_westend.sh | 42 +++------------- bridges/testing/scripts/start-relayer.sh | 7 --- 6 files changed, 25 insertions(+), 127 deletions(-) delete mode 100755 bridges/testing/scripts/start-relayer.sh diff --git a/bridges/relays/client-substrate/src/client/rpc.rs b/bridges/relays/client-substrate/src/client/rpc.rs index 9c7f769462e..7147bad3c28 100644 --- a/bridges/relays/client-substrate/src/client/rpc.rs +++ b/bridges/relays/client-substrate/src/client/rpc.rs @@ -194,21 +194,7 @@ impl<C: Chain> RpcClient<C> { params: &ConnectionParams, ) -> Result<(Arc<tokio::runtime::Runtime>, Arc<WsClient>)> { let tokio = tokio::runtime::Runtime::new()?; - let uri = match params.uri { - Some(ref uri) => uri.clone(), - None => { - format!( - "{}://{}:{}{}", - if params.secure { "wss" } else { "ws" }, - params.host, - params.port, - match params.path { - Some(ref path) => format!("/{}", path), - None => String::new(), - }, - ) - }, - }; + let uri = params.uri.clone(); log::info!(target: "bridge", "Connecting to {} node at {}", C::NAME, uri); let client = tokio diff --git a/bridges/relays/client-substrate/src/lib.rs b/bridges/relays/client-substrate/src/lib.rs index 12a1c48c09c..7eb1e4a6cde 100644 --- a/bridges/relays/client-substrate/src/lib.rs +++ b/bridges/relays/client-substrate/src/lib.rs @@ -57,17 +57,8 @@ pub use bp_runtime::{ /// Substrate-over-websocket connection params. #[derive(Debug, Clone)] pub struct ConnectionParams { - /// Websocket endpoint URL. Overrides all other URL components (`host`, `port`, `path` and - /// `secure`). - pub uri: Option<String>, - /// Websocket server host name. - pub host: String, - /// Websocket server TCP port. - pub port: u16, - /// Websocket endpoint path at server. - pub path: Option<String>, - /// Use secure websocket connection. - pub secure: bool, + /// Websocket endpoint URL. + pub uri: String, /// Defined chain runtime version pub chain_runtime_version: ChainRuntimeVersion, } @@ -75,11 +66,7 @@ pub struct ConnectionParams { impl Default for ConnectionParams { fn default() -> Self { ConnectionParams { - uri: None, - host: "localhost".into(), - port: 9944, - path: None, - secure: false, + uri: "ws://localhost:9944".into(), chain_runtime_version: ChainRuntimeVersion::Auto, } } diff --git a/bridges/relays/lib-substrate-relay/src/cli/chain_schema.rs b/bridges/relays/lib-substrate-relay/src/cli/chain_schema.rs index d985d35c9e8..ae00b243c0c 100644 --- a/bridges/relays/lib-substrate-relay/src/cli/chain_schema.rs +++ b/bridges/relays/lib-substrate-relay/src/cli/chain_schema.rs @@ -98,21 +98,9 @@ macro_rules! declare_chain_connection_params_cli_schema { #[doc = $chain " connection params."] #[derive(StructOpt, Debug, PartialEq, Eq, Clone)] pub struct [<$chain ConnectionParams>] { - #[doc = "WS endpoint of " $chain ": full URI. Overrides all other connection string components (host, port, path, secure)."] + #[doc = "WS endpoint of " $chain ": full URI."] #[structopt(long)] - pub [<$chain_prefix _uri>]: Option<String>, - #[doc = "WS endpoint of " $chain ": host component."] - #[structopt(long, default_value = "127.0.0.1")] - pub [<$chain_prefix _host>]: String, - #[doc = "WS endpoint of " $chain ": port component."] - #[structopt(long, default_value = "9944")] - pub [<$chain_prefix _port>]: u16, - #[doc = "WS endpoint of " $chain ": path component."] - #[structopt(long)] - pub [<$chain_prefix _path>]: Option<String>, - #[doc = "Use secure websocket connection."] - #[structopt(long)] - pub [<$chain_prefix _secure>]: bool, + pub [<$chain_prefix _uri>]: String, #[doc = "Custom runtime version"] #[structopt(flatten)] pub [<$chain_prefix _runtime_version>]: [<$chain RuntimeVersionParams>], @@ -129,10 +117,6 @@ macro_rules! declare_chain_connection_params_cli_schema { .into_runtime_version(Chain::RUNTIME_VERSION)?; Ok(relay_substrate_client::new(relay_substrate_client::ConnectionParams { uri: self.[<$chain_prefix _uri>], - host: self.[<$chain_prefix _host>], - port: self.[<$chain_prefix _port>], - path: self.[<$chain_prefix _path>], - secure: self.[<$chain_prefix _secure>], chain_runtime_version, }) .await diff --git a/bridges/relays/lib-substrate-relay/src/cli/relay_headers_and_messages/mod.rs b/bridges/relays/lib-substrate-relay/src/cli/relay_headers_and_messages/mod.rs index bb6c689a76e..078bf8ae735 100644 --- a/bridges/relays/lib-substrate-relay/src/cli/relay_headers_and_messages/mod.rs +++ b/bridges/relays/lib-substrate-relay/src/cli/relay_headers_and_messages/mod.rs @@ -422,30 +422,22 @@ mod tests { let res = BridgeHubKusamaBridgeHubPolkadotHeadersAndMessages::from_iter(vec![ "bridge-hub-kusama-bridge-hub-polkadot-headers-and-messages", - "--bridge-hub-kusama-host", - "bridge-hub-kusama-node-collator1", - "--bridge-hub-kusama-port", - "9944", + "--bridge-hub-kusama-uri", + "ws://bridge-hub-kusama-node-collator1:9944", "--bridge-hub-kusama-signer", "//Iden", "--bridge-hub-kusama-transactions-mortality", "64", - "--kusama-host", - "kusama-alice", - "--kusama-port", - "9944", - "--bridge-hub-polkadot-host", - "bridge-hub-polkadot-collator1", - "--bridge-hub-polkadot-port", - "9944", + "--kusama-uri", + "ws://kusama-alice:9944", + "--bridge-hub-polkadot-uri", + "ws://bridge-hub-polkadot-collator1:9944", "--bridge-hub-polkadot-signer", "//George", "--bridge-hub-polkadot-transactions-mortality", "64", - "--polkadot-host", - "polkadot-alice", - "--polkadot-port", - "9944", + "--polkadot-uri", + "ws://polkadot-alice:9944", "--lane", "0000000000000000000000000000000000000000000000000000000000000000", "--prometheus-host", @@ -467,11 +459,7 @@ mod tests { }, }, left: BridgeHubKusamaConnectionParams { - bridge_hub_kusama_uri: None, - bridge_hub_kusama_host: "bridge-hub-kusama-node-collator1".into(), - bridge_hub_kusama_port: 9944, - bridge_hub_kusama_path: None, - bridge_hub_kusama_secure: false, + bridge_hub_kusama_uri: "ws://bridge-hub-kusama-node-collator1:9944".into(), bridge_hub_kusama_runtime_version: BridgeHubKusamaRuntimeVersionParams { bridge_hub_kusama_version_mode: RuntimeVersionType::Bundle, bridge_hub_kusama_spec_version: None, @@ -486,11 +474,7 @@ mod tests { bridge_hub_kusama_transactions_mortality: Some(64), }, left_relay: KusamaConnectionParams { - kusama_uri: None, - kusama_host: "kusama-alice".into(), - kusama_port: 9944, - kusama_path: None, - kusama_secure: false, + kusama_uri: "ws://kusama-alice:9944".into(), kusama_runtime_version: KusamaRuntimeVersionParams { kusama_version_mode: RuntimeVersionType::Bundle, kusama_spec_version: None, @@ -498,11 +482,7 @@ mod tests { }, }, right: BridgeHubPolkadotConnectionParams { - bridge_hub_polkadot_uri: None, - bridge_hub_polkadot_host: "bridge-hub-polkadot-collator1".into(), - bridge_hub_polkadot_port: 9944, - bridge_hub_polkadot_path: None, - bridge_hub_polkadot_secure: false, + bridge_hub_polkadot_uri: "ws://bridge-hub-polkadot-collator1:9944".into(), bridge_hub_polkadot_runtime_version: BridgeHubPolkadotRuntimeVersionParams { bridge_hub_polkadot_version_mode: RuntimeVersionType::Bundle, bridge_hub_polkadot_spec_version: None, @@ -517,11 +497,7 @@ mod tests { bridge_hub_polkadot_transactions_mortality: Some(64), }, right_relay: PolkadotConnectionParams { - polkadot_uri: None, - polkadot_host: "polkadot-alice".into(), - polkadot_port: 9944, - polkadot_path: None, - polkadot_secure: false, + polkadot_uri: "ws://polkadot-alice:9944".into(), polkadot_runtime_version: PolkadotRuntimeVersionParams { polkadot_version_mode: RuntimeVersionType::Bundle, polkadot_spec_version: None, diff --git a/bridges/testing/environments/rococo-westend/bridges_rococo_westend.sh b/bridges/testing/environments/rococo-westend/bridges_rococo_westend.sh index 321f4d9f26d..b146c28ff55 100755 --- a/bridges/testing/environments/rococo-westend/bridges_rococo_westend.sh +++ b/bridges/testing/environments/rococo-westend/bridges_rococo_westend.sh @@ -131,13 +131,11 @@ function init_ro_wnd() { RUST_LOG=runtime=trace,rpc=trace,bridge=trace \ $relayer_path init-bridge rococo-to-bridge-hub-westend \ - --source-host localhost \ - --source-port 9942 \ - --source-version-mode Auto \ - --target-host localhost \ - --target-port 8945 \ - --target-version-mode Auto \ - --target-signer //Bob + --source-uri ws://localhost:9942 \ + --source-version-mode Auto \ + --target-uri ws://localhost:8945 \ + --target-version-mode Auto \ + --target-signer //Bob } function init_wnd_ro() { @@ -145,39 +143,13 @@ function init_wnd_ro() { RUST_LOG=runtime=trace,rpc=trace,bridge=trace \ $relayer_path init-bridge westend-to-bridge-hub-rococo \ - --source-host localhost \ - --source-port 9945 \ + --source-uri ws://localhost:9945 \ --source-version-mode Auto \ - --target-host localhost \ - --target-port 8943 \ + --target-uri ws://localhost:8943 \ --target-version-mode Auto \ --target-signer //Bob } -function run_relay() { - local relayer_path=$(ensure_relayer) - - RUST_LOG=runtime=trace,rpc=trace,bridge=trace \ - $relayer_path relay-headers-and-messages bridge-hub-rococo-bridge-hub-westend \ - --rococo-host localhost \ - --rococo-port 9942 \ - --rococo-version-mode Auto \ - --bridge-hub-rococo-host localhost \ - --bridge-hub-rococo-port 8943 \ - --bridge-hub-rococo-version-mode Auto \ - --bridge-hub-rococo-signer //Charlie \ - --bridge-hub-rococo-transactions-mortality 4 \ - --westend-host localhost \ - --westend-port 9945 \ - --westend-version-mode Auto \ - --bridge-hub-westend-host localhost \ - --bridge-hub-westend-port 8945 \ - --bridge-hub-westend-version-mode Auto \ - --bridge-hub-westend-signer //Charlie \ - --bridge-hub-westend-transactions-mortality 4 \ - --lane "${LANE_ID}" -} - function run_finality_relay() { local relayer_path=$(ensure_relayer) diff --git a/bridges/testing/scripts/start-relayer.sh b/bridges/testing/scripts/start-relayer.sh deleted file mode 100755 index 38ea62fad52..00000000000 --- a/bridges/testing/scripts/start-relayer.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -RELAY_LOG=`mktemp -p $TEST_FOLDER relay.XXXXX` - -pushd $POLKADOT_SDK_PATH/bridges/testing/environments/rococo-westend -./bridges_rococo_westend.sh run-relay >$RELAY_LOG 2>&1& -popd -- GitLab