why tekton execution unit is pod, not a container?

172 Views Asked by At

Currently I am using Jenkins on kubernetes and wanted to migrate to tekton because trying achieve CI steps as a code (similar to Helm chart for CD steps). Just wondering about Tekton architecture -

why every task creates different pod rather than creating different containers in a single pod. Creating multiples pod leads resources locking as every pod will hold cpus/memory (default) till pod receives SIGTERM.

1

There are 1 best solutions below

0
On BEST ANSWER

Just wondering about Tekton architecture - why every task creates different pod rather than creating different containers in a single pod?

This is a design choice that was made early in the project. They want Tasks to be a reusable component with, e.g. parameters and results.

But you are right that it leads to problems when it comes to resource allocation. There are on-going work for executing a whole Pipeline within a single Pod, see Tekton Enhancement Proposal 44