tektoncd/pipeline

TEP-0056: Pipelines in Pipelines

Open

#7,166 opened on Sep 29, 2023

View on GitHub
 (4 comments) (2 reactions) (1 assignee)Go (1,943 forks)auto 404
area/epicarea/roadmaphelp wantedkind/featurekind/tep

Repository metrics

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

Description

Summary

Pipelines in Pipelines (PinP) allows users to define and execute Pipelines within Pipelines, alongside Tasks and Custom Tasks. A PipelineTask can reference a child Pipeline using pipelineRef or embed one using pipelineSpec. The child Pipeline is executed as a child PipelineRun owned by the parent.

Scope

Features required for beta readiness per TEP-0056:

  • Ground work and PipelineSpec (API types, validation, embedded pipeline execution)
  • PipelineRef (reference by name or via resolvers, cycle detection)
  • Results propagation from child Pipelines (including When expression support)
  • Execution status for Finally Tasks
  • Timeout propagation to child PipelineRuns
  • Fine-grained timeout overrides for child PipelineRuns via pipelineRunSpecs
  • Retries for PipelineTasks with Pipelines
  • Matrix fan-out of PipelineRef
  • Workspace validation at parent PipelineRun
  • ServiceAccount propagation test coverage

Resources

Contributor guide