Skip to content

[FEATURE] Use PipelineRuns for Builds (experimental) #1968

@adambkaplan

Description

@adambkaplan

Is there an existing feature request for this?

  • I have searched the existing feature requests

Is your feature request related to a problem or use-case? Please describe.

Multi-arch container builds will need to execute individual image builds in parallel and/or on different nodes. We cannot do multi-arch builds in a single Pod/TaskRun without the use of emulation or cross-compilation, which drastically slows down build execution and risks introduction of bugs from the emulated compiler toolchain.

Describe the solution that you would like.

Builds will need to use PipelineRuns for execution if we want to support multi-arch container builds as a feature (see SHIP-0043).

As a first step, we need to refactor the current codebase so the BuildRun controller code less coupled to the TaskRun execution. We can then introduce a PipelineRun flavor of execution, which can be optionally enabled through a feature flag/environment variable.

Describe alternatives you have considered.

N/A

Anything else?

This refactor work could also provide a foundation for using a different Kubernetes object for build execution, such as an Argo Workflow. See #1615

Metadata

Metadata

Assignees

Labels

kind/featureCategorizes issue or PR as related to a new feature.

Type

No type

Projects

Status

In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions