# Functions
From creates []GetterFunc from a mix of getters or bare values.
Input creates a getter returning inputs[index] value, or error if index is out of range.
Inputs creates a getter returning array of Result.Value (or Result.Error where not nil).
JSONWithVarExprs creates a getter that unmarshals jsExpr string as JSON, and interpolates all variables expressions found in jsExpr from Vars.
NewJSONPathParam returns a new JSONPathParam using the given separator, or the default if empty.
NewKeypathFromString creates a new Keypath from the given string.
NewMaybeBigIntParam creates a new instance of MaybeBigIntParam.
NewMaybeInt32Param creates new instance of MaybeInt32Param.
NewMaybeUint64Param creates new instance of MaybeUint64Param.
NewVarsFrom creates new Vars from the given map.
NonemptyString creates a getter to ensure the string is non-empty.
ValidDurationInSeconds creates a getter to ensure the string is a valid duration and return duration in seconds.
VarExpr creates a getter interpolating expr value using the given Vars.
# Constants
KeepersObservationSource is the same for all keeper jobs and it is not persisted in DB.
RunStatusCompleted is used for when a run has successfully completed execution.
RunStatusErrored is used for when a run has errored and will not complete.
RunStatusRunning is used for when a run is actively being executed.
RunStatusSuspended is used when a run is paused and awaiting further results.
RunStatusUnknown is the when the run status cannot be determined.
Testing only.
# Variables
PromPipelineTaskExecutionTime reports how long each pipeline task took to execute TODO: Make private again after https://app.clubhouse.io/chainlinklabs/story/6065/hook-keeper-up-to-use-tasks-in-the-pipeline.
# Structs
AnyTask picks a value at random from the set of non-errored inputs.
Return types:
bytes.
Return types:
string.
Return types:
string.
Return types:
map[string]interface{} with potential value types: float64 string bool map[string]interface{} []interface{} nil.
ConditionalTask checks if data is false for now this is all we need but in the future we can expand this to handle more general conditional statements.
Return types:
*decimal.Decimal.
When a task panics, we catch the panic and wrap it in an error for reporting to the scheduler.
Return types:
uint64.
Return types:
map[string]interface{} with any geth/abigen value type.
Return types:
map[string]interface{} with any geth/abigen value type.
Return types:
[]byte.
Return types:
[]byte.
Return types:
[]byte.
Return types:
nil.
FailTask is like the Panic task but without all the drama and stack unwinding of a panic.
FinalResult is the result of a Run.
tree fulfills the graph.DirectedGraph interface, which makes it possible for us to `dot.Unmarshal(...)` a DOT string directly into it.
Return types:
bytes.
Return types:
string.
Return types:
string.
Return types:
float64 string bool map[string]interface{} []interface{} nil.
Keypath contains keypath parsed by NewKeypathFromString.
Return types:
*decimal.Decimal.
Return types:
bool.
Look up a field on a map
Return types:
interface{}.
Return types:
string.
Return types:
*decimal.Decimal.
Return types:
*decimal.Decimal.
Return types:
map[string]interface{}.
go-ethereum's abi.Method doesn't implement json.Marshal for Type, but otherwise would have worked fine, in any case we only care about these...
Return types:
map[string]interface{}{ "results": []interface{} containing any other type other pipeline tasks can return "occurrences": (int64) }.
Return types:
*decimal.Decimal.
ObjectParam represents a kind of any type that could be used by the memo task.
Result is the result of a TaskRun.
RunInfo contains additional information about the finished TaskRun.
Return types:
*decimal.Decimal.
Wraps the input Task for the given dependent task along with a bool variable PropagateResult, which Indicates whether result of InputTask should be propagated to its dependent task.
TaskRunResult describes the result of a task run, suitable for database update or insert.
Return types:
string.
VRFTaskV2Plus is identical to VRFTaskV2 except that it uses the V2Plus VRF request commitment, which includes a boolean indicating whether native or link payment was used.
# Type aliases
GetterFunc is a function that either returns a value or an error.
MapParam accepts maps or JSON-encoded strings.
RunStatus represents the status of a run.
TaskRunResults represents a collection of results for all task runs for one pipeline run.