mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 05:57:25 +00:00
refactor and clean up e2e/framework/exec_util.go
This commit is contained in:
parent
1cca3f9d45
commit
55b322e04a
@ -33,12 +33,10 @@ import (
|
|||||||
|
|
||||||
// ExecOptions passed to ExecWithOptions
|
// ExecOptions passed to ExecWithOptions
|
||||||
type ExecOptions struct {
|
type ExecOptions struct {
|
||||||
Command []string
|
Command []string
|
||||||
|
|
||||||
Namespace string
|
Namespace string
|
||||||
PodName string
|
PodName string
|
||||||
ContainerName string
|
ContainerName string
|
||||||
|
|
||||||
Stdin io.Reader
|
Stdin io.Reader
|
||||||
CaptureStdout bool
|
CaptureStdout bool
|
||||||
CaptureStderr bool
|
CaptureStderr bool
|
||||||
@ -85,11 +83,10 @@ func (f *Framework) ExecWithOptions(options ExecOptions) (string, string, error)
|
|||||||
// specified container and return stdout, stderr and error
|
// specified container and return stdout, stderr and error
|
||||||
func (f *Framework) ExecCommandInContainerWithFullOutput(podName, containerName string, cmd ...string) (string, string, error) {
|
func (f *Framework) ExecCommandInContainerWithFullOutput(podName, containerName string, cmd ...string) (string, string, error) {
|
||||||
return f.ExecWithOptions(ExecOptions{
|
return f.ExecWithOptions(ExecOptions{
|
||||||
Command: cmd,
|
Command: cmd,
|
||||||
Namespace: f.Namespace.Name,
|
Namespace: f.Namespace.Name,
|
||||||
PodName: podName,
|
PodName: podName,
|
||||||
ContainerName: containerName,
|
ContainerName: containerName,
|
||||||
|
|
||||||
Stdin: nil,
|
Stdin: nil,
|
||||||
CaptureStdout: true,
|
CaptureStdout: true,
|
||||||
CaptureStderr: true,
|
CaptureStderr: true,
|
||||||
@ -114,14 +111,14 @@ func (f *Framework) ExecShellInContainer(podName, containerName string, cmd stri
|
|||||||
|
|
||||||
func (f *Framework) execCommandInPod(podName string, cmd ...string) string {
|
func (f *Framework) execCommandInPod(podName string, cmd ...string) string {
|
||||||
pod, err := f.PodClient().Get(podName, metav1.GetOptions{})
|
pod, err := f.PodClient().Get(podName, metav1.GetOptions{})
|
||||||
ExpectNoError(err, "failed to get pod")
|
ExpectNoError(err, "failed to get pod %v", podName)
|
||||||
gomega.Expect(pod.Spec.Containers).NotTo(gomega.BeEmpty())
|
gomega.Expect(pod.Spec.Containers).NotTo(gomega.BeEmpty())
|
||||||
return f.ExecCommandInContainer(podName, pod.Spec.Containers[0].Name, cmd...)
|
return f.ExecCommandInContainer(podName, pod.Spec.Containers[0].Name, cmd...)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *Framework) execCommandInPodWithFullOutput(podName string, cmd ...string) (string, string, error) {
|
func (f *Framework) execCommandInPodWithFullOutput(podName string, cmd ...string) (string, string, error) {
|
||||||
pod, err := f.PodClient().Get(podName, metav1.GetOptions{})
|
pod, err := f.PodClient().Get(podName, metav1.GetOptions{})
|
||||||
ExpectNoError(err, "failed to get pod")
|
ExpectNoError(err, "failed to get pod %v", podName)
|
||||||
gomega.Expect(pod.Spec.Containers).NotTo(gomega.BeEmpty())
|
gomega.Expect(pod.Spec.Containers).NotTo(gomega.BeEmpty())
|
||||||
return f.ExecCommandInContainerWithFullOutput(podName, pod.Spec.Containers[0].Name, cmd...)
|
return f.ExecCommandInContainerWithFullOutput(podName, pod.Spec.Containers[0].Name, cmd...)
|
||||||
}
|
}
|
||||||
@ -131,7 +128,7 @@ func (f *Framework) ExecShellInPod(podName string, cmd string) string {
|
|||||||
return f.execCommandInPod(podName, "/bin/sh", "-c", cmd)
|
return f.execCommandInPod(podName, "/bin/sh", "-c", cmd)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ExecShellInPodWithFullOutput executes the specified command on the pod with returing return stdout, stderr and error.
|
// ExecShellInPodWithFullOutput executes the specified command on the Pod and returns stdout, stderr and error.
|
||||||
func (f *Framework) ExecShellInPodWithFullOutput(podName string, cmd string) (string, string, error) {
|
func (f *Framework) ExecShellInPodWithFullOutput(podName string, cmd string) (string, string, error) {
|
||||||
return f.execCommandInPodWithFullOutput(podName, "/bin/sh", "-c", cmd)
|
return f.execCommandInPodWithFullOutput(podName, "/bin/sh", "-c", cmd)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user