package current
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ed312cab4ce8d13b9547ee2f935a6954f1d5211de1c22d44d85baaeb9f5fca9d
sha512=c2981a2c7f05bd6f235662b74ee3a679cc395be3d2cca808fac3dc562d6307e8bfe05efff40f42fa4738443cc2fe13929bab9d815c43d741950e5e0e1e6da7a6
doc/current.cache/Current_cache/Generic/argument-1-Op/index.html
Parameter Generic.Op
include S.OPERATION
A short and unique name for this operation, used as a filename component and database key. e.g. "docker-build"
module Key : S.WITH_DIGEST
The id, Key.t
pair uniquely identifies the operation.
module Value : S.WITH_DIGEST
A second input value, which is not part of the key (so there can be only one value for any key at one time). For outputs, this is used to hold the value to which the output should be set. For builds, non-essential inputs can be placed here instead of in the key so that the old outcome can be latched for minor changes. For example, when testing a Git commit the commit to test would be the key, but the latest version of the test platform might be the value.
module Outcome : S.WITH_MARSHAL
The output of the pipeline stage.
val run :
t ->
Current.Job.t ->
Key.t ->
Value.t ->
Outcome.t Current.or_error Lwt.t
run t j k v
performs the operation. Call Job.start j
once any required resources have been acquired. Log messages can be written to j
.
This affects what happens if we're in the process of outputting a value and then we decide to output a different value instead. If true
, the old operation will be cancelled immediately. If false
, the old operation will run to completion first.