feat: server 启动加 --host 绑定地址旗标与 sidecar 端口字段

This commit is contained in:
2026-10-11 14:44:19 +00:00
parent 3843beb86e
commit 6e34c53cb8
13 changed files with 186 additions and 62 deletions
+14 -14
View File
@@ -142,7 +142,7 @@ fn server_help_lists_subcommands() {
fn server_log_no_file_exit_1() {
let _guard = lock_well_known();
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -162,7 +162,7 @@ fn server_log_no_file_exit_1() {
fn server_control_arms_no_server_exit_1() {
let _guard = lock_well_known();
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -181,7 +181,7 @@ fn server_control_arms_no_server_exit_1() {
fn server_forge_no_server_exit_1() {
let _guard = lock_well_known();
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -196,7 +196,7 @@ fn server_forge_no_server_exit_1() {
fn server_cleanup_exit_0() {
let _guard = lock_well_known();
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -216,7 +216,7 @@ fn server_start_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -266,7 +266,7 @@ fn server_start_when_running() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -305,7 +305,7 @@ fn server_restart_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -387,7 +387,7 @@ fn server_log_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -469,7 +469,7 @@ fn server_forge_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -529,7 +529,7 @@ fn server_watchdog_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -634,7 +634,7 @@ fn server_watchdog_sigint_stops_server() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -682,7 +682,7 @@ fn server_start_port_e2e() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -761,7 +761,7 @@ fn server_start_port_multi_client() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
@@ -824,7 +824,7 @@ fn server_start_port_second_instance_refused() {
// 探活先行:存活 server 占用全局路径时 panic,不抢占。
assert!(
!sidecar::is_server_alive(&sidecar::well_known_endpoint()),
!sidecar::is_server_alive(&sidecar::well_known_endpoint(sidecar::WELL_KNOWN_BIND_ADDR)),
"存活 server 占用 well-known 路径,测试不抢占"
);
+3
View File
@@ -5,6 +5,7 @@
//! 全局单例。
use std::fs;
use std::net::{IpAddr, Ipv4Addr};
use std::time::{Duration, Instant};
use oxide_cli::server::client::send_control_request_from;
@@ -21,6 +22,7 @@ fn test_config(test_name: &str) -> ServerConfig {
sidecar_path: dir.join("sidecar.json"),
worker_count: 2,
version: env!("CARGO_PKG_VERSION").to_string(),
bind_addr: IpAddr::V4(Ipv4Addr::LOCALHOST),
}
}
@@ -117,6 +119,7 @@ fn control_client_tcp_arm_end_to_end() {
sidecar_path: dir.join("sidecar.json"),
worker_count: 2,
version: env!("CARGO_PKG_VERSION").to_string(),
bind_addr: IpAddr::V4(Ipv4Addr::LOCALHOST),
};
// 后台线程起真实 run_server,等 sidecar 出现(TCP 臂无 socket 文件,
@@ -4,6 +4,7 @@
//! 进程级一次性的,信号投递无歧义,测试确定。SIGTERM 路径见
//! `server_signal_term.rs`(同型,独立进程)。
use std::net::{IpAddr, Ipv4Addr};
use std::process::Command;
use std::thread::JoinHandle;
use std::time::{Duration, Instant};
@@ -21,6 +22,7 @@ fn unique_paths(test_name: &str) -> ServerConfig {
sidecar_path: dir.join("sidecar.json"),
worker_count: 2,
version: env!("CARGO_PKG_VERSION").to_string(),
bind_addr: IpAddr::V4(Ipv4Addr::LOCALHOST),
}
}
@@ -4,6 +4,7 @@
//! 进程级一次性的,信号投递无歧义,测试确定。SIGINT 路径见
//! `server_signal_int.rs`(同型,独立进程)。
use std::net::{IpAddr, Ipv4Addr};
use std::process::Command;
use std::thread::JoinHandle;
use std::time::{Duration, Instant};
@@ -21,6 +22,7 @@ fn unique_paths(test_name: &str) -> ServerConfig {
sidecar_path: dir.join("sidecar.json"),
worker_count: 2,
version: env!("CARGO_PKG_VERSION").to_string(),
bind_addr: IpAddr::V4(Ipv4Addr::LOCALHOST),
}
}