Skip to content

CLI: rethink step validation #1407

@josephjclark

Description

@josephjclark

The CLI has logic to validate the structure of a workflow.

The idea here is that if a user mis-types a key like "adapatator", the CLI will catch the error and flag them.

What with all the focus on sync and portability, it's way more likely that a workflow will be machine generated now, and so won't have those typos.

But if the app adds a new key to the workflow, the CLI will refuse to execute it - even if it's a step it doesn't care about.

I would like to think about the following options:

  • Use the common portability spec schema to validate against. The app does have a JSON schema. If the workflow or owning project has aversion, use that, else use latest. This relates to Better coupling of portability spec with kit lightning#4734
  • Add a --validate flag which will validate a workflow for you, if you want it (a bit like a circle CI yaml linter app)
  • only validate keys that the CLI cares about, and ignore the rest

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    New Issues

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions