containerd: include zfs plugin by default#2096
containerd: include zfs plugin by default#2096crosbymichael merged 1 commit intocontainerd:masterfrom
Conversation
|
A bit out of topic of this PR. The problem is that if we don't have something like #1615. For CI in cri-containerd, we still need to play all kinds of vendor tricks to clone containerd code, and automatically update containerd code to vendor new CRI plugin. :( It is fine, but a bit ugly. (see containerd/cri#561 and containerd/cri#523 and containerd/cri#527.) Another option is to completely merge containerd and cri-containerd into one repo. |
There was a problem hiding this comment.
Please vendor github.com/mistifyio/go-zfs as well
There was a problem hiding this comment.
How is CI passing without this dependency being included?
There was a problem hiding this comment.
I think we want to support no_zfs buildtag
There was a problem hiding this comment.
Maybe a omit_default_plugins tag instead of a tag for each default?
To build with a custom list of plugins someone could add a builtins_custom.go with the exact list they want.
There was a problem hiding this comment.
You're welcome to submit that as a follow up.
|
@Random-Liu is there a |
|
@Random-Liu I understand but we are clearly going down a rabbit hole of complexity that is untenable. It drastically affects the contribution experience. If the problem is that zfs isn't built in, we don't build a massively complex system of vendoring and export main packages, we just include zfs. Same thing with CRI. If we incorporate everything and want to refactor the result, then we can do so at that time. |
I mentioned in one of the issues you linked, but plugins aren't really a special case, they are just like any other dependency in |
@stevvooe If we have #1615, we don't need to do those crazy script stuff in cri-containerd. I also don't like those scripts, that's why I'd like #1615 to land if possible. :) |
|
@Random-Liu The problem with #1615 is that it creates other dependencies that we might have to support in the future. It also creates a split that might not be ideal in the future. I'd like to see a few options before we jump down that particular path. |
e3077ed to
7a0b9a3
Compare
|
@stevvooe Actually, a better option is to use golang plugin mode. Let's think about whether we can make it work. |
7a0b9a3 to
a159ff2
Compare
Codecov Report
@@ Coverage Diff @@
## master #2096 +/- ##
=======================================
Coverage 41.19% 41.19%
=======================================
Files 66 66
Lines 7725 7725
=======================================
Hits 3182 3182
Misses 4041 4041
Partials 502 502
Continue to review full report at Codecov.
|
|
@containerd/containerd-maintainers Are we a go or no go on this one? I get that a plugin system would be nice but it seems like there is some demand for zfs support. |
|
How big is the demand? It's it big enough how suppose we can go ahead, but I'd prefer it being in a |
I think we can take those PRs as they come, but I'd like for 1.1 to have zfs and aufs support, as these are the biggest reasons to request plugins support. |
Signed-off-by: Stephen J Day <[email protected]>
a159ff2 to
f4113a9
Compare
|
LGTM I would like to see a follow up though to separate this by a build tag |
|
LGTM |
Signed-off-by: Stephen J Day [email protected]
Note that I would do this for
aufs, but ran into containerd/aufs#8