module Engine:sig
..end
type
t
val with_engine : configuration:Ketrew.Configuration.engine ->
(engine:t ->
(unit,
[> `Database of Trakeva.Error.t
| `Database_unavailable of Ketrew_pure.Target.id
| `Dyn_plugin of [> `Dynlink_error of Dynlink.error | `Findlib of exn ]
| `Failure of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ]
as 'merge_error)
Unix_io.Deferred_result.t) ->
(unit, 'merge_error) Unix_io.Deferred_result.t
engine.t
, run the function passed as argument, and properly dispose of it.val load : configuration:Ketrew.Configuration.engine ->
(t,
[> `Database of Trakeva.Error.t
| `Database_unavailable of string
| `Dyn_plugin of [> `Dynlink_error of Dynlink.error | `Findlib of exn ]
| `Failure of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val unload : t ->
(unit,
[> `Database of Trakeva.Error.t
| `Database_unavailable of Ketrew_pure.Target.id ])
Unix_io.Deferred_result.t
val configuration : t -> Ketrew.Configuration.engine
val add_targets : t ->
Ketrew_pure.Target.t list ->
(unit,
[> `Database of Trakeva.Error.t
| `Database_unavailable of Ketrew_pure.Target.id
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val get_target : t ->
Ketrew_pure.Internal_pervasives.Unique_id.t ->
(Ketrew_pure.Target.t,
[> `Database of Trakeva.Error.t
| `Database_unavailable of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val all_visible_targets : t ->
(Ketrew_pure.Target.t list,
[> `Database of Trakeva.Error.t
| `Database_unavailable of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `IO of
[> `Read_file_exn of string * exn | `Write_file_exn of string * exn ]
| `System of [> `File_info of string ] * [> `Exn of exn ]
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val get_list_of_target_ids : t ->
Ketrew_pure.Protocol.Up_message.target_query ->
(Ketrew_pure.Target.id list,
[> `Database of Trakeva.Error.t
| `Database_unavailable of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
`All
for all the targets visible to the engine.`Not_finished_before _
for the targets that were not finished at a given date.val next_changes : t ->
(Persistent_data.Change.t list, 'a) Unix_io.Deferred_result.t
module Run_automaton:sig
..end
val get_status : t ->
Ketrew_pure.Target.id ->
(Ketrew_pure.Target.State.t,
[> `Database of Trakeva.Error.t
| `Database_unavailable of string
| `Fetching_node of Persistent_data.Error.fetching_node
| `IO of
[> `Read_file_exn of string * exn | `Write_file_exn of string * exn ]
| `System of [> `File_info of string ] * [> `Exn of exn ]
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val kill : t ->
id:Ketrew_pure.Internal_pervasives.Unique_id.t ->
(unit,
[> `Database of [> `Act of Trakeva.Action.t | `Load of string ] * string
| `Database_unavailable of string ])
Unix_io.Deferred_result.t
val restart_target : t ->
Ketrew_pure.Target.id ->
(Ketrew_pure.Target.id,
[> `Database of Trakeva.Error.t
| `Database_unavailable of Ketrew_pure.Target.id
| `Fetching_node of Persistent_data.Error.fetching_node
| `Target of [> `Deserilization of string ] ])
Unix_io.Deferred_result.t
val host_io : t -> Host_io.t