Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: openyurtio/openyurt
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: e0ffb287e3ab4b8b9b98d4dbd0093db1bb915546
Choose a base ref
..
head repository: openyurtio/openyurt
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 3794138efad7ffb357a5755b1011fec9ea15c226
Choose a head ref
Showing with 19 additions and 4 deletions.
  1. +2 −2 test/e2e/cmd/init/converter.go
  2. +17 −2 test/e2e/cmd/init/util/kubernetes/util.go
4 changes: 2 additions & 2 deletions test/e2e/cmd/init/converter.go
Original file line number Diff line number Diff line change
@@ -149,7 +149,7 @@ func (c *ClusterConverter) installYurthubByHelm() error {
hubPodName := fmt.Sprintf("yurt-hub-%s", c.EdgeNodes[i])
pod, logErr := c.ClientSet.CoreV1().Pods("kube-system").Get(context.TODO(), hubPodName, metav1.GetOptions{})
if logErr == nil {
kubeutil.PrintPodLog(c.ClientSet, pod, os.Stderr)
kubeutil.DumpPod(c.ClientSet, pod, os.Stderr)
}
}
return err
@@ -264,7 +264,7 @@ func (c *ClusterConverter) installYurtManagerByHelm() error {
klog.Errorf("yurt-manager pod doesn't exist")
return err
}
if logErr = kubeutil.PrintPodLog(c.ClientSet, &podList.Items[0], os.Stderr); logErr != nil {
if logErr = kubeutil.DumpPod(c.ClientSet, &podList.Items[0], os.Stderr); logErr != nil {
return err
}
return err
19 changes: 17 additions & 2 deletions test/e2e/cmd/init/util/kubernetes/util.go
Original file line number Diff line number Diff line change
@@ -89,7 +89,7 @@ func RunJobAndCleanup(cliSet kubeclientset.Interface, job *batchv1.Job, timeout,
if len(podList.Items) == 0 {
return
}
if err := PrintPodLog(cliSet, &podList.Items[0], os.Stderr); err != nil {
if err := DumpPod(cliSet, &podList.Items[0], os.Stderr); err != nil {
klog.Errorf("failed to print job pod logs, %v", err)
}
}()
@@ -127,14 +127,29 @@ func RunJobAndCleanup(cliSet kubeclientset.Interface, job *batchv1.Job, timeout,
}
}

func PrintPodLog(client kubeclientset.Interface, pod *corev1.Pod, w io.Writer) error {
func DumpPod(client kubeclientset.Interface, pod *corev1.Pod, w io.Writer) error {
klog.Infof("dump pod(%s/%s) info: %#+v", pod.Namespace, pod.Name, pod)
klog.Infof("start to print logs for pod(%s/%s):", pod.Namespace, pod.Name)
req := client.CoreV1().Pods(pod.GetNamespace()).GetLogs(pod.Name, &corev1.PodLogOptions{})
if err := kubectllogs.DefaultConsumeRequest(req, w); err != nil {
klog.Errorf("failed to print logs for pod(%s/%s), %v", pod.Namespace, pod.Name, err)
return err
}

klog.Infof("start to print events for pod(%s/%s):", pod.Namespace, pod.Name)
fieldSelector := "involvedObject.name=" + pod.Name
eventList, err := client.CoreV1().Events(pod.Namespace).List(context.Background(), metav1.ListOptions{
FieldSelector: fieldSelector,
})
if err != nil {
klog.Errorf("failed to dump events for pod(%s/%s), %v", pod.Namespace, pod.Name, err)
return err
}

for _, event := range eventList.Items {
klog.Infof("Pod(%s/%s) Event: %v, Type: %v, Reason: %v, Message: %v", pod.Namespace, pod.Name, event.Name, event.Type, event.Reason, event.Message)
}

return nil
}