-
Notifications
You must be signed in to change notification settings - Fork 112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Run image extension does not install RPMs that are already installed in the builder #1285
Comments
@yters looking at your code above, I think the issue is that you are trying to extend the run image in the context of the build image. So in this snippet:
Where You may be interested in this (soon to be implemented) RFC which would make it easier to share things across the builder image and the run image: buildpacks/rfcs#301 |
Thanks for the response. The
If I were to use the |
Ah yes, you are right. In the case of pack we download the lifecycle layer from the "lifecycle image" and append that to the run image before performing run image extension. You could accomplish something similar with volume mounts for local testing. |
Thanks, that's a good idea. I'll test it out, and close this ticket if successful. |
Any further update here? Can we close this issue? |
Summary
When the run image
run.Dockerfile
is extended toRUN dnf install
RPMs, if the RPM is already in the builder image then it is not installed in the run image. This is a problem since the run image does not have access to the RPMs in the builder image.Reproduction
Steps
<path>/build-base-python3.11:debug
.<path>/run-base:debug
<path>/extension-dnf-install:debug
.extension.toml
generate/run.Dockerfile
hello-word
example buildpack, named<path>/buildpack-hello-world:debug
.builder.toml
, named<path>/builder-python3.11:debug
.builder-python3.11:debug
image to create an image. Create the following files in the current directory.config/run.toml
source/hello.sh
Then, run the following commands to build a container.
You'll see a result like this.
Current behavior
In the
extend
phase when it comes time to installpython3.11
it will say:despite
python3.11
not being installed in the run image.Expected behavior
I expect
python3.11
to be installed in the run image since it is not installed in the base run image.Context
lifecycle version
Lifecycle version is 0.17.2.
platform version(s)
The text was updated successfully, but these errors were encountered: