feat: fix external_arguments
This commit is contained in:
@@ -1,4 +1,3 @@
|
|||||||
use std::collections::HashMap;
|
|
||||||
use std::fs;
|
use std::fs;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
@@ -15,7 +14,7 @@ pub struct DockerBuildImage {
|
|||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default)]
|
||||||
pub struct DockerBuildConfig {
|
pub struct DockerBuildConfig {
|
||||||
pub image: Option<String>,
|
pub image: Option<String>,
|
||||||
pub external_arguments: Option<HashMap<String, String>>,
|
pub external_arguments: Option<Vec<String>>,
|
||||||
pub images: Option<Vec<DockerBuildImage>>,
|
pub images: Option<Vec<DockerBuildImage>>,
|
||||||
pub mirror: Option<String>,
|
pub mirror: Option<String>,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
use std::collections::HashMap;
|
|
||||||
use std::fs;
|
use std::fs;
|
||||||
use std::process::{Command, ExitStatus};
|
use std::process::{Command, ExitStatus};
|
||||||
|
|
||||||
@@ -72,7 +71,7 @@ impl DockerCmd {
|
|||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn exec(self, cmds: &[String], external_arguments: &Option<HashMap<String, String>>) -> XResult<ExitStatus> {
|
pub fn exec(self, cmds: &[String], external_arguments: &Option<Vec<String>>) -> XResult<ExitStatus> {
|
||||||
let mut cmd = Command::new(DOCKER_CMD);
|
let mut cmd = Command::new(DOCKER_CMD);
|
||||||
cmd.arg("run");
|
cmd.arg("run");
|
||||||
cmd.arg("--rm");
|
cmd.arg("--rm");
|
||||||
@@ -80,12 +79,7 @@ impl DockerCmd {
|
|||||||
cmd.arg("-t");
|
cmd.arg("-t");
|
||||||
}
|
}
|
||||||
if let Some(external_arguments) = external_arguments {
|
if let Some(external_arguments) = external_arguments {
|
||||||
for (k, v) in external_arguments {
|
external_arguments.iter().for_each(|a| if !a.is_empty() { cmd.arg(a); });
|
||||||
if !k.is_empty() {
|
|
||||||
cmd.arg(k);
|
|
||||||
if !v.is_empty() { cmd.arg(k); }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
cmd.arg("--user");
|
cmd.arg("--user");
|
||||||
cmd.arg(&format!("{}:{}",
|
cmd.arg(&format!("{}:{}",
|
||||||
|
|||||||
Reference in New Issue
Block a user