builder-web/lib/model.mli

107 lines
4.9 KiB
OCaml
Raw Permalink Normal View History

2021-01-21 16:51:58 +00:00
type error = [ Caqti_error.call_or_retrieve | `Not_found | `File_error of Fpath.t | `Msg of string ]
2020-12-02 13:33:15 +00:00
val pp_error : Format.formatter -> error -> unit
2022-07-15 09:13:11 +00:00
val not_found : 'a option -> ('a, [> `Not_found ]) result Lwt.t
2021-03-24 13:49:23 +00:00
val staging : Fpath.t -> Fpath.t
2023-09-14 08:58:09 +00:00
val artifact_path : Builder_db.file -> Fpath.t
2021-03-24 13:49:23 +00:00
val cleanup_staging : Fpath.t -> Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
(unit, [> `Msg of string ]) result Lwt.t
2021-03-24 13:49:23 +00:00
2021-06-05 06:13:46 +00:00
val build_artifact : Uuidm.t -> Fpath.t -> Caqti_lwt.connection ->
(Builder_db.file, [> error ]) result Lwt.t
val build_artifact_by_id : [`build_artifact] Builder_db.id -> Caqti_lwt.connection ->
(Builder_db.file, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-06-05 06:13:46 +00:00
val build_artifact_data : Fpath.t -> Builder_db.file ->
(string, [> error ]) result Lwt.t
val build_artifacts : [`build] Builder_db.id -> Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
(Builder_db.file list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2020-12-02 13:33:15 +00:00
val solo5_manifest : Fpath.t -> Builder_db.file -> Solo5_elftool.mft option
2021-11-08 10:55:11 +00:00
val platforms_of_job : [`job] Builder_db.id -> Caqti_lwt.connection ->
(string list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val build : Uuidm.t -> Caqti_lwt.connection ->
([`build] Builder_db.id * Builder_db.Build.t, [> error ]) result Lwt.t
2021-11-08 10:55:11 +00:00
val build_with_main_binary : [`job] Builder_db.id -> string -> Caqti_lwt.connection ->
((Builder_db.Build.t * Builder_db.file) option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val build_hash : string -> Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
((string * Builder_db.Build.t) option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val build_exists : Uuidm.t -> Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
(bool, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-11-08 10:55:11 +00:00
val latest_successful_build_uuid : [`job] Builder_db.id -> string option -> Caqti_lwt.connection ->
(Uuidm.t option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-06-02 12:23:40 +00:00
val latest_successful_build : [`job] Builder_db.id -> string option -> Caqti_lwt.connection ->
(Builder_db.Build.t option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-11-08 10:55:11 +00:00
val previous_successful_build_different_output : [`build] Builder_db.id -> Caqti_lwt.connection ->
(Builder_db.Build.t option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val next_successful_build_different_output : [`build] Builder_db.id -> Caqti_lwt.connection ->
(Builder_db.Build.t option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val failed_builds : start:int -> count:int -> string option -> Caqti_lwt.connection ->
((string * Builder_db.Build.t) list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-11-17 14:02:04 +00:00
val builds_with_different_input_and_same_main_binary : [`build] Builder_db.id -> Caqti_lwt.connection ->
2021-08-31 11:59:45 +00:00
(Builder_db.Build.t list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val builds_with_same_input_and_same_main_binary : [`build] Builder_db.id -> Caqti_lwt.connection ->
2021-08-31 11:59:45 +00:00
(Builder_db.Build.t list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val builds_with_same_input_and_different_main_binary : [`build] Builder_db.id -> Caqti_lwt.connection ->
2021-08-31 11:59:45 +00:00
(Builder_db.Build.t list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val build_console_by_uuid : Fpath.t -> Uuidm.t -> Caqti_lwt.connection ->
(string, [> error ]) result Lwt.t
val build_script_by_uuid : Fpath.t -> Uuidm.t -> Caqti_lwt.connection ->
(string, [> error ]) result Lwt.t
val readme : string -> Caqti_lwt.connection ->
(string option, [> error ]) result Lwt.t
val job_and_readme : string -> Caqti_lwt.connection ->
2021-11-08 10:55:11 +00:00
([`job] Builder_db.id * string option, [> error ]) result Lwt.t
val builds_grouped_by_output : [`job] Builder_db.id -> string option -> Caqti_lwt.connection ->
((Builder_db.Build.t * Builder_db.file option) list, [> error ]) result Lwt.t
val builds_grouped_by_output_with_failed : [`job] Builder_db.id -> string option -> Caqti_lwt.connection ->
((Builder_db.Build.t * Builder_db.file option) list, [> error ]) result Lwt.t
val job_id : string -> Caqti_lwt.connection ->
([`job] Builder_db.id option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val jobs_with_section_synopsis : Caqti_lwt.connection ->
(([`job] Builder_db.id * string * string option * string option) list, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val job_name : [`job] Builder_db.id -> Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
(string, [> Caqti_error.call_or_retrieve ]) result Lwt.t
2021-02-15 10:48:10 +00:00
val user : string -> Caqti_lwt.connection ->
(([`user] Builder_db.id * Builder_web_auth.scrypt Builder_web_auth.user_info) option, [> Caqti_error.call_or_retrieve ]) result Lwt.t
val authorized : [`user] Builder_db.id -> string -> Caqti_lwt.connection -> (unit, [> Caqti_error.call_or_retrieve | `Msg of string ]) result Lwt.t
val add_build :
datadir:Fpath.t ->
cachedir:Fpath.t ->
configdir:Fpath.t ->
[`user] Builder_db.id ->
(Builder.script_job * Uuidm.t * (int * string) list * Ptime.t * Ptime.t *
Builder.execution_result * (Fpath.t * string) list) ->
Caqti_lwt.connection ->
2021-06-01 08:33:35 +00:00
(unit, [> Caqti_error.call_or_retrieve | `Msg of string ]) result Lwt.t