Skip to content

Latest commit

 

History

History
81 lines (64 loc) · 4.34 KB

roadmap.md

File metadata and controls

81 lines (64 loc) · 4.34 KB

Tekton Pipelines 2020 Roadmap

This is an incomplete list of work we hope to accomplish in 2020.

Highlights:

"Feature complete"

Today Tekton can do basically anything you want it to, but there are a few features still missing or not quite where we want them. Once we have these features, folks should be able to use Tekton for all of their CI/CD use cases.

Deciding what to support and what to expect users to write into their own Tasks is a constant balancing act, and we want to be careful and deliberate with what we include.

Features we don't have or aren't yet 100% satisfied with for "feature complete" Tekton:

Beta for all components

In early 2020 we will have our first beta release, however it will be only for a subset of Pipeline's resources. After the intial beta release, we would like to get the rest of the resources to beta as well.

Task Interfaces and PipelineResources

In alpha Tekton Pipelines, PipelineResources were the interface between Tasks in a Pipeline: they were used for sharing typed data and variables between Tasks. This is being revisited and the feature has been deconstructed into:

  • workspaces - A way for a Task to declare data it needs and provides without needing to know about the underlying mechanism used
  • Task results (aka "output params") - A way for a Task to provide values as outputs which can be provided to downstream Tasks

After adding these features we will once again reconsider the design of PipelineResources and decide what additional features, if any, we need.

We will also need to decide how to continue to release and maintain the code that is used to build the images used by the existing PipelineResources: https://github.com/tektoncd/pipeline/tree/master/cmd.

SCM support

SCM support in 2019 was handled by the PullRequest Resource. However we are revisting PipelineResources, and likely this PipelineResource will become one or more Tasks in the catalog instead. Once that happens, we will need to make decisions about how to release and maintain the supporting code.