From d9b0aeb3c002ebfc6270ce7c361a93fb57c36500 Mon Sep 17 00:00:00 2001 From: yukang Date: Mon, 23 Sep 2024 10:33:02 +0800 Subject: [PATCH] fix port range --- tests/bruno/environments/test.bru | 6 +++--- tests/bruno/environments/xudt-test.bru | 6 +++--- tests/deploy/udt-init/src/main.rs | 20 +++++++++++++++++--- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/tests/bruno/environments/test.bru b/tests/bruno/environments/test.bru index d230d78b..8d2121e0 100644 --- a/tests/bruno/environments/test.bru +++ b/tests/bruno/environments/test.bru @@ -1,8 +1,8 @@ vars { CKB_RPC_URL: http://127.0.0.1:8114 - NODE1_RPC_URL: http://127.0.0.1:41714 - NODE2_RPC_URL: http://127.0.0.1:41715 - NODE3_RPC_URL: http://127.0.0.1:41716 + NODE1_RPC_URL: http://127.0.0.1:21714 + NODE2_RPC_URL: http://127.0.0.1:21715 + NODE3_RPC_URL: http://127.0.0.1:21716 NODE1_ADDR: /ip4/127.0.0.1/tcp/8344/p2p/QmbvRjJHAQDmj3cgnUBGQ5zVnGxUKwb2qJygwNs2wk41h8 NODE2_ADDR: /ip4/127.0.0.1/tcp/8345/p2p/QmSRcPqUn4aQrKHXyCDjGn2qBVf43tWBDS2Wj9QDUZXtZp NODE3_ADDR: /ip4/127.0.0.1/tcp/8346/p2p/QmaFDJb9CkMrXy7nhTWBY5y9mvuykre3EzzRsCJUAVXprZ diff --git a/tests/bruno/environments/xudt-test.bru b/tests/bruno/environments/xudt-test.bru index 83d7bc28..f5cc3113 100644 --- a/tests/bruno/environments/xudt-test.bru +++ b/tests/bruno/environments/xudt-test.bru @@ -1,8 +1,8 @@ vars { CKB_RPC_URL: http://127.0.0.1:8114 - NODE1_RPC_URL: http://127.0.0.1:41714 - NODE2_RPC_URL: http://127.0.0.1:41715 - NODE3_RPC_URL: http://127.0.0.1:41716 + NODE1_RPC_URL: http://127.0.0.1:21714 + NODE2_RPC_URL: http://127.0.0.1:21715 + NODE3_RPC_URL: http://127.0.0.1:21716 NODE1_ADDR: /ip4/127.0.0.1/tcp/8344/p2p/QmbvRjJHAQDmj3cgnUBGQ5zVnGxUKwb2qJygwNs2wk41h8 NODE2_ADDR: /ip4/127.0.0.1/tcp/8345/p2p/QmSRcPqUn4aQrKHXyCDjGn2qBVf43tWBDS2Wj9QDUZXtZp NODE3_ADDR: /ip4/127.0.0.1/tcp/8346/p2p/QmaFDJb9CkMrXy7nhTWBY5y9mvuykre3EzzRsCJUAVXprZ diff --git a/tests/deploy/udt-init/src/main.rs b/tests/deploy/udt-init/src/main.rs index 31530c1a..30299f35 100644 --- a/tests/deploy/udt-init/src/main.rs +++ b/tests/deploy/udt-init/src/main.rs @@ -19,6 +19,7 @@ use ckb_types::{packed::CellDep, prelude::Builder}; use rand::Rng; use serde::{Deserialize, Serialize}; use std::collections::HashSet; +use std::net::TcpListener; use std::{error::Error as StdErr, str::FromStr}; @@ -198,13 +199,26 @@ struct UdtInfos { infos: Vec, } +fn is_port_available(port: u16) -> bool { + match TcpListener::bind(("127.0.0.1", port)) { + Ok(listener) => { + drop(listener); // Close the listener + true + } + Err(_) => false, + } +} + fn generate_ports(num_ports: usize) -> Vec { let mut ports = HashSet::new(); let mut rng = rand::thread_rng(); while ports.len() < num_ports { - let port: u16 = rng.gen_range(1024..=65535); - ports.insert(port); + // avoid https://en.wikipedia.org/wiki/Ephemeral_port + let port: u16 = rng.gen_range(1024..32768); + if is_port_available(port) { + ports.insert(port); + } } ports.into_iter().collect() @@ -246,7 +260,7 @@ fn genrate_nodes_config() { for (i, config_dir) in config_dirs.iter().enumerate() { let use_gen_port = on_github_action && i != 0; let default_fiber_port = (8343 + i) as u16; - let default_rpc_port = (41713 + i) as u16; + let default_rpc_port = (21713 + i) as u16; let (fiber_port, rpc_port) = if use_gen_port { (*ports_iter.next().unwrap(), *ports_iter.next().unwrap()) } else {