Skip tests when no signal emitting command

This commit is contained in:
Shiming Zhang 2022-01-06 11:37:06 +08:00
parent 1c2f24f106
commit 3516e76f3d

View File

@ -23,6 +23,7 @@ import (
"context" "context"
"fmt" "fmt"
"os" "os"
"os/exec"
"path/filepath" "path/filepath"
"strconv" "strconv"
"time" "time"
@ -40,6 +41,7 @@ import (
"k8s.io/kubernetes/pkg/features" "k8s.io/kubernetes/pkg/features"
kubeletconfig "k8s.io/kubernetes/pkg/kubelet/apis/config" kubeletconfig "k8s.io/kubernetes/pkg/kubelet/apis/config"
kubelettypes "k8s.io/kubernetes/pkg/kubelet/types" kubelettypes "k8s.io/kubernetes/pkg/kubelet/types"
e2eskipper "k8s.io/kubernetes/test/e2e/framework/skipper"
testutils "k8s.io/kubernetes/test/utils" testutils "k8s.io/kubernetes/test/utils"
) )
@ -65,6 +67,10 @@ var _ = SIGDescribe("GracefulNodeShutdown [Serial] [NodeFeature:GracefulNodeShut
}) })
ginkgo.BeforeEach(func() { ginkgo.BeforeEach(func() {
if err := lookEmitSignalCommand(); err != nil {
e2eskipper.Skipf("skipping test because: %v", err)
return
}
ginkgo.By("Wait for the node to be ready") ginkgo.By("Wait for the node to be ready")
waitForNodeReady() waitForNodeReady()
}) })
@ -440,6 +446,11 @@ func emitSignalPrepareForShutdown(b bool) error {
return err return err
} }
func lookEmitSignalCommand() error {
_, err := exec.LookPath("dbus-send")
return err
}
func getNodeReadyStatus(f *framework.Framework) bool { func getNodeReadyStatus(f *framework.Framework) bool {
nodeList, err := f.ClientSet.CoreV1().Nodes().List(context.TODO(), metav1.ListOptions{}) nodeList, err := f.ClientSet.CoreV1().Nodes().List(context.TODO(), metav1.ListOptions{})
framework.ExpectNoError(err) framework.ExpectNoError(err)