mirror of
https://gitlab.com/veilid/veilid.git
synced 2025-02-11 04:08:53 -05:00
[skip ci] consolidate feature for veilid-server
This commit is contained in:
parent
85cf70b9a5
commit
766aca4502
@ -19,8 +19,10 @@ path = "src/main.rs"
|
||||
default = ["rt-tokio", "veilid-core/default", "otlp-tonic"]
|
||||
default-async-std = ["rt-async-std", "veilid-core/default-async-std"]
|
||||
|
||||
virtual-network = ["veilid-core/virtual-network"]
|
||||
virtual-network-server = ["veilid-core/virtual-network-server"]
|
||||
virtual-network = [
|
||||
"veilid-core/virtual-network",
|
||||
"veilid-core/virtual-network-server",
|
||||
]
|
||||
|
||||
crypto-test = ["rt-tokio", "veilid-core/crypto-test"]
|
||||
crypto-test-none = ["rt-tokio", "veilid-core/crypto-test-none"]
|
||||
|
@ -93,10 +93,24 @@ pub struct CmdlineArgs {
|
||||
#[arg(long, hide = true, value_name = "PATH", num_args=0..=1, require_equals=true, default_missing_value = "")]
|
||||
perfetto: Option<OsString>,
|
||||
|
||||
/// Run as an extra daemon on the same machine for testing purposes, specify a number greater than zero to offset the listening ports
|
||||
/// Run as an extra daemon on the same machine for testing purposes
|
||||
#[arg(short('n'), long)]
|
||||
subnode_index: Option<u16>,
|
||||
|
||||
/// Run several nodes in parallel on the same machine for testing purposes
|
||||
///
|
||||
/// Will run subnodes N though N+(subnode_count-1), where N is 0 or set via --subnode_index
|
||||
#[arg(long, value_name = "COUNT")]
|
||||
subnode_count: Option<u16>,
|
||||
|
||||
/// Connect to a virtual network router
|
||||
///
|
||||
/// Specify either an remote tcp or ws url ('tcp://localhost:5149' or 'ws://localhost:5148')
|
||||
/// or '' or 'local' to specify using an internally spawned server
|
||||
#[cfg(feature = "virtual-network")]
|
||||
#[arg(long, value_name = "URL", default_missing_value = "")]
|
||||
virtual_router: Option<String>,
|
||||
|
||||
/// Only generate a new keypair and print it
|
||||
///
|
||||
/// Generate a new keypair for a specific crypto kind and print both the key and its secret to the terminal, then exit immediately.
|
||||
|
@ -49,9 +49,9 @@ pub fn load_default_config() -> EyreResult<config::Config> {
|
||||
server_address: ''
|
||||
"#;
|
||||
|
||||
#[cfg(not(feature = "virtual-network-server"))]
|
||||
#[cfg(not(feature = "virtual-network"))]
|
||||
let virtual_network_server_section = "";
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
let virtual_network_server_section = r#"
|
||||
virtual_network_server:
|
||||
enabled: false
|
||||
@ -107,6 +107,7 @@ logging:
|
||||
enabled: false
|
||||
testing:
|
||||
subnode_index: 0
|
||||
subnode_count: 1
|
||||
%VIRTUAL_NETWORK_SERVER_SECTION%
|
||||
core:
|
||||
capabilities:
|
||||
@ -720,20 +721,20 @@ pub struct VirtualNetwork {
|
||||
pub server_address: String,
|
||||
}
|
||||
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub struct VirtualNetworkServer {
|
||||
pub enabled: bool,
|
||||
pub tcp: VirtualNetworkServerTcp,
|
||||
pub ws: VirtualNetworkServerWs,
|
||||
}
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub struct VirtualNetworkServerTcp {
|
||||
pub listen: bool,
|
||||
pub listen_address: NamedSocketAddrs,
|
||||
}
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub struct VirtualNetworkServerWs {
|
||||
pub listen: bool,
|
||||
@ -743,7 +744,8 @@ pub struct VirtualNetworkServerWs {
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
pub struct Testing {
|
||||
pub subnode_index: u16,
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
pub subnode_count: u16,
|
||||
#[cfg(feature = "virtual-network")]
|
||||
pub virtual_network_server: VirtualNetworkServer,
|
||||
}
|
||||
|
||||
@ -1123,7 +1125,7 @@ impl Settings {
|
||||
set_config_value!(inner.logging.perfetto.path, value);
|
||||
set_config_value!(inner.logging.console.enabled, value);
|
||||
set_config_value!(inner.testing.subnode_index, value);
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
{
|
||||
set_config_value!(inner.testing.virtual_network_server.enabled, value);
|
||||
set_config_value!(inner.testing.virtual_network_server.tcp.listen, value);
|
||||
@ -1729,7 +1731,7 @@ mod tests {
|
||||
assert_eq!(s.logging.perfetto.path, "");
|
||||
assert!(!s.logging.console.enabled);
|
||||
assert_eq!(s.testing.subnode_index, 0);
|
||||
#[cfg(feature = "virtual-network-server")]
|
||||
#[cfg(feature = "virtual-network")]
|
||||
{
|
||||
assert_eq!(s.testing.virtual_network_server.enabled, false);
|
||||
assert_eq!(s.testing.virtual_network_server.tcp.listen, false);
|
||||
|
Loading…
x
Reference in New Issue
Block a user