Skip to content

Commit

Permalink
engine: added bindings in singularity invocations
Browse files Browse the repository at this point in the history
  • Loading branch information
pveber committed May 10, 2020
1 parent e4d5c9e commit f71a9b8
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion lib/engine/shell_command.ml
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,18 @@ let dest_mount env dck_env =
~host_paths:Filename.[ dirname env.dest ]
~container_paths:Filename.[ dirname dck_env.dest ]

let singularity_mounts (env : Execution_env.t) cmd =
let deps =
Command.deps cmd
|> List.concat_map ~f:(
function
| Execution_env.Path p -> [ Db.path env.db p ]
| Path_list pl -> List.map pl.elts ~f:(Db.path env.db)
| String _ -> []
)
in
Db.build_dir env.db :: deps
|> String.concat ~sep:","

let command_path_deps cmd =
Command.deps cmd
Expand Down Expand Up @@ -149,7 +161,8 @@ let rec string_of_command env =
| `Singularity_container img ->
let env = Execution_env.singularize env in
sprintf
"singularity exec %s bash -c '%s'"
"singularity exec --no-home -B %s %s bash -c '%s'"
(singularity_mounts env cmd)
(Db.singularity_image env.Execution_env.db img)
(string_of_command env cmd)

Expand Down

0 comments on commit f71a9b8

Please sign in to comment.