pdtpartners / nix-snapshotter

Brings native understanding of Nix packages to containerd
MIT License
566 stars 15 forks source link

Fix mountpoints for nix store paths that are files #128

Closed elpdt852 closed 7 months ago

elpdt852 commented 8 months ago

Fix #104 Fix #127

Summary

Essentially I misunderstood that bind mounts for files needs to have an empty file as mountpoint instead of an empty base directory. This is now covered by unit & integration tests.

The integration tests were also refactored with newer patterns for handling rootless tests, and coverage for push/pull/load of nix-snapshotter & dockerTools (upstream nixpkgs) images. Turns out there's a bug in containerd which is fixed by: https://github.com/containerd/containerd/pull/9864 and currently maintained as patch in this repository. I've also opened a backport to release/1.7 here: https://github.com/containerd/containerd/pull/9989

elpdt852 commented 7 months ago

@RobbieBuxton @gbpdt This is ready for review now.