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

ovn-kubernetes / ovn-kubernetes / 23392370537
58%

Build:
DEFAULT BRANCH: master
Ran 22 Mar 2026 01:21AM UTC
Jobs 1
Files 313
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

20 Mar 2026 09:31PM UTC coverage: 57.138% (+0.07%) from 57.067%
23392370537

push

github

jcaamano
Add NetlinkDeviceManager for declarative device lifecycle management

Introduce NetlinkDeviceManager, a controller that declaratively manages
Linux network device lifecycle with self-healing and dependency resolution.

Key features:
- Declarative API: Define desired device state (Bridge, VXLAN, VLAN, VRF, Dummy)
  and the manager ensures convergence
- Ownership tracking: Uses IFLA_IFALIAS to mark managed devices, preventing
  conflicts with external tools
- Dependency resolution: Automatically retries device creation when master/parent
  is not yet present
- Self-healing: Periodic reconciliation catches external drift and restores
  desired state
- Bridge VLAN/VNI mappings: Manages VID-to-VNI mappings for VXLAN devices
  with VniFilter enabled
- Bridge port settings: Configures vlan_tunnel, neigh_suppress, learning

Also extends NetLinkOps interface with:
- LinkModify for atomic attribute updates
- Bridge VLAN operations (BridgeVlanAdd/Del, BridgeVniAdd/Del, tunnel info)
- Bridge port settings (LinkSetVlanTunnel, LinkSetBrNeighSuppress, LinkSetLearning)
- Error checking helpers (IsEntryNotFoundError, IsAlreadyExistsError)

Signed-off-by: Matteo Dallaglio <mdallagl@redhat.com>

893 of 1147 new or added lines in 4 files covered. (77.86%)

239 existing lines in 4 files now uncovered.

47682 of 83450 relevant lines covered (57.14%)

385.32 hits per line

Uncovered Changes

Lines Coverage ∆ File
124
66.12
0.0% go-controller/pkg/node/netlinkdevicemanager/controller.go
56
86.89
0.0% go-controller/pkg/node/netlinkdevicemanager/netlink_ops.go
51
41.53
0.0% go-controller/pkg/util/net_linux.go
23
92.41
0.0% go-controller/pkg/node/netlinkdevicemanager/link.go

Coverage Regressions

Lines Coverage ∆ File
222
41.53
0.0% go-controller/pkg/util/net_linux.go
10
75.95
-0.85% go-controller/pkg/ovn/base_network_controller_policy.go
6
74.63
-1.77% go-controller/pkg/ovn/hybrid.go
1
78.56
-0.11% go-controller/pkg/ovn/base_network_controller_pods.go
Jobs
ID Job ID Ran Files Coverage
1 23392370537.1 22 Mar 2026 01:21AM UTC 313
57.14
GitHub Action Run
Source Files on build 23392370537
  • Tree
  • List 313
  • Changed 10
  • Source Changed 0
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • b446d7b2 on github
  • Prev Build on master (#23379470922)
  • Next Build on master (#23402855522)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc