mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
skip recording inputs & outputs in fake script plugin when CNI_COMMAND=VERSION
Signed-off-by: Bruce Ma <brucema19901024@gmail.com>
This commit is contained in:
parent
6cb788c80e
commit
f9169d29cb
@ -20,7 +20,6 @@ package cni
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"context"
|
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
@ -76,14 +75,18 @@ func installPluginUnderTest(t *testing.T, testBinDir, testConfDir, testDataDir,
|
|||||||
f, err = os.Create(pluginExec)
|
f, err = os.Create(pluginExec)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
// TODO: use mock instead of fake shell script plugin
|
||||||
const execScriptTempl = `#!/usr/bin/env bash
|
const execScriptTempl = `#!/usr/bin/env bash
|
||||||
|
echo -n "{ \"cniVersion\": \"{{.CNIVersion}}\", \"ip4\": { \"ip\": \"{{.PodIP}}/24\" } }"
|
||||||
|
if [ "$CNI_COMMAND" = "VERSION" ]; then
|
||||||
|
exit
|
||||||
|
fi
|
||||||
cat > {{.InputFile}}
|
cat > {{.InputFile}}
|
||||||
env > {{.OutputEnv}}
|
env > {{.OutputEnv}}
|
||||||
echo "%@" >> {{.OutputEnv}}
|
echo "%@" >> {{.OutputEnv}}
|
||||||
export $(echo ${CNI_ARGS} | sed 's/;/ /g') &> /dev/null
|
export $(echo ${CNI_ARGS} | sed 's/;/ /g') &> /dev/null
|
||||||
mkdir -p {{.OutputDir}} &> /dev/null
|
mkdir -p {{.OutputDir}} &> /dev/null
|
||||||
echo -n "$CNI_COMMAND $CNI_NETNS $K8S_POD_NAMESPACE $K8S_POD_NAME $K8S_POD_INFRA_CONTAINER_ID" >& {{.OutputFile}}
|
echo -n "$CNI_COMMAND $CNI_NETNS $K8S_POD_NAMESPACE $K8S_POD_NAME $K8S_POD_INFRA_CONTAINER_ID" >& {{.OutputFile}}`
|
||||||
echo -n "{ \"cniVersion\": \"{{.CNIVersion}}\", \"ip4\": { \"ip\": \"{{.PodIP}}/24\" } }"`
|
|
||||||
|
|
||||||
inputFile := path.Join(testDataDir, binName+".in")
|
inputFile := path.Join(testDataDir, binName+".in")
|
||||||
outputFile := path.Join(testDataDir, binName+".out")
|
outputFile := path.Join(testDataDir, binName+".out")
|
||||||
@ -225,8 +228,8 @@ func TestCNIPlugin(t *testing.T) {
|
|||||||
cniPlugin.execer = fexec
|
cniPlugin.execer = fexec
|
||||||
cniPlugin.loNetwork.CNIConfig = mockLoCNI
|
cniPlugin.loNetwork.CNIConfig = mockLoCNI
|
||||||
|
|
||||||
mockLoCNI.On("AddNetworkList", context.TODO(), cniPlugin.loNetwork.NetworkConfig, mock.AnythingOfType("*libcni.RuntimeConf")).Return(&types020.Result{IP4: &types020.IPConfig{IP: net.IPNet{IP: []byte{127, 0, 0, 1}}}}, nil)
|
mockLoCNI.On("AddNetworkList", mock.AnythingOfType("*context.emptyCtx"), cniPlugin.loNetwork.NetworkConfig, mock.AnythingOfType("*libcni.RuntimeConf")).Return(&types020.Result{IP4: &types020.IPConfig{IP: net.IPNet{IP: []byte{127, 0, 0, 1}}}}, nil)
|
||||||
mockLoCNI.On("DelNetworkList", context.TODO(), cniPlugin.loNetwork.NetworkConfig, mock.AnythingOfType("*libcni.RuntimeConf")).Return(nil)
|
mockLoCNI.On("DelNetworkList", mock.AnythingOfType("*context.emptyCtx"), cniPlugin.loNetwork.NetworkConfig, mock.AnythingOfType("*libcni.RuntimeConf")).Return(nil)
|
||||||
|
|
||||||
// Check that status returns an error
|
// Check that status returns an error
|
||||||
if err := cniPlugin.Status(); err == nil {
|
if err := cniPlugin.Status(); err == nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user