Currently, the provider does a runCacheProbe
and if there is any error (either cache miss or missing devcontainer.json), it returns the builder image. For a cache miss this is good and fine, but if the devcontainer file is missing it would be nice to avoid the overhead of running envbuilder when starting a workspace container/pod.
All envbuilder does when there is no devcontainer file is (from what I can see) make a minimal dockerfile that is just FROM <fallback image>
. But for large or many-layered images this is still slow because kaniko has to unpack all the layers. And this will happen every time because the provider always reports a "cache miss".
I suggest that the provider should instead act differently based on what kind of error it gets from runCacheProbe
.