tektoncd/pipeline

Missing self-contained JSON Schema for Tekton resource validation

Open

#8,983 opened on Aug 20, 2025

View on GitHub
 (6 comments) (0 reactions) (1 assignee)Go (1,943 forks)auto 404
help wanted

Repository metrics

Stars
 (9,013 stars)
PR merge metrics
 (PR metrics pending)

Description

Issue Summary

No reliable JSON to validate tekton resources.

Tekton currently includes a swagger.json in the pipeline repo, but it is not self-contained (depends on external Kubernetes schemas).

There is no JSON schema published to JSON Schema Store and existing IDE plugins (like vscode-tekton) only support a subset of CRDs This makes it hard for users to get YAML validation for Tekton resources (Pipeline, Task, PipelineRun, TaskRun, StepAction, CustomRun, etc.) in editors like VS Code.

What needs to be done possibly

  • Generate a bundled JSON schema from Tekton CRDs (resolve all external references so it’s self-contained).
  • Publish the schema files per release in the Tekton repo (e.g. schema/v1/pipeline.json).
  • Provide a stable URL for each version (e.g. https://tekton.dev/schema/v1/pipeline.json).
  • (Optional) Contribute the Tekton schema to schemastore.org, so IDEs auto-detect Tekton YAML.

Acceptance Criteria

  • Users can configure VS Code with yaml.schemas pointing to Tekton’s published JSON schema.
  • Schema covers all supported CRDs in v1.
  • Schema is versioned alongside Tekton releases.

Why this helps

Gives Tekton users native IDE validation without runtime trial/error. Improves developer experience and reduces YAML misconfiguration errors. Creates a single authoritative schema for use in IDEs.

Contributor guide