Extract intermediate stages to filesystem #266
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Right now, when hitting the end of an intermediary stage kaniko will go through all future stages to gather dependencies on the current stage. It saves these dependencies in the
/kaniko/buildcontexts
directory to use during later builds.This bug occurred because one of the future stages depended on a stage that hadn't been built yet, so the tarball for that stage didn't exist yet.
For example:
would break because after building stage 0, kaniko would try to get the dependencies for stage 2 but the
second
stage image doesn't exist yet.I removed getting dependencies ahead of time altogether and instead save the stage tarball and extract it to fs if there are any references to it later in the Dockerfile.
Should fix #233