|
|
|
@@ -54,8 +54,8 @@ async fn main() -> eyre::Result<()> { |
|
|
|
) |
|
|
|
.await?; |
|
|
|
let coordinator_addr = Ipv4Addr::LOCALHOST; |
|
|
|
let daemon_a = run_daemon(coordinator_addr.to_string(), "A", 9843); // Random port |
|
|
|
let daemon_b = run_daemon(coordinator_addr.to_string(), "B", 9842); |
|
|
|
let daemon_a = run_daemon(coordinator_addr.to_string(), "A"); |
|
|
|
let daemon_b = run_daemon(coordinator_addr.to_string(), "B"); |
|
|
|
|
|
|
|
tracing::info!("Spawning coordinator and daemons"); |
|
|
|
let mut tasks = JoinSet::new(); |
|
|
|
@@ -221,11 +221,7 @@ async fn build_dataflow(dataflow: &Path) -> eyre::Result<()> { |
|
|
|
Ok(()) |
|
|
|
} |
|
|
|
|
|
|
|
async fn run_daemon( |
|
|
|
coordinator: String, |
|
|
|
machine_id: &str, |
|
|
|
local_listen_port: u16, |
|
|
|
) -> eyre::Result<()> { |
|
|
|
async fn run_daemon(coordinator: String, machine_id: &str) -> eyre::Result<()> { |
|
|
|
let cargo = std::env::var("CARGO").unwrap(); |
|
|
|
let mut cmd = tokio::process::Command::new(&cargo); |
|
|
|
cmd.arg("run"); |
|
|
|
@@ -237,7 +233,7 @@ async fn run_daemon( |
|
|
|
.arg("--coordinator-addr") |
|
|
|
.arg(coordinator) |
|
|
|
.arg("--local-listen-port") |
|
|
|
.arg(local_listen_port.to_string()); |
|
|
|
.arg("9843"); // random port |
|
|
|
if !cmd.status().await?.success() { |
|
|
|
bail!("failed to run dataflow"); |
|
|
|
}; |
|
|
|
|