summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/runner/runc/init.rs8
-rw-r--r--src/runner/runc/run.rs14
-rw-r--r--src/util.rs10
3 files changed, 8 insertions, 24 deletions
diff --git a/src/runner/runc/init.rs b/src/runner/runc/init.rs
index 80e0b46..32eac6b 100644
--- a/src/runner/runc/init.rs
+++ b/src/runner/runc/init.rs
@@ -9,10 +9,7 @@ use nix::mount::{self, MsFlags};
use serde::{Deserialize, Serialize};
use walkdir::WalkDir;
-use crate::{
- paths, unshare,
- util::{self, ToIOResult},
-};
+use crate::{paths, unshare, util};
fn prepare_buildtmp() -> io::Result<()> {
mount::mount::<_, _, _, str>(
@@ -21,8 +18,7 @@ fn prepare_buildtmp() -> io::Result<()> {
Some("tmpfs"),
MsFlags::empty(),
None,
- )
- .to_io_result()?;
+ )?;
util::tar::unpack(File::open(paths::ROOTFS_ARCHIVE)?, paths::ROOTFS_DIR)?;
diff --git a/src/runner/runc/run.rs b/src/runner/runc/run.rs
index 84e898a..cfb1364 100644
--- a/src/runner/runc/run.rs
+++ b/src/runner/runc/run.rs
@@ -13,7 +13,7 @@ use tee_readwrite::TeeWriter;
use crate::{
paths, runner,
types::*,
- util::{self, tar, ToIOResult},
+ util::{self, tar},
};
use super::spec;
@@ -42,7 +42,7 @@ impl From<Error> for io::Error {
}
}
-fn init_task(task: &runner::Task) -> Result<(), Error> {
+fn init_task(task: &runner::Task) -> io::Result<()> {
let mut dir = fs::DirBuilder::new();
dir.recursive(true);
@@ -73,13 +73,12 @@ fn init_task(task: &runner::Task) -> Result<(), Error> {
Some("none"),
MsFlags::MS_BIND,
None,
- )
- .to_io_result()?;
+ )?;
Ok(())
}
-fn unpack_dependencies(task: &runner::Task) -> Result<(), Error> {
+fn unpack_dependencies(task: &runner::Task) -> io::Result<()> {
let task_tmp_dir = paths::task_tmp_dir(&task.input_hash);
for (dep, action) in &task.depends {
match action {
@@ -115,7 +114,7 @@ fn unpack_dependencies(task: &runner::Task) -> Result<(), Error> {
Ok(())
}
-fn collect_output(task: runner::Task) -> Result<OutputHash, io::Error> {
+fn collect_output(task: runner::Task) -> io::Result<OutputHash> {
let filename = paths::output_tmp_filename(&task.input_hash);
let file = File::create(&filename)?;
let hasher = OutputHasher::new();
@@ -135,8 +134,7 @@ fn collect_output(task: runner::Task) -> Result<OutputHash, io::Error> {
let hash = OutputHash(StringHash(hasher.finalize().into()));
fs::rename(filename, paths::output_filename(&hash))?;
- mount::umount(paths::join(&[&task_tmp_dir, paths::TASK_TMP_BUILD_SUBDIR]).as_str())
- .to_io_result()?;
+ mount::umount(paths::join(&[&task_tmp_dir, paths::TASK_TMP_BUILD_SUBDIR]).as_str())?;
Ok(hash)
}
diff --git a/src/util.rs b/src/util.rs
index 838f1d3..174f7d8 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -9,16 +9,6 @@ use std::{
use nix::sys::wait;
-pub trait ToIOResult<T> {
- fn to_io_result(self) -> Result<T>;
-}
-
-impl<T> ToIOResult<T> for nix::Result<T> {
- fn to_io_result(self) -> Result<T> {
- self.map_err(From::from)
- }
-}
-
pub trait Checkable {
fn check(&self) -> Result<()>;
}