diff options
-rw-r--r-- | src/runner/container/tar.rs | 4 | ||||
-rw-r--r-- | src/runner/container/task.rs | 14 | ||||
-rw-r--r-- | src/util/fs.rs | 12 |
3 files changed, 9 insertions, 21 deletions
diff --git a/src/runner/container/tar.rs b/src/runner/container/tar.rs index c04f236..67993c1 100644 --- a/src/runner/container/tar.rs +++ b/src/runner/container/tar.rs @@ -25,13 +25,13 @@ pub fn pack<W: Write, P: AsRef<Path>>( let _rootfs_mount = fs::mount( paths::ROOTFS_DIR, &rootfs_mount_target, - "none", + None, MsFlags::MS_BIND, None, )?; let source_mount_target = paths::join(&[&task_tmp_dir, paths::TASK_WORKDIR]); - let _source_mount = fs::mount(source, &source_mount_target, "none", MsFlags::MS_BIND, None)?; + let _source_mount = fs::mount(source, &source_mount_target, None, MsFlags::MS_BIND, None)?; spec::generate_spec(&[ "tar", diff --git a/src/runner/container/task.rs b/src/runner/container/task.rs index d5ab94c..b6b8026 100644 --- a/src/runner/container/task.rs +++ b/src/runner/container/task.rs @@ -43,14 +43,8 @@ fn init_task(input_hash: &InputHash, task: &runner::Task) -> Result<fs::Mount> { let mount_target = paths::join(&[&task_tmp_dir, paths::TASK_WORKDIR]); let mount = if task.input.inherit.is_empty() { - fs::mount( - task_layer_dir, - &mount_target, - "none", - MsFlags::MS_BIND, - None, - ) - .with_context(|| format!("Failed to bind mount to {:?}", mount_target))? + fs::mount(task_layer_dir, &mount_target, None, MsFlags::MS_BIND, None) + .with_context(|| format!("Failed to bind mount to {:?}", mount_target))? } else { let task_work_dir = paths::join(&[&task_state_dir, paths::TASK_STATE_WORK_SUBDIR]); fs::mkdir(&task_work_dir)?; @@ -73,7 +67,7 @@ fn init_task(input_hash: &InputHash, task: &runner::Task) -> Result<fs::Mount> { fs::mount( "overlay", &mount_target, - "overlay", + Some("overlay"), MsFlags::empty(), Some(&options), ) @@ -97,7 +91,7 @@ fn init_task_rootfs(input_hash: &InputHash) -> Result<fs::Mount> { let mount = fs::mount( "overlay", &mount_target, - "overlay", + Some("overlay"), MsFlags::empty(), Some(&options), ) diff --git a/src/util/fs.rs b/src/util/fs.rs index 0dbe496..9344c72 100644 --- a/src/util/fs.rs +++ b/src/util/fs.rs @@ -98,7 +98,7 @@ impl Drop for Mount { pub fn mount<P1: AsRef<Path>, P2: AsRef<Path>>( source: P1, target: P2, - fstype: &str, + fstype: Option<&str>, flags: MsFlags, data: Option<&str>, ) -> Result<Mount> { @@ -108,13 +108,7 @@ pub fn mount<P1: AsRef<Path>, P2: AsRef<Path>>( .as_ref() .canonicalize() .with_context(|| format!("Failed to get absolute path for {:?}", target.as_ref()))?; - mount::mount( - Some(source.as_ref()), - &canon_target, - Some(fstype), - flags, - data, - ) - .with_context(|| format!("Failed to mount {:?}", canon_target))?; + mount::mount(Some(source.as_ref()), &canon_target, fstype, flags, data) + .with_context(|| format!("Failed to mount {:?}", canon_target))?; Ok(Mount(canon_target)) } |