Recipe Language 2.0 Reference¶
This page is generated from the current build’s aggregate JSON Schema. It describes the production recipe language accepted by parsing, execution, and YamVIEW.
See Recipe Language 2 Architecture for parsing, semantic rules, YamVIEW, and runtime construction. Maintainers should also read Maintaining the Recipe Language.
Documents¶
RecipeHeader¶
The first YAML document, identifying a recipe and its entry sequence.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
optional; default |
Recipe-wide error policy. Example: |
|
|
required |
Purpose of the recipe. Example: |
|
|
required |
Recipe-wide variables. Example: |
|
|
required |
Sequence where execution begins. Example: |
|
|
required |
Human-readable recipe name. Example: |
|
|
required |
Version of the recipe language contract. Example: |
|
|
optional; default |
Report file mode. Example: |
|
|
optional; default |
Include the serial number in the report name. Example: |
|
|
optional; default |
Package containing recipe test modules. Example: |
|
|
required |
Version of this recipe. Example: |
Sequence¶
One named executable sequence document.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Purpose of the sequence. Example: |
|
|
required |
Variables local to the sequence. Example: |
|
|
required |
Reserved sequence output metadata. Example: |
|
|
required |
Reserved sequence input metadata. Example: |
|
|
required |
Unique sequence name. Example: |
|
|
required |
Steps run before the main steps. Example: |
|
|
required |
Ordered main steps. Example: |
|
|
required |
Steps run during teardown. Example: |
Nested structures¶
InternalSequenceReference¶
Reference to another sequence in this recipe.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Target sequence name. Example: |
|
|
required |
Reference kind. Example: |
FileDestination¶
Destination used by a file-loading step.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Variable scope. Example: |
|
|
required |
Destination variable name. Example: |
UploadFile¶
One local-to-remote SSH upload pair.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Local file or package resource. Example: |
|
|
required |
Remote destination path. Example: |
Common step fields¶
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
optional; default |
Per-step error policy. Example: |
|
|
optional; default |
Stop on error when policy permits continuation. Example: |
|
|
required |
Purpose of the step. Example: |
|
|
optional; default |
Optional stable step identifier. Example: |
|
|
optional |
Named input sources. Example: |
|
|
optional |
Named verdicts and destinations. Example: |
|
|
optional; default |
Skip execution. Example: |
|
|
required |
Human-readable step name. Example: |
Step definitions¶
PythonModuleStep¶
Calls a method or reads/writes an attribute in a Python module.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Operation performed on the Python module. Example: |
|
|
optional; default |
Method name for method actions. Example: |
|
|
required |
Python module path. Example: |
|
|
required |
Canonical registered step type. Example: |
SSHCloseStep¶
Closes the SSH client stored in recipe globals.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
SSHConnectStep¶
Opens the SSH client stored in recipe globals.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
SSHUploadStep¶
Uploads files through an SSH connection.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Local and remote file pairs to upload. Example: |
|
|
optional; default |
Optional package containing local resources. Example: |
|
|
optional; default |
Optional remote permissions. Example: |
|
|
optional; default |
Skip files whose remote checksum matches. Example: |
|
|
required |
Canonical registered step type. Example: |
SequenceStep¶
Runs another sequence as a step.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Internal sequence reference. Example: |
|
|
required |
Canonical registered step type. Example: |
SerialNumberStep¶
Captures the device serial number.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
UserInteractionStep¶
Displays an operator interaction prompt.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
UserLoadingStep¶
Prompts the operator to select a file.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
optional; default |
Local or global destination for the selected file. Example: |
|
|
required |
Canonical registered step type. Example: |
UserRunMethodStep¶
Optionally runs a Python method after an operator response.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
optional; default |
Optional Python action type. Example: |
|
|
optional; default |
Optional Python method name. Example: |
|
|
optional; default |
Optional Python module path. Example: |
|
|
required |
Canonical registered step type. Example: |
|
|
optional; default |
Operator response that triggers execution. Example: |
UserWriteStep¶
Writes an operator-provided value to a configured destination.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
WaitStep¶
Waits for a non-negative duration in seconds.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Canonical registered step type. Example: |
Input mappings¶
DirectInput¶
Provides a literal value.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
optional; default |
Expand a list into indexed steps. Example: |
|
|
required |
Input source type. Example: |
|
|
required |
Literal input value. Example: |
GlobalInput¶
Reads a recipe-global variable.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Global variable name. Example: |
|
|
required |
Input source type. Example: |
LocalInput¶
Reads a sequence-local variable.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Local variable name. Example: |
|
|
required |
Input source type. Example: |
MethodInput¶
Resolves a method reference for the step.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Input source type. Example: |
|
|
required |
Method reference. Example: |
Output mappings¶
EqualsOutput¶
Passes when the output equals the configured value.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Output mapping type. Example: |
|
|
required |
Expected value. Example: |
GlobalOutput¶
Stores the output in a recipe-global variable.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Global destination variable. Example: |
|
|
required |
Output mapping type. Example: |
ImageOutput¶
Publishes an image output for presentation.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Output mapping type. Example: |
LocalOutput¶
Stores the output in a sequence-local variable.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Local destination variable. Example: |
|
|
required |
Output mapping type. Example: |
PassFailOutput¶
Interprets the output as a pass/fail verdict.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Output mapping type. Example: |
PassthroughOutput¶
Uses the nested result without adding a verdict.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Output mapping type. Example: |
RangeOutput¶
Passes when the output is within an inclusive range.
Field |
Type |
Requirement |
Description and example |
|---|---|---|---|
|
|
required |
Maximum accepted value. Example: |
|
|
required |
Minimum accepted value. Example: |
|
|
required |
Output mapping type. Example: |