From 589136306e3434ccf52466e6f108d0d0ba5be0d7 Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Sat, 11 Nov 2023 15:42:59 +0800 Subject: [PATCH] feat: fix external_arguments --- src/config.rs | 3 +-- src/docker_util.rs | 10 ++-------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/config.rs b/src/config.rs index f40601b..a285bf9 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,4 +1,3 @@ -use std::collections::HashMap; use std::fs; use std::path::PathBuf; @@ -15,7 +14,7 @@ pub struct DockerBuildImage { #[derive(Debug, Serialize, Deserialize, Default)] pub struct DockerBuildConfig { pub image: Option, - pub external_arguments: Option>, + pub external_arguments: Option>, pub images: Option>, pub mirror: Option, } diff --git a/src/docker_util.rs b/src/docker_util.rs index 5dfb99a..b507e26 100644 --- a/src/docker_util.rs +++ b/src/docker_util.rs @@ -1,4 +1,3 @@ -use std::collections::HashMap; use std::fs; use std::process::{Command, ExitStatus}; @@ -72,7 +71,7 @@ impl DockerCmd { self } - pub fn exec(self, cmds: &[String], external_arguments: &Option>) -> XResult { + pub fn exec(self, cmds: &[String], external_arguments: &Option>) -> XResult { let mut cmd = Command::new(DOCKER_CMD); cmd.arg("run"); cmd.arg("--rm"); @@ -80,12 +79,7 @@ impl DockerCmd { cmd.arg("-t"); } if let Some(external_arguments) = external_arguments { - for (k, v) in external_arguments { - if !k.is_empty() { - cmd.arg(k); - if !v.is_empty() { cmd.arg(k); } - } - } + external_arguments.iter().for_each(|a| if !a.is_empty() { cmd.arg(a); }); } cmd.arg("--user"); cmd.arg(&format!("{}:{}",