release: Don't install CNI plugins to /opt
What would you like to be added:
Let RPM and DEB packages install CNI plugins under /usr/lib/cni, /usr/lib/cni-plugins or similar.
Why is this needed:
Current installation path for CNI plugins (/opt/cni) is not aligned with Debian and Fedora packaging best practices (even possibly policies).
In the case of Fedora, previous versions of their packaging guidelines were explicitly stating that packages shouldn’t install any files under /opt. For a documented reason that I cannot fully understand, they reformulated it 4 years ago in a way that IMHO made a bit unclearer, but the essence remains the same: Fedora packages shouldn’t install files under /opt.
In the case of Debian there are no clear/explicit policies forbidding it, but the standard linter for Debian packages (lintian) reports it as an error in the package.
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 19 (12 by maintainers)
We should stop shipping these CNI plugins in a package because it’s not really useful, you still need a CNI config and realistically whatever tooling does that is supplying it’s own binaries anyhow
However: this path
(/opt/cniis required by all of the CNI integrations afaik, so Kubernetes is still ultimately going to be putting binaries in this path, short of changes that do not involve the packaging at all).The packages write here because that’s where kubelet / container runtimes look.