diff --git a/internal/cri/nri/nri_api_linux.go b/internal/cri/nri/nri_api_linux.go index 0adcd9d116..598e656b2a 100644 --- a/internal/cri/nri/nri_api_linux.go +++ b/internal/cri/nri/nri_api_linux.go @@ -633,6 +633,14 @@ func (p *criPodSandbox) GetPid() uint32 { return p.pid } +func (p *criPodSandbox) GetIPs() []string { + if p.IP == "" { + return nil + } + ips := append([]string{p.IP}, p.AdditionalIPs...) + return ips +} + // // NRI integration wrapper for CRI Containers // diff --git a/internal/nri/sandbox.go b/internal/nri/sandbox.go index 85d6178aad..15ad9538d4 100644 --- a/internal/nri/sandbox.go +++ b/internal/nri/sandbox.go @@ -34,6 +34,7 @@ type PodSandbox interface { GetLinuxPodSandbox() LinuxPodSandbox GetPid() uint32 + GetIPs() []string } type LinuxPodSandbox interface { @@ -55,6 +56,7 @@ func commonPodSandboxToNRI(pod PodSandbox) *nri.PodSandbox { Annotations: pod.GetAnnotations(), RuntimeHandler: pod.GetRuntimeHandler(), Pid: pod.GetPid(), + Ips: pod.GetIPs(), } }