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

containernetworking / plugins
53%
master: 55%

Build:
Build:
LAST BUILD BRANCH: fix_dhcp_ipam_release
DEFAULT BRANCH: master
Repo Added 15 Nov 2017 08:41AM UTC
Files 69
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 host-device-l3-info
branch: host-device-l3-info
CHANGE BRANCH
x
Reset
  • host-device-l3-info
  • CNV-75526
  • add-aks-integration
  • bridge-error
  • bridge-mac-pinning
  • bridge-port-isolation
  • bugfix/wrong_startrange
  • bump-go-1.26.4
  • bump-go-version
  • bump-go-version-2
  • bump-golang-ci
  • bump-libcni
  • codeql
  • comment-fix
  • contact-info
  • coryright-attribution
  • deletevlaniface
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.18
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.19
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.20
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.21
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.22
  • dependabot/docker/dot-github/actions/retest-action/alpine-3.23
  • dependabot/github_actions/actions/checkout-4
  • dependabot/github_actions/actions/checkout-5
  • dependabot/github_actions/actions/checkout-6
  • dependabot/github_actions/actions/checkout-7
  • dependabot/github_actions/actions/setup-go-5
  • dependabot/github_actions/actions/setup-go-6
  • dependabot/github_actions/golangci/golangci-lint-action-4
  • dependabot/github_actions/golangci/golangci-lint-action-5
  • dependabot/github_actions/golangci/golangci-lint-action-6
  • dependabot/github_actions/golangci/golangci-lint-action-9
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.10.0
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.11.0
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.11.1
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.9.10
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.9.7
  • dependabot/go_modules/github.com/Microsoft/hcsshim-0.9.9
  • dependabot/go_modules/github.com/containerd/containerd-1.6.26
  • dependabot/go_modules/github.com/coreos/go-iptables-0.7.0
  • dependabot/go_modules/github.com/networkplumbing/go-nft-0.3.0
  • dependabot/go_modules/github.com/networkplumbing/go-nft-0.4.0
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.11.0
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.12.0
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.12.1
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.13.0
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.13.1
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.8.3
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.8.4
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.9.0
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.9.1
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.9.4
  • dependabot/go_modules/github.com/onsi/ginkgo/v2-2.9.7
  • dependabot/go_modules/github.com/onsi/gomega-1.25.0
  • dependabot/go_modules/github.com/onsi/gomega-1.26.0
  • dependabot/go_modules/github.com/onsi/gomega-1.27.1
  • dependabot/go_modules/github.com/onsi/gomega-1.27.10
  • dependabot/go_modules/github.com/onsi/gomega-1.27.2
  • dependabot/go_modules/github.com/onsi/gomega-1.27.3
  • dependabot/go_modules/github.com/onsi/gomega-1.27.8
  • dependabot/go_modules/github.com/onsi/gomega-1.27.9
  • dependabot/go_modules/github.com/onsi/gomega-1.28.0
  • dependabot/go_modules/github.com/onsi/gomega-1.30.0
  • dependabot/go_modules/github.com/opencontainers/selinux-1.11.0
  • dependabot/go_modules/golang-09a819dc01
  • dependabot/go_modules/golang-0ff27c0dc8
  • dependabot/go_modules/golang-103bedb26b
  • dependabot/go_modules/golang-1eaf3aa819
  • dependabot/go_modules/golang-29835453c6
  • dependabot/go_modules/golang-2cb2537523
  • dependabot/go_modules/golang-2d6cee5bad
  • dependabot/go_modules/golang-2f005b8ca9
  • dependabot/go_modules/golang-383d838611
  • dependabot/go_modules/golang-439c5fc513
  • dependabot/go_modules/golang-4dd97b104e
  • dependabot/go_modules/golang-51f3cddb77
  • dependabot/go_modules/golang-5c8df2ff5e
  • dependabot/go_modules/golang-61257cff18
  • dependabot/go_modules/golang-6263b2479d
  • dependabot/go_modules/golang-6a70725da1
  • dependabot/go_modules/golang-7e0ee1aacf
  • dependabot/go_modules/golang-82cdb19fbc
  • dependabot/go_modules/golang-82e3264b6f
  • dependabot/go_modules/golang-8bfbea899d
  • dependabot/go_modules/golang-8c40cefe07
  • dependabot/go_modules/golang-8f3a99df9e
  • dependabot/go_modules/golang-98d539f651
  • dependabot/go_modules/golang-9b7ee4a467
  • dependabot/go_modules/golang-9fbc68838b
  • dependabot/go_modules/golang-a01909eac1
  • dependabot/go_modules/golang-a90ed34d00
  • dependabot/go_modules/golang-ac7443b549
  • dependabot/go_modules/golang-b1fd1a5525
  • dependabot/go_modules/golang-b711640f48
  • dependabot/go_modules/golang-c05031af0a
  • dependabot/go_modules/golang-c722575f0f
  • dependabot/go_modules/golang-cbe0ec1090
  • dependabot/go_modules/golang-db9f2d353e
  • dependabot/go_modules/golang-e423e5d544
  • dependabot/go_modules/golang-e5a06e9046
  • dependabot/go_modules/golang-efff583b38
  • dependabot/go_modules/golang-f04424bbb8
  • dependabot/go_modules/golang-f1c86e0e78
  • dependabot/go_modules/golang-f6d18035b1
  • dependabot/go_modules/golang-fb115483cc
  • dependabot/go_modules/golang-fd31490dbe
  • dependabot/go_modules/golang.org/x/net-0.17.0
  • dependabot/go_modules/golang.org/x/net-0.23.0
  • dependabot/go_modules/golang.org/x/net-0.36.0
  • dependabot/go_modules/golang.org/x/net-0.38.0
  • dependabot/go_modules/golang.org/x/net-0.55.0
  • dependabot/go_modules/golang.org/x/sys-0.10.0
  • dependabot/go_modules/golang.org/x/sys-0.11.0
  • dependabot/go_modules/golang.org/x/sys-0.13.0
  • dependabot/go_modules/golang.org/x/sys-0.4.0
  • dependabot/go_modules/golang.org/x/sys-0.5.0
  • dependabot/go_modules/golang.org/x/sys-0.7.0
  • dependabot/go_modules/golang.org/x/sys-0.8.0
  • dependabot/go_modules/golang.org/x/sys-0.9.0
  • dependabot/go_modules/google.golang.org/grpc-1.56.3
  • dependabot/go_modules/google.golang.org/grpc-1.79.3
  • dependabot/go_modules/google.golang.org/protobuf-1.33.0
  • dhcp-daemon-terminate-iface-nonexist
  • enable-vlan-uplink-interface
  • feature/go_version_bump
  • feature/group-fwd-mask
  • feature/modernize_forvar
  • feature/modernize_update
  • fix
  • fix-bw-nil
  • fix-firewall-ci
  • fix-integ-tests
  • fix-long-hostvethname
  • fix-portmap_nftables
  • fix-unshare
  • fix-windows-ginko
  • fix/portmap
  • fix_bridge_test_linux7
  • fix_dhcp_ipam_release
  • fixdad
  • fixglobalroutes
  • fixvlantrunk
  • fixvrfglobalroutes
  • go-1.25
  • go-mod-separate
  • go-mod-verify
  • go-version
  • go1.24
  • host-device
  • increatetimeoutvrf
  • ingress-same-bridge-isolate
  • jell/per_if_sysctl
  • jell/vlan-1
  • jell/vlan-2
  • keeponaddripv6
  • macvlan/stop-setting-proxy-arp
  • main
  • master
  • multiple_routes_same_prefix1
  • new-maintainers
  • oif_rule
  • patch-1
  • pin-actions-to-sha
  • portmap-last-write-wins
  • refs/tags/v0.9.0
  • refs/tags/v0.9.1
  • refs/tags/v1.0.0
  • refs/tags/v1.0.0-rc1
  • refs/tags/v1.0.1
  • refs/tags/v1.1.0
  • refs/tags/v1.1.1
  • refs/tags/v1.2.0
  • refs/tags/v1.4.0
  • refs/tags/v1.4.1
  • refs/tags/v1.5.0
  • refs/tags/v1.5.1
  • release-1.1
  • remove-bryan
  • remove-release-sh2
  • retry
  • revert_c1069bd
  • scorecard
  • setpreservedefaultvlanfalse
  • test-ipam-ecmp1
  • v0.8.2
  • v0.8.3
  • v0.8.4
  • v0.8.5
  • v0.8.6
  • v0.8.7
  • wip-remove-dup
  • xuxiaowei/loong64
  • zerofix

