arazzo-step-output-validation
Every step output must have unique name and its value must be a valid runtime expression.
- Applies to
outputs- Selects
$- Function
arazzoStepOutputNamesValidation- Specs
- Arazzo 1.0
- Message
{{error}}
Use it
This rule ships with OpenLint in spectral:arazzo. Extending the ruleset turns it on:
extends: spectral:arazzo
rules:
arazzo-step-output-validation: error # or off, or another severity
Definition
As defined in @openlint/openlint-rulesets. Functions show by name.
arazzo-step-output-validation:
description: >-
Every step output must have unique name and its value must be a valid
runtime expression.
message: '{{error}}'
severity: 0
given: $
then:
function: arazzoStepOutputNamesValidation
About this rule
Every step output must have unique name and its value must be a valid runtime expression.
Then validating the expression the rule checks against known prefixes described in the Arazzo Specification Runtime Expressions. Additionally, if output values use expressions like $workflows.foo.steps.bar, the rule will verify the existence of workflow foo and step bar.