[FR] Pipeline-level sidecars #5112
Labels
kind/feature
Categorizes issue or PR as related to a new feature.
lifecycle/frozen
Indicates that an issue or PR should not be auto-closed due to staleness.
Feature request
The ability to create sidecars that can be used by multiple Tasks in a Pipeline. (Note: this is different from #4235, which requests allowing a Task's sidecar to be defined in a Pipeline Task.) This is similar to the "daemon containers" feature in Argo Workflows.
My guess is we would implement this as separate pods that TaskRun pods can communicate with via the network (rather than shared volumes mounted onto each pod).
Use case
Use case #1: Docker sidecar
A user might want to run different Tasks that all use a docker daemon; for example,
docker build
followed by adocker exec python -m pytest
. Today, these units of functionality tend to be squished into one Task (such as the "build and push" that occurs in most catalog builder tasks) or an image can be built and pushed in one task, and then downloaded from an artifact registry and used in a subsequent task.Use case #2: integration tests
This sidecar or sidecars could set up test instances of an application and/or its DB, and testing tasks could seed it with test data for integration tests. I don't have a great example though for why someone might prefer to connect to the same test DB in multiple Tasks.
The text was updated successfully, but these errors were encountered: