package dockerfile-opam
Library
Module
Module type
Parameter
Class
Class type
Windows specific Dockerfile utility functions.
val run_cmd : ('a, unit, string, Dockerfile.t) format4 -> 'a
run_cmd fmt
will execute cmd /S /C fmt
.
val run_powershell :
?escape:(string -> string) ->
('a, unit, string, Dockerfile.t) format4 ->
'a
run_powershell fmt
will execute powershell -Command "fmt"
.
val run_vc :
arch:Ocaml_version.arch ->
('a, unit, string, Dockerfile.t) format4 ->
'a
run_vc ~arch fmt
will execute run fmt
with Visual Compiler for ~arch
loaded in the environment.
val run_ocaml_env :
string list ->
('a, unit, string, Dockerfile.t) format4 ->
'a
run_ocaml_env args fmt
will execute fmt
in the environment loaded by ocaml-env exec
with args
.
val sanitize_reg_path : unit -> Dockerfile.t
sanitize_reg_path ()
adds the command necessary to remove a trailing backslash from the PATH
value stored in the registry and must be called before any further manipulation of this variable is done in the Dockerfile. The following error is raised if PATH
isn't sanitized.
/usr/bin/bash: -c: line 0: unexpected EOF while looking for matching `"' /usr/bin/bash: -c: line 1: syntax error: unexpected end of file
val install_vc_redist :
?vs_version:string ->
?arch:Ocaml_version.arch ->
unit ->
Dockerfile.t
Install Microsoft Visual C++ Redistributable.
val install_visual_studio_build_tools :
?vs_version:string ->
string list ->
Dockerfile.t
Install Visual Studio Build Tools components.
val ocaml_for_windows_package_exn :
switch:Ocaml_version.t ->
port:[ `Mingw | `Msvc ] ->
arch:Ocaml_version.arch ->
string * string
ocaml_for_windows_variant ~port ~arch
returns the (package_name, package_version)
of the OCaml compiler package in OCaml for Windows, if applicable.
val remove_system_attribute : ?recurse:bool -> string -> Dockerfile.t
Remove the system attribute on a path. Might be useful to copy data across images when building Docker images.
val header :
?alias:string ->
override_tag:string option ->
Distro.t ->
Dockerfile.t
A Dockerfile header for multi-staged builds.
module Cygwin : sig ... end
Rules for Cygwin-based installation.
module Winget : sig ... end
Rules for winget installation.