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

rollandf / nvidia-k8s-ipam
54%
main: 53%

Build:
Build:
LAST BUILD BRANCH: go12411
DEFAULT BRANCH: main
Repo Added 01 Sep 2024 02:36PM UTC
Token 862iqfZ6A2Cey4ouWrMcw3BFS0fNymOBr regen
Build 32 Last
Files 46
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

LAST BUILD ON BRANCH pernodeexclusions
branch: pernodeexclusions
CHANGE BRANCH
x
Reset
Sync Branches
  • pernodeexclusions
  • debian12
  • distroless
  • dockerarg
  • dockerargbp
  • flok
  • go12411
  • grpc-update
  • k8supdate
  • main
  • node-user
  • routes
  • typo-gw

14 Dec 2025 10:39AM UTC coverage: 54.166% (-0.06%) from 54.225%
20207532655

push

github

rollandf
feat: add perNodeExclusions support for IPPool and CIDRPool

Add support for per-node index-based IP exclusions in both IPPool and
CIDRPool resources. This allows administrators to exclude specific IP
address ranges based on their index position within each node's allocated
IP block or prefix, rather than by absolute IP addresses.

API Changes:
- Add ExcludeIndexRange type with startIndex and endIndex fields
- Add perNodeExclusions field to IPPoolSpec and CIDRPoolSpec
- Add kubebuilder validation markers for CRD-level validation
  - startIndex and endIndex must be non-negative
  - endIndex must be >= startIndex
- Add runtime validation functions:
  - validatePerNodeExclusions() for CIDRPool (validates against perNodeNetworkPrefix)
  - validatePerNodeExclusionsForBlockSize() for IPPool (validates against perNodeBlockSize)
- Add comprehensive test coverage (24 test cases total)
  - 14 tests for CIDRPool (IPv4 and IPv6)
  - 10 tests for IPPool (IPv4 and IPv6)

Controller Implementation:
- IPPool controller: Add buildPerNodeExclusions() function
  - Converts index-based exclusions to IP addresses for node's IP block
  - Merges with pool-wide exclusions before passing to allocator
  - 10 unit tests covering all edge cases
- CIDRPool controller: Add buildPerNodeExclusions() function
  - Converts index-based exclusions to IP addresses for node's prefix
  - Combines with filtered pool-wide exclusions
  - 7 unit tests covering all edge cases

Implementation details:
- Each node processes only its own allocation (per-node)
- Index-based ranges are converted to IP-based ExclusionRange objects
- Ranges are clamped to node's allocation boundaries
- Ranges outside node's allocation are skipped
- Reuses existing allocator exclusion mechanism (no allocator changes)
- Memory efficient: large ranges create single ExclusionRange entries

Documentation:
- Update README.md with perNodeExclusions field descriptions
- Update docs/static-ip.md with examples
- Add detailed fi... (continued)

134 of 166 new or added lines in 6 files covered. (80.72%)

70 existing lines in 6 files now uncovered.

2230 of 4117 relevant lines covered (54.17%)

9.15 hits per line

Relevant lines Covered
Build:
Build:
4117 RELEVANT LINES 2230 COVERED LINES
9.15 HITS PER LINE
Source Files on pernodeexclusions
  • Tree
  • List 46
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
20207532655 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 14 Dec 2025 11:54AM UTC rollandf github
54.17
20166092903 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 12 Dec 2025 12:04PM UTC rollandf github
54.23
20137850297 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 11 Dec 2025 03:17PM UTC rollandf github
54.09
20091619441 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 10 Dec 2025 08:10AM UTC rollandf github
54.08
20091520402 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 10 Dec 2025 08:06AM UTC rollandf github
54.08
20091513314 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 10 Dec 2025 08:05AM UTC rollandf github
54.23
20091254664 pernodeexclusions feat: add perNodeExclusions support for IPPool and CIDRPool Add support for per-node index-based IP exclusions in both IPPool and CIDRPool resources. This allows administrators to exclude specific IP address ranges based on their index position w... push 10 Dec 2025 07:53AM UTC rollandf github
54.06
20091146080 pernodeexclusions feat: implement perNodeExclusions logic for IPPool and CIDRPool Add logic to convert index-based perNodeExclusions to IP-based exclusions in the ipam-node controllers. Each node converts its allocated IP range exclusions independently and merges ... push 10 Dec 2025 07:48AM UTC rollandf github
54.06
20091093193 pernodeexclusions feat: implement perNodeExclusions logic for IPPool and CIDRPool Add logic to convert index-based perNodeExclusions to IP-based exclusions in the ipam-node controllers. Each node converts its allocated IP range exclusions independently and merges ... push 10 Dec 2025 07:46AM UTC rollandf github
54.13
See All Builds (32)

Badge your Repo: nvidia-k8s-ipam

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

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

Refresh
  • Settings
  • Repo on GitHub
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