feat: Add multi-arch support, update run-image, and streamline build process#97
Conversation
There was a problem hiding this comment.
Thanks Salim this looks really nice. I have 2 questions just so I understand why we are making some of the changes.
Also we should probably also be running the tests on arm runners just to be safe. But this is for a followup in a spearate PR at some other time.
| [[requires]] | ||
| name = "tini" | ||
|
|
||
| [requires.metadata] | ||
| launch = true | ||
|
|
There was a problem hiding this comment.
question: why remove this? If it is already there I think then it won't be installed. I think with the changes you have made with this and by adding tini to the run image then you make the buildpacks only work with our run image. I was hoping we can keep things as general as possible.
There was a problem hiding this comment.
tini is not multi-arch in paketo's buildpack. I could make my own tini buildpack instead if it's any useful
41865f2 to
f0d0556
Compare
|
quick note : the tests can't pass because the run image has changed and that the change is not yet reflected in the registry. See #105 |
| @@ -1,8 +1,10 @@ | |||
| ARG base_image=index.docker.io/paketobuildpacks/run-jammy-full:latest | |||
| ARG base_image=index.docker.io/paketobuildpacks/ubuntu-noble-run:0.0.38 | |||
| FROM ${base_image} | |||
SalimKayal
left a comment
There was a problem hiding this comment.
I am fixing the tests and version change scripts. I will re-draft this pr
| @@ -1,8 +1,10 @@ | |||
| ARG base_image=index.docker.io/paketobuildpacks/run-jammy-full:latest | |||
| ARG base_image=index.docker.io/paketobuildpacks/ubuntu-noble-run:0.0.38 | |||
| FROM ${base_image} | |||
|
Any chance we could separate out the multi-arch part from the regular buildpack dependency update here? So we can release that and push it out with the next renku release? Either that or we can merge #101 with the fix for vscodium misbehaving. |
Co-authored-by: Flora Thiebaut <flora.thiebaut@sdsc.ethz.ch>
If I remember correctly there was a problem of library mismatch with the slurm executables that are mounted by the cscs within images. imho we can merge #101 with the versions updated to the latest ones ? |
Would you please re-review this ?
This pull request introduces several enhancements to the buildpacks, builder, and run image:
linux/arm64targets for the buildpacks, allowing them to be built and run on ARM64 architectures. The publishing scripts (publish_builder.sh,publish_buildpack.sh) have also been updated to remove the explicit--target "linux/amd64"flag, which should allowpackto build for all supported targets by default.run-image/Dockerfilehas been updated frompaketobuildpacks/run-jammy-full:latesttopaketobuildpacks/run-jammy-full:0.1.99.wgetandtinihave been added to theapt-get installcommands in therun-image/Dockerfilefor broader utility.userdelcommand ((userdel $(getent passwd ${user_id}|cut -d: -f1) || true)) was added beforegroupaddanduseraddto ensure cleaner user management during image creation.tinidependency has been removed from the[[requires]]section inbuildpacks/ttyd/bin/detect, astiniis now universally installed in therun-image/Dockerfile.These changes aim to improve platform compatibility, update core components, and streamline the overall build and packaging process.