Source file cmd.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
let context_args = function
  | None -> []
  | Some context -> ["--context"; context]

let config_args = function
  | None -> []
  | Some config -> ["--config"; Fpath.to_string config]

let docker ?config ~docker_context args =
  "", Array.of_list ("docker" :: config_args config @ context_args docker_context @ args)

let compose ~docker_context args =
  "", Array.of_list ("docker-compose" :: context_args docker_context @ args)

let login ?config ~docker_context user =
  docker ?config ~docker_context ["login"; "--password-stdin"; "--username"; user]

let pp f (prog, args) =
  if prog <> "" then Fmt.pf f "[%S] " prog;
  Fmt.(list ~sep:sp (quote string)) f (Array.to_list args)