diff options
| -rw-r--r-- | src/main.rs | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/main.rs b/src/main.rs index ec3f8f1..3ed115e 100644 --- a/src/main.rs +++ b/src/main.rs | |||
| @@ -532,14 +532,14 @@ fn machine_containers_create_script(containers: &[ScheduledContainer]) -> String | |||
| 532 | 532 | ||
| 533 | for (idx, container) in containers.iter().enumerate() { | 533 | for (idx, container) in containers.iter().enumerate() { |
| 534 | // remove the start signal file if it exists | 534 | // remove the start signal file if it exists |
| 535 | script.push_str("mkdir -p /tmp/oar-p2p-signal\n"); | 535 | script.push_str("mkdir -p /tmp/$USER/oar-p2p-signal\n"); |
| 536 | script.push_str("rm /tmp/oar-p2p-signal/start 2>/dev/null || true\n"); | 536 | script.push_str("rm /tmp/$USER/oar-p2p-signal/start 2>/dev/null || true\n"); |
| 537 | 537 | ||
| 538 | script.push_str("docker create \\\n"); | 538 | script.push_str("docker create \\\n"); |
| 539 | script.push_str("\t--pull=never \\\n"); | 539 | script.push_str("\t--pull=never \\\n"); |
| 540 | script.push_str("\t--network=host \\\n"); | 540 | script.push_str("\t--network=host \\\n"); |
| 541 | script.push_str("\t--restart=no \\\n"); | 541 | script.push_str("\t--restart=no \\\n"); |
| 542 | script.push_str("\t--volume /tmp/oar-p2p-signal:/oar-p2p\\\n"); | 542 | script.push_str("\t--volume /tmp/$USER/oar-p2p-signal:/oar-p2p\\\n"); |
| 543 | script.push_str(&format!("\t--name {} \\\n", container.name)); | 543 | script.push_str(&format!("\t--name {} \\\n", container.name)); |
| 544 | for (key, val) in container.variables.iter() { | 544 | for (key, val) in container.variables.iter() { |
| 545 | script.push_str("\t-e "); | 545 | script.push_str("\t-e "); |
| @@ -603,7 +603,7 @@ async fn machine_signal_containers( | |||
| 603 | machine_run_script( | 603 | machine_run_script( |
| 604 | ctx, | 604 | ctx, |
| 605 | machine, | 605 | machine, |
| 606 | &format!("echo -n {timestamp} > /tmp/oar-p2p-signal/{signal}.tmp ; mv /tmp/oar-p2p-signal/{signal}.tmp /tmp/oar-p2p-signal/{signal}"), | 606 | &format!("echo -n {timestamp} > /tmp/$USER/oar-p2p-signal/{signal}.tmp ; mv /tmp/$USER/oar-p2p-signal/{signal}.tmp /tmp/$USER/oar-p2p-signal/{signal}"), |
| 607 | ) | 607 | ) |
| 608 | .await?; | 608 | .await?; |
| 609 | tracing::info!("containers signaled"); | 609 | tracing::info!("containers signaled"); |
| @@ -664,11 +664,11 @@ async fn machine_containers_wait( | |||
| 664 | fn machine_containers_save_logs_script(containers: &[ScheduledContainer]) -> String { | 664 | fn machine_containers_save_logs_script(containers: &[ScheduledContainer]) -> String { |
| 665 | let mut script = String::default(); | 665 | let mut script = String::default(); |
| 666 | script.push_str("set -e\n"); | 666 | script.push_str("set -e\n"); |
| 667 | script.push_str("mkdir -p /tmp/oar-p2p-logs\n"); | 667 | script.push_str("mkdir -p /tmp/$USER/oar-p2p-logs\n"); |
| 668 | script.push_str("find /tmp/oar-p2p-logs -maxdepth 1 -type f -delete\n"); | 668 | script.push_str("find /tmp/$USER/oar-p2p-logs -maxdepth 1 -type f -delete\n"); |
| 669 | for container in containers { | 669 | for container in containers { |
| 670 | let name = &container.name; | 670 | let name = &container.name; |
| 671 | script.push_str(&format!("docker logs {name} 1> /tmp/oar-p2p-logs/{name}.stdout 2> /tmp/oar-p2p-logs/{name}.stderr\n")); | 671 | script.push_str(&format!("docker logs {name} 1> /tmp/$USER/oar-p2p-logs/{name}.stdout 2> /tmp/$USER/oar-p2p-logs/{name}.stderr\n")); |
| 672 | } | 672 | } |
| 673 | script.push_str("exit 0\n"); | 673 | script.push_str("exit 0\n"); |
| 674 | script | 674 | script |
| @@ -701,7 +701,7 @@ async fn machine_copy_logs_dir(ctx: &Context, machine: Machine, output_dir: &Pat | |||
| 701 | let output = Command::new("rsync") | 701 | let output = Command::new("rsync") |
| 702 | .env("RSYNC_RSH", rsync_rsh) | 702 | .env("RSYNC_RSH", rsync_rsh) |
| 703 | .arg("-avz") | 703 | .arg("-avz") |
| 704 | .arg(format!("{}:/tmp/oar-p2p-logs/", machine.hostname())) | 704 | .arg(format!("{}:/tmp/$USER/oar-p2p-logs/", machine.hostname())) |
| 705 | .arg(output_dir.display().to_string()) | 705 | .arg(output_dir.display().to_string()) |
| 706 | .output() | 706 | .output() |
| 707 | .await?; | 707 | .await?; |
| @@ -921,7 +921,8 @@ async fn machine_net_container_build(ctx: &Context, machine: Machine) -> Result< | |||
| 921 | tracing::info!("building network container..."); | 921 | tracing::info!("building network container..."); |
| 922 | let script = r#" | 922 | let script = r#" |
| 923 | set -e | 923 | set -e |
| 924 | cat << EOF > /tmp/oar-p2p.containerfile | 924 | mkdir -p /tmp/$USER |
| 925 | cat << EOF > /tmp/$USER/oar-p2p.containerfile | ||
| 925 | FROM alpine:latest | 926 | FROM alpine:latest |
| 926 | RUN apk update && \ | 927 | RUN apk update && \ |
| 927 | apk add --no-cache bash grep iproute2 iproute2-tc nftables && \ | 928 | apk add --no-cache bash grep iproute2 iproute2-tc nftables && \ |
| @@ -930,9 +931,9 @@ RUN apk update && \ | |||
| 930 | WORKDIR /work | 931 | WORKDIR /work |
| 931 | EOF | 932 | EOF |
| 932 | 933 | ||
| 933 | rm -rf /tmp/oar-p2p || true | 934 | rm -rf /tmp/$USER/oar-p2p || true |
| 934 | mkdir -p /tmp/oar-p2p | 935 | mkdir -p /tmp/$USER/oar-p2p |
| 935 | docker build -t local/oar-p2p-networking:latest -f /tmp/oar-p2p.containerfile /tmp/oar-p2p | 936 | docker build -t local/oar-p2p-networking:latest -f /tmp/$USER/oar-p2p.containerfile /tmp/$USER/oar-p2p |
| 936 | "#; | 937 | "#; |
| 937 | machine_run_script(ctx, machine, script).await?; | 938 | machine_run_script(ctx, machine, script).await?; |
| 938 | tracing::info!("network container built"); | 939 | tracing::info!("network container built"); |
