summaryrefslogtreecommitdiffstats
path: root/crates/runner/src/task.rs
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2021-10-26 21:31:18 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2021-10-26 22:12:32 +0200
commit800383146af49b4adfd6ecb6d32c6eef4cb27763 (patch)
tree1cf35acea25d86d7a14a8a03625c5cdfc347e614 /crates/runner/src/task.rs
parentae79ea1276f56872da590dd611c7b12b4db67c27 (diff)
downloadrebel-800383146af49b4adfd6ecb6d32c6eef4cb27763.tar
rebel-800383146af49b4adfd6ecb6d32c6eef4cb27763.zip
runner: pass jobserver to task handler as reference
Some code simplification.
Diffstat (limited to 'crates/runner/src/task.rs')
-rw-r--r--crates/runner/src/task.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/runner/src/task.rs b/crates/runner/src/task.rs
index ff27399..6c52be2 100644
--- a/crates/runner/src/task.rs
+++ b/crates/runner/src/task.rs
@@ -237,7 +237,7 @@ fn collect_outputs(input_hash: &InputHash, task: &Task) -> Result<HashMap<String
Ok(ret)
}
-fn run_task(input_hash: &InputHash, task: &Task, mut jobserver: Jobserver) -> Result<()> {
+fn run_task(input_hash: &InputHash, task: &Task, jobserver: &mut Jobserver) -> Result<()> {
let _workdir_mount = init_task(input_hash, task).context("Failed to initialize task")?;
unpack_dependencies(input_hash, task).context("Failed to unpack dependencies")?;
let _rootfs_mount = init_task_rootfs(input_hash).context("Failed to initialize task rootfs")?;
@@ -392,7 +392,7 @@ fn move_layer(input_hash: &InputHash, hash: &Option<LayerHash>) -> Result<()> {
fn run_and_hash_task(
input_hash: &InputHash,
task: &Task,
- jobserver: Jobserver,
+ jobserver: &mut Jobserver,
) -> Result<TaskOutput> {
run_task(input_hash, task, jobserver)?;
@@ -430,7 +430,7 @@ fn save_cached(input_hash: &InputHash, output: &TaskOutput) -> Result<()> {
Ok(())
}
-pub fn handle(task: Task, jobserver: Jobserver) -> Result<TaskOutput> {
+pub fn handle(task: Task, jobserver: &mut Jobserver) -> Result<TaskOutput> {
let input_hash = input_hash(&task);
// TODO: We should not hold a job token while waiting on the lock