package yocaml_git
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=967db87e63b7da8c3f127df5461eb86d0da9d41ef20e1957beacec9df5ec760c
sha512=930d98d22f19232b498a399e86c88a8ec87d49886eaeb1c296ff48b6d7f1da6c420c53472028410ef83d1914e8268924636353378b5e99bf0e93783769519c9f
doc/yocaml_git/Yocaml_git/index.html
Module Yocaml_gitSource
The Git Runtime for YOCaml.
Builds a runtime based on a source runtime generating artefacts in a Git database, which can then be served by a Unikernel (ie: unipi).
val run :
(module Required.SOURCE) ->
context:[ `SSH ] ->
?author:string ->
?email:string ->
?message:string ->
remote:string ->
?level:Yocaml_runtime.Log.level ->
?custom_error_handler:
(Format.formatter -> Yocaml.Data.Validation.custom_error -> unit) ->
(unit -> unit Yocaml.Eff.t) ->
(unit, [> `Msg of string ]) result Lwt.tExecutes a YOCaml program using a given Runtime for processing with Source and using a Git Store as compilation target. What the YOCaml progam generates is compared with what you can view from the given remote repository and updated with a new Git commit. Then, we push these changes to the remote repository.
ctx contains multiple informations needed to initiate a communication with the given remote repository. See Git_unix.ctx for more details.
Building a source
Since Git is only the target, we need to provision the source, with a function capable of transforming the type of the source runtime to lwt by implementing a lift function.
module Required : sig ... endInterfaces required.
Allows the creation of a source where the type of the source runtime is the identity (type ‘a t = ’a), as for the Unix runtime (for example).
module From_identity
(Source : Yocaml.Required.RUNTIME with type 'a t = 'a) :
Required.SOURCE with type 'a t = 'a Source.tDescribes a natural transformation allowing a Yocaml program of type ‘a t to be transformed into a program of type ’a Lwt.t (so that it can be used via Yocaml_git.