[meta-virtualization] [PATCH 5/6] cni: move cni tools to /usr/lib/cni

Stefan Agner stefan at agner.ch
Fri Sep 6 05:06:59 PDT 2019


On 2019-09-03 19:28, Bruce Ashfield wrote:
> On Sun, Sep 1, 2019 at 9:33 PM ChenQi <Qi.Chen at windriver.com> wrote:
>>
>> On 09/02/2019 04:33 AM, Stefan Agner wrote:
>> > From: Stefan Agner <stefan.agner at toradex.com>
>> >
>> > Use a standard location to store the cni tools and plugins. This
>> > is more in line how other distributions package cni.
>>
>> But from what I see, at least Fedora and Ubuntu are using /opt/cni/bin
>> directory.

Fedora uses /usr/libexec/cni:
https://koji.fedoraproject.org/koji/rpminfo?rpmID=18850786

As far as I can tell there is no upstream Debian/Ubuntu package for this
yet.

Arch Linux uses /usr/lib/cni:
https://www.archlinux.org/packages/community/x86_64/cni-plugins/

I haven't seen distribution typically use /opt.

>> Also, have you tested such change with simple k8s setup which makes use
>> of these plugins? E.g. flannel?

I haven't. In fact I am not familiar with k8s setups, so this would need
me some time to understand and test...

> 
> Indeed. I haven't seen anything that looks like a standard location
> for these. I'd be interested to hear how testing went.
> 
> Is this something that we can make configurable ? That would be my
> preference, that way we can be sure to not break anyone's use case.

I guess one always can do a bbappend...?

I don't think that we can configure at runtime (E.g. have the package
manager install it into different location depending on...)

--
Stefan


> 
> Bruce
> 
>>
>> Best Regards,
>> Chen Qi
>>
>> > Signed-off-by: Stefan Agner <stefan.agner at toradex.com>
>> > ---
>> >   recipes-containers/cri-o/files/crio.conf | 2 +-
>> >   recipes-networking/cni/cni_git.bb        | 4 ++--
>> >   2 files changed, 3 insertions(+), 3 deletions(-)
>> >
>> > diff --git a/recipes-containers/cri-o/files/crio.conf b/recipes-containers/cri-o/files/crio.conf
>> > index 51d7f40..dd22465 100644
>> > --- a/recipes-containers/cri-o/files/crio.conf
>> > +++ b/recipes-containers/cri-o/files/crio.conf
>> > @@ -144,4 +144,4 @@ registries = [
>> >   network_dir = "/etc/cni/net.d/"
>> >
>> >   # plugin_dir is is where CNI plugin binaries are stored.
>> > -plugin_dir = "/opt/cni/bin/"
>> > +plugin_dir = "/usr/lib/cni/"
>> > diff --git a/recipes-networking/cni/cni_git.bb b/recipes-networking/cni/cni_git.bb
>> > index 5348b95..86e5e0f 100644
>> > --- a/recipes-networking/cni/cni_git.bb
>> > +++ b/recipes-networking/cni/cni_git.bb
>> > @@ -63,7 +63,7 @@ do_compile() {
>> >   }
>> >
>> >   do_install() {
>> > -    localbindir="/opt/cni/bin"
>> > +    localbindir="${libdir}/cni/"
>> >
>> >       install -d ${D}${localbindir}
>> >       install -d ${D}/${sysconfdir}/cni/net.d
>> > @@ -72,7 +72,7 @@ do_install() {
>> >       install -m 755 -D ${WORKDIR}/plugins/bin/* ${D}/${localbindir}
>> >   }
>> >
>> > -FILES_${PN} += "/opt/cni/bin/*"
>> > +FILES_${PN} += "${libdir}/cni/*"
>> >
>> >   INSANE_SKIP_${PN} += "ldflags already-stripped"
>> >
>>
>>
>> --
>> _______________________________________________
>> meta-virtualization mailing list
>> meta-virtualization at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-virtualization
> 
> 
> 
> -- 
> - Thou shalt not follow the NULL pointer, for chaos and madness await
> thee at its end
> - "Use the force Harry" - Gandalf, Star Trek II


More information about the meta-virtualization mailing list