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

kubeovn / kube-ovn / 28151356021
27%

Build:
DEFAULT BRANCH: master
Ran 25 Jun 2026 06:33AM UTC
Jobs 1
Files 217
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

25 Jun 2026 06:28AM UTC coverage: 27.017% (+0.1%) from 26.902%
28151356021

push

github

web-flow
feat: Add kubeovn support for dynamic ip allocation/byo dhcp (#6885)

* add kubeovn support for dynamic ip allocation/byo dhcp

Signed-off-by: Tom Zhao <zhaoxu@microsoft.com>

* address PR review: fix webhook denial logic, reject excludeIps for MAC-only subnet, flush stale IPs in MAC-only mode

Signed-off-by: Tom Zhao <zhaoxu@microsoft.com>

* feat(mac-only): IPAM-backed MAC-only subnet allocation + protocol validation

Implement the IPAM-backed design for MAC-only underlay subnets (BYO-DHCP /
external DHCP) per maintainer review feedback. A MAC-only subnet is an underlay
subnet (Spec.Vlan != "") created without a CIDR (Spec.CIDRBlock == ""); kube-ovn
allocates only a MAC per pod NIC and the guest obtains its IP from an external
DHCP server.

- apis: add ProtocolMac = "Mac" protocol constant.
- ipam: add NewMacOnlySubnet + getMacOnlyAddress so GetRandomAddress allocates a
  MAC only (random or static, idempotent via NicToMac/MacToPod); register
  CIDR-less subnets in AddOrUpdateSubnet (guarding against stripping an existing
  CIDR with ErrInvalidCIDR); fix releaseAddr to clean up MacToPod/NicToMac for
  mac-only NICs so MACs are not leaked.
- controller: classify mac-only subnets as ProtocolMac in formatAddress and
  register them in IPAM (no calcSubnetStatusIP since there are no IP ranges);
  acquireAddress allocates a per-interface/provider MAC for mac-only pods.
- util: accept ProtocolMac in ValidateSubnet so mac-only subnets pass logical
  switch validation and reach Ready (fixes "Mac is not a valid protocol type"
  ValidateLogicalSwitchFailed surfaced by e2e on a live KIND cluster).
- ipam tests: TestMacOnlySubnet, TestMacOnlySubnetCannotStripCIDR.

Signed-off-by: Tom Zhao <zhaoxu@microsoft.com>

* test(e2e): add mac-only subnet allocation e2e (controller-level + multus secondary interface)

Adds two conformance specs under the underlay suite:
- Controller-level: an underlay subnet without a CIDR is classified as
  Protocol=Mac, reaches Ready, an... (continued)

200 of 355 new or added lines in 13 files covered. (56.34%)

4 existing lines in 2 files now uncovered.

16265 of 60202 relevant lines covered (27.02%)

0.31 hits per line

Uncovered Changes

Lines Coverage ∆ File
32
0.32
-0.0% pkg/daemon/ovs_linux.go
30
19.24
0.05% pkg/controller/subnet.go
25
16.83
-0.07% pkg/controller/pod.go
19
94.32
-4.24% pkg/util/validator.go
16
0.0
0.0% pkg/daemon/handler.go
9
5.91
-0.03% pkg/controller/subnet_status.go
8
0.0
0.0% pkg/webhook/subnet.go
6
0.0
0.0% pkg/controller/exporter.go
6
5.44
-0.01% pkg/controller/init.go
3
89.08
0.74% pkg/ipam/ipam.go
1
77.07
0.09% pkg/ovs/ovn-nb-logical_switch_port.go

Coverage Regressions

Lines Coverage ∆ File
2
75.73
-0.53% pkg/ovs/ovn-nb-logical_router_route.go
2
94.32
-4.24% pkg/util/validator.go
Jobs
ID Job ID Ran Files Coverage
1 28151356021.1 25 Jun 2026 06:33AM UTC 217
27.02
GitHub Action Run
Source Files on build 28151356021
  • Tree
  • List 217
  • Changed 15
  • Source Changed 0
  • Coverage Changed 15
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • a4c26e03 on github
  • Prev Build on master (#28150592162)
  • Next Build on master (#28176527244)
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