obuilder-spec
Obuilder_spec
type copy = {
from : [ `Context | `Build of string ];
src : string list;
dst : string;
exclude : string list;
}
val sexp_of_copy : copy -> Sexplib0.Sexp.t
val copy_of_sexp : Sexplib0.Sexp.t -> copy
type unix_user = {
uid : int;
gid : int;
val sexp_of_unix_user : unix_user -> Sexplib0.Sexp.t
val unix_user_of_sexp : Sexplib0.Sexp.t -> unix_user
type windows_user = {
name : string;
val sexp_of_windows_user : windows_user -> Sexplib0.Sexp.t
val windows_user_of_sexp : Sexplib0.Sexp.t -> windows_user
type user = [
| `Unix of unix_user
| `Windows of windows_user
]
val sexp_of_user : user -> Sexplib0.Sexp.t
val user_of_sexp : Sexplib0.Sexp.t -> user
val __user_of_sexp__ : Sexplib0.Sexp.t -> user
type run = {
cache : Cache.t list;
network : string list;
secrets : Secret.t list;
shell : string;
val sexp_of_run : run -> Sexplib0.Sexp.t
val run_of_sexp : Sexplib0.Sexp.t -> run
type op = [
| `Comment of string
| `Workdir of string
| `Shell of string list
| `Run of run
| `Copy of copy
| `User of user
| `Env of string * string
val sexp_of_op : op -> Sexplib0.Sexp.t
val op_of_sexp : Sexplib0.Sexp.t -> op
val __op_of_sexp__ : Sexplib0.Sexp.t -> op
type t = private {
child_builds : (string * t) list;
from : string;
ops : op list;
include Sexplib0.Sexpable.S with type t := t
val t_of_sexp : Sexplib0.Sexp.t -> t
val sexp_of_t : t -> Sexplib0.Sexp.t
val stage : ?child_builds:(string * t) list -> from:string -> op list -> t
val comment : ('a, unit, string, op) format4 -> 'a
val workdir : string -> op
val shell : string list -> op
val run : ?cache:Cache.t list -> ?network:string list -> ?secrets:Secret.t list -> ('a, unit, string, op) format4 -> 'a
val copy : ?from:[ `Context | `Build of string ] -> ?exclude:string list -> string list -> dst:string -> op
val env : string -> string -> op
val user_unix : uid:int -> gid:int -> op
val user_windows : name:string -> op
val root_unix : [ `Unix of unix_user ]
val root_windows : [ `Windows of windows_user ]
val root : user
val pp : t Fmt.t
pp f s is similar to Sexplib.Sexp.pp_hum f (sexp_of_t s), but attempts to improve the layout slightly by putting each operation on its own line.
pp f s
Sexplib.Sexp.pp_hum f (sexp_of_t s)
val pp_op : op Fmt.t
pp_op formats op as an S-expression.
pp_op
op
module Cache : sig ... end
module Secret : sig ... end
module Docker : sig ... end