Replies: 2 comments
-
|
We looked at transforming our Tasks and injecting Dash (https://git.kernel.org/pub/scm/utils/dash/dash.git) vs. busybox with the same init container technique as a workaround for managing step failure. Injecting shells, debuggers, etc. via this approach is a pretty powerful technique, I'm just not sure it's a platform vs. document thing. |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
A couple requirements I'd like to see (I'm kinda just repeating your considerations XD)
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I've talked about this a bit with @bobcatfish in the past, and maybe others, but I wanted to float it here before writing up a full TEP (and I wanted to try out GitHub Discussions 😎 )
Tekton could inject a basic shell into steps, similar to how we inject the entrypoint binary, by adding an initContainer that copies a binary into a shared volume under
/tekton/something. This would let steps that don't include a shell to take advantage ofscript:and perform basic actions in the step environment.We've had some TEPs (#302, #182, #342, others) that boil down to "I want to do something shell-ey, and my image doesn't have a shell". This would give us an avenue to solve those cases without reimplementing shell-like features in Tekton itself.
Examples
How
busyboxprovides a shell and basic tools in a single binary inside a multi-arch image (supports amd64, arm, arm64, ppc64le, s390x, plenty of others). Busybox is GPL, so if that's a problem we could find another alternative.Considerations
script:already makes that support difficult, and shell injection can make this even worse. Let's be aware of the tradeoffs at least.If this seems worth exploring, I can propose a TEP.
Beta Was this translation helpful? Give feedback.
All reactions