Skip to main content

Module output_refs

Module output_refs 

Source
Expand description

Task output reference processing.

Handles detection and resolution of #TaskOutputRef structs in task JSON. These structs are produced by CUE when tasks reference another task’s stdout, stderr, or exitCode fields.

§Processing Pipeline

  1. CUE evaluates tasks.tmpdir.stdout{ cuenvOutputRef: true, cuenvTask: "tmpdir", cuenvOutput: "stdout" }
  2. process_output_refs walks raw JSON, replaces ref objects with placeholder strings
  3. Task deserialization sees plain strings in args/env (Vec<String>)
  4. OutputRefResolver::resolve replaces placeholder strings with actual values before execution

Structs§

OutputRefResolver
Context for resolving task output reference placeholders at runtime.
TaskOutputRef
A parsed task output reference.

Enums§

TaskOutputField
Which output field of a task is being referenced.

Functions§

has_output_refs
Returns true if any string in args or env contains an output ref placeholder.
parse_passthrough
Parse a passthrough placeholder string, returning the host var name.
process_output_refs
Process task output references in raw JSON before deserialization.

Type Aliases§

OutputRefDep
A dependency pair: (task_that_references, task_being_referenced).