07 Jul 2026 09:22AM UTC coverage: 52.912%. First build
28855646314

Pull #1257

github

SchSeba
host-device: copy host interface IP addresses and routes into container

Add a new configuration option `useInterfaceNetwork` that instructs the
host-device plugin to capture the interface's IP addresses and routes
from the host before moving the device into the container namespace,
and then apply them inside the container.

This is critical for virtual environments (AWS, IBM Cloud, GPC) where
the cloud provider configures IP addresses and routes directly on the
network device. In these environments, there is no traditional IPAM
source; the ground truth for L3 configuration lives on the host
interface itself.

When `useInterfaceNetwork` is enabled, the plugin:
  - Captures all global-scope addresses and non-local routes from the
    host device before moving it into the container namespace.
  - Applies the captured addresses and routes to the interface inside
    the container.
  - Reports the addresses and routes in the CNI result (merged with
    any IPAM result if an IPAM plugin is also configured).

NOTE: The interface configuration on the host node must be persistent.
When the device is moved back to the host (via DEL) and renamed to its
original name, the system's network management service (e.g.
NetworkManager, systemd-networkd, cloud-init, or cloud-specific agents)
is expected to detect the device and re-apply the IP addresses and
routes. This plugin does NOT re-configure the host interface on DEL; it
relies on the node's network configuration being declarative and
reconciled by the platform's networking stack.

