Skip to content
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

Fix mountpoints for nix store paths that are files #128

Merged
merged 1 commit into from
Mar 24, 2024

Conversation

elpdt852
Copy link
Collaborator

@elpdt852 elpdt852 commented Feb 23, 2024

Fix #104
Fix #127

Summary

  • Fix mountpoints for nix store paths that are files
  • Refactor & add additional integration test coverage
  • Pin containerd to ensure compatible version
  • Add patch to enable loading compressed archives, i.e. loading images built from upstream pkgs.dockerTools.buildImage
  • Switch to nix-store to remove experimental "nix-command" dependency

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: containerd/containerd#9864 and currently maintained as patch in this repository. I've also opened a backport to release/1.7 here: containerd/containerd#9989

@elpdt852 elpdt852 added the ok-to-test Runs NixOS tests label Feb 23, 2024
@elpdt852 elpdt852 force-pushed the fix/file-store-path branch 3 times, most recently from 203d28d to 8fa484d Compare February 24, 2024 13:32
@elpdt852 elpdt852 force-pushed the fix/file-store-path branch from 8fa484d to ef8459a Compare March 23, 2024 23:51
- Refactor & add additional integration test coverage
- Pin containerd to ensure compatible version
- Add patch to enable loading compressed archives, i.e. loading images built
  from upstream `pkgs.dockerTools.buildImage`
- Switch to nix-store to remove experimental "nix-command" dependency
@elpdt852 elpdt852 force-pushed the fix/file-store-path branch from ef8459a to a147c1d Compare March 24, 2024 01:28
@elpdt852
Copy link
Collaborator Author

@RobbieBuxton @gbpdt This is ready for review now.

Copy link
Collaborator

@RobbieBuxton RobbieBuxton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, looks good to me!

@elpdt852 elpdt852 merged commit d65b45d into main Mar 24, 2024
13 checks passed
@elpdt852 elpdt852 deleted the fix/file-store-path branch March 24, 2024 10:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ok-to-test Runs NixOS tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support loading compressed archives nerdctl fails to run a minimal container
2 participants