btrfs: use native go snapshotter implementation#5658
btrfs: use native go snapshotter implementation#5658AkihiroSuda wants to merge 1 commit intocontainerd:mainfrom
Conversation
4f89108 to
95cc9f2
Compare
This comment has been minimized.
This comment has been minimized.
|
Merged the PR, thanks a lot for pushing this forward :) |
Replace containerd/btrfs with dennwc/btrfs to eliminate cgo dependency. How to test: `go test -c ./snapshots/btrfs && sudo ./btrfs.test -test.root -test.v` Fix issue 5654 Fix containerd/btrfs issue 7 Based on Denys Smirnov's attempt in 2019: dennwc@3728f96 Co-authored-by: Denys Smirnov Signed-off-by: Akihiro Suda <[email protected]>
95cc9f2 to
59be6ce
Compare
|
Thanks @dennwc ! |
| libseccomp-dev:amd64 \ | ||
| libseccomp-dev:arm64 \ | ||
| libseccomp-dev:s390x \ | ||
| libseccomp-dev:ppc64el \ |
There was a problem hiding this comment.
We don't need the libseccomp-dev packages anymore either?
estesp
left a comment
There was a problem hiding this comment.
LGTM on the code to switch; any thoughts as to supported nature/any concerns around a single-person Go project (other than your PR to fix 32-bit ARM)? :) I realize we "blindly" depended on libbtrfs from distros prior to this, but curious if any reason to think about that?
|
If you like, can we migrate the code to https://github.com/containerd/btrfs (as |
|
Sure, sounds good! Do you need anything from my side in regards to the old repo? |
|
Thanks, could you relicense the code to Apache License 2.0 (required by CNCF)? Then I (or whoever) can open a PR in https://github.com/containerd/btrfs to add "/v2" module with your code. |
|
Done! |
|
Thanks, opened containerd/btrfs#34 |
stevvooe
left a comment
There was a problem hiding this comment.
Not LGTM
Existing bindings can be made to not use cgo without breaking the interface. Rejection is in containerd/btrfs#34 (comment) with pointers on how to avoid cgo for struct unpacking.
Replace
github.com/containerd/btrfswithgithub.com/dennwc/btrfsto eliminate cgo dependency.How to test:
go test -c ./snapshots/btrfs && sudo ./btrfs.test -test.root -test.vFix #5654
Fix containerd/btrfs#7
Based on Denys Smirnov (@dennwc)'s attempt in 2019: dennwc@3728f96