• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Mellanox / network-operator / 35207940122
64%

Build:
DEFAULT BRANCH: master
Ran 17 Sep 2026 10:01AM UTC
Jobs 1
Files 63
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Sep 2026 09:57AM UTC coverage: 62.658% (-0.7%) from 63.333%
35207940122

push

github

web-flow
feat: configure RDMA kubelet root via helm staticconfig (#3189)

## Summary

Configure an optional kubelet root for the RDMA shared device plugin
using the same helm / env / staticconfig flow as `CNI_BIN_DIR` /
`CNI_NETWORK_DIR`, instead of expanding the CRD API.

- Helm: `operator.kubeletRootDir` (empty by default)
- Operator Deployment env: `KUBELET_ROOT_DIR` (only when the helm value
is set)
- `staticconfig.StaticConfig.KubeletRootDir` consumed by the RDMA shared
device plugin state
- DaemonSet: hostPath / mountPath for `device-plugins` and
`plugins_registry` derived from that root; `--kubelet-root-dir` only
when the override is non-empty and not the default `/var/lib/kubelet`
- Unset preserves current `/var/lib/kubelet` mounts and omits the CLI
flag
- No CRD / webhook API field

Depends on upstream plugin support:
Mellanox/k8s-rdma-shared-dev-plugin#157

Fixes #2989

## Test plan

- [x] `make generate` / `make manifests`
- [x] `make lint` (0 issues)
- [x] `make lint-helm` / `make test-helm`
- [x] full `make test` (envtest; exit 0)
- [x] `make build`
- [x] helm template: default omits `KUBELET_ROOT_DIR`;
`operator.kubeletRootDir=/var/lib/k0s/kubelet` sets it
- [x] unit coverage for default / override / trailing-slash / combined
`--use-cdi`
- [ ] Kind nested cluster / live RDMA pods (no `pci-15b3` hardware here)
- [ ] NVIDIA GH Actions runners (waiting on maintainer `/ok-to-test` via
copy-pr-bot)

## Notes for reviewers

Addressing @rollandf feedback to follow the CNI_BIN_DIR /
CNI_NETWORK_DIR pattern rather than adding `kubeletRootDir` on the API.

25 of 32 new or added lines in 4 files covered. (78.13%)

70 existing lines in 7 files now uncovered.

5049 of 8058 relevant lines covered (62.66%)

45.33 hits per line

Uncovered Changes

Lines Coverage ∆ File
4
70.43
-0.99% pkg/state/state_rdma_shared_device_plugin.go
3
0.0
0.0% main.go

Coverage Regressions

Lines Coverage ∆ File
34
46.72
-24.61% controllers/nicnodepolicy_controller.go
12
53.1
-10.62% controllers/mofed_wait_labels.go
9
41.45
-1.15% api/v1alpha1/zz_generated.deepcopy.go
7
82.05
-1.71% controllers/nicclusterpolicy_controller.go
4
75.24
-3.81% pkg/state/state_ipoib_network.go
2
83.33
-2.38% controllers/ipoibnetwork_controller.go
2
73.73
0.0% pkg/state/state_ofed.go
Jobs
ID Job ID Ran Files Coverage
1 35207940122.1 17 Sep 2026 10:01AM UTC 63
62.66
GitHub Action Run
Source Files on build 35207940122
  • Tree
  • List 63
  • Changed 14
  • Source Changed 5
  • Coverage Changed 14
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35207940122
  • b0110eb6 on github
  • Prev Build on master (#35097018408)
  • Next Build on master (#35212934362)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc