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

noironetworks / aci-containers / 11916
63%
master: 63%

Build:
Build:
LAST BUILD BRANCH: snat-svc-fix
DEFAULT BRANCH: master
Ran 04 May 2026 07:13AM UTC
Jobs 1
Files 48
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

04 May 2026 06:57AM UTC coverage: 63.397% (+0.2%) from 63.229%
11916

push

travis-pro

jeffinkottaram
Fix per-service SNAT IP assignment for no-SnatIp policies

Two bugs are fixed:

1. Namespace-level no-SnatIp SNAT policies with multiple LoadBalancer
   services incorrectly assigned all LB external IPs to all pods.
   The controller now tags each global info entry with the originating
   service key. The hostagent filters SNAT UIDs per-pod by checking
   service endpoint membership, ensuring each pod only egresses with
   the external IP of the service it belongs to.

2. After hostagent pod restarts, namespace-level no-SnatIp policies
   lost their service SNAT entries because pod events did not evaluate
   service membership for the namespace-scoped policy path. The
   namespace-scoped branch now checks for matching services when
   processing pod events, consistent with the label-scoped path.

Additionally, two  inconsistencies are corrected:

1. The deployment path for no-SnatIp policies incorrectly matched
deployment metadata labels against service pod selectors. Since
services select pods (not deployments), and pod template changes
produce new pod events handled separately, this check was both
inaccurate and redundant. It is removed.

2. Explicit-SnatIp policies matching services now consistently apply the
specified SNAT IP to the service's backend pods across all policy
evaluation paths

59 of 87 new or added lines in 2 files covered. (67.82%)

3 existing lines in 2 files now uncovered.

13631 of 21501 relevant lines covered (63.4%)

0.72 hits per line

Uncovered Changes

Lines Coverage ∆ File
16
60.64
-1.09% pkg/controller/snatglobalinfo.go
12
71.43
3.36% pkg/hostagent/snats.go

Coverage Regressions

Lines Coverage ∆ File
2
63.58
-0.14% pkg/apicapi/apicapi.go
1
71.43
3.36% pkg/hostagent/snats.go
Jobs
ID Job ID Ran Files Coverage
1 11916.1 (DEFAULT_BRANCH=master GOPROXY=https://proxy.golang.org|https://goproxy.io|direct) 04 May 2026 07:13AM UTC 48
63.4
Travis Job 11916.1
Source Files on build 11916
  • Tree
  • List 48
  • Changed 5
  • Source Changed 0
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Travis Build #11916
  • 49b052d4 on github
  • Prev Build on master (#11817)
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