Merge pull request #515 from s1061123/fix/namespace-in-status

Fix network status name/namespace to compliant with multi-net-spec
This commit is contained in:
Doug Smith
2020-06-09 15:08:23 -04:00
committed by GitHub
3 changed files with 7 additions and 5 deletions

View File

@@ -611,7 +611,7 @@ func cmdAdd(args *skel.CmdArgs, exec invoke.Exec, kubeClient *k8s.ClientInfo) (c
//create the network status, only in case Multus as kubeconfig //create the network status, only in case Multus as kubeconfig
if n.Kubeconfig != "" && kc != nil { if n.Kubeconfig != "" && kc != nil {
if !types.CheckSystemNamespaces(string(k8sArgs.K8S_POD_NAME), n.SystemNamespaces) { if !types.CheckSystemNamespaces(string(k8sArgs.K8S_POD_NAME), n.SystemNamespaces) {
delegateNetStatus, err := nadutils.CreateNetworkStatus(tmpResult, delegate.Conf.Name, delegate.MasterPlugin) delegateNetStatus, err := nadutils.CreateNetworkStatus(tmpResult, delegate.Name, delegate.MasterPlugin)
if err != nil { if err != nil {
return nil, cmdErr(k8sArgs, "error setting network status: %v", err) return nil, cmdErr(k8sArgs, "error setting network status: %v", err)
} }

View File

@@ -34,11 +34,11 @@ import (
cniversion "github.com/containernetworking/cni/pkg/version" cniversion "github.com/containernetworking/cni/pkg/version"
"github.com/containernetworking/plugins/pkg/ns" "github.com/containernetworking/plugins/pkg/ns"
"github.com/containernetworking/plugins/pkg/testutils" "github.com/containernetworking/plugins/pkg/testutils"
netfake "github.com/k8snetworkplumbingwg/network-attachment-definition-client/pkg/client/clientset/versioned/fake"
"gopkg.in/intel/multus-cni.v3/k8sclient" "gopkg.in/intel/multus-cni.v3/k8sclient"
"gopkg.in/intel/multus-cni.v3/logging" "gopkg.in/intel/multus-cni.v3/logging"
testhelpers "gopkg.in/intel/multus-cni.v3/testing" testhelpers "gopkg.in/intel/multus-cni.v3/testing"
"gopkg.in/intel/multus-cni.v3/types" "gopkg.in/intel/multus-cni.v3/types"
netfake "github.com/k8snetworkplumbingwg/network-attachment-definition-client/pkg/client/clientset/versioned/fake"
"k8s.io/client-go/kubernetes/fake" "k8s.io/client-go/kubernetes/fake"
"k8s.io/client-go/tools/record" "k8s.io/client-go/tools/record"
@@ -1497,8 +1497,8 @@ var _ = Describe("multus operations cniVersion 0.2.0 config", func() {
events := collectEvents(recorder.Events) events := collectEvents(recorder.Events)
Expect(len(events)).To(Equal(3)) Expect(len(events)).To(Equal(3))
Expect(events[0]).To(Equal("Normal AddedInterface Add eth0 [1.1.1.2/24]")) Expect(events[0]).To(Equal("Normal AddedInterface Add eth0 [1.1.1.2/24]"))
Expect(events[1]).To(Equal("Normal AddedInterface Add net1 [1.1.1.3/24] from net1")) Expect(events[1]).To(Equal("Normal AddedInterface Add net1 [1.1.1.3/24] from test/net1"))
Expect(events[2]).To(Equal("Normal AddedInterface Add net2 [1.1.1.4/24] from net2")) Expect(events[2]).To(Equal("Normal AddedInterface Add net2 [1.1.1.4/24] from test/net2"))
}) })
It("executes kubernetes networks and delete it after pod removal", func() { It("executes kubernetes networks and delete it after pod removal", func() {

View File

@@ -17,6 +17,7 @@ package types
import ( import (
"encoding/json" "encoding/json"
"fmt"
"net" "net"
"github.com/containernetworking/cni/libcni" "github.com/containernetworking/cni/libcni"
@@ -97,7 +98,8 @@ func LoadDelegateNetConf(bytes []byte, net *NetworkSelectionElement, deviceID st
if net != nil { if net != nil {
if net.Name != "" { if net.Name != "" {
delegateConf.Name = net.Name // Overwrite CNI config name with net-attach-def name
delegateConf.Name = fmt.Sprintf("%s/%s", net.Namespace, net.Name)
} }
if net.InterfaceRequest != "" { if net.InterfaceRequest != "" {
delegateConf.IfnameRequest = net.InterfaceRequest delegateConf.IfnameRequest = net.InterfaceRequest