Also implements the STATUS command to verify the host device exists,
replacing the previous TODO stub.

Signed-off-by: Sebastian Sch <sebassch@gmail.com>
Pull Request #1257: host-device: copy host interface IP addresses and routes into container

120 of 162 new or added lines in 2 files covered. (74.07%)

5124 of 9684 relevant lines covered (52.91%)

27.56 hits per line

Relevant lines Covered
Build:
Build:
9684 RELEVANT LINES 5124 COVERED LINES
27.56 HITS PER LINE
Source Files on host-device-l3-info
  • Tree
  • List 70
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28855646314 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 07 Jul 2026 09:32AM UTC SchSeba github
52.91
28798682744 host-device-l3-info host-device: copy host interface IP addresses and routes into container Pull #1257 06 Jul 2026 02:32PM UTC Sebastian Sch github
52.91
28798527561 host-device-l3-info host-device: copy host interface IP addresses and routes into container Pull #1257 06 Jul 2026 02:31PM UTC Sebastian Sch github
52.91
28744684543 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 05 Jul 2026 03:02PM UTC SchSeba github
52.86
28555812558 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 02 Jul 2026 12:09AM UTC SchSeba github
52.93
28542336419 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 01 Jul 2026 07:36PM UTC SchSeba github
52.93
28354901456 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 29 Jun 2026 07:19AM UTC SchSeba github
53.01
28150601120 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 25 Jun 2026 06:19AM UTC SchSeba github
53.01
28116072689 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 24 Jun 2026 05:26PM UTC SchSeba github
53.01
25674197703 host-device-l3-info host-device: copy host interface IP addresses and routes into container Add a new configuration option `useInterfaceNetwork` that instructs the host-device plugin to capture the interface's IP addresses and routes from the host before moving the ... Pull #1257 11 May 2026 01:58PM UTC SchSeba github
53.01
See All Builds (1511)
  • 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