github.com/redhat-appstudio/e2e-tests@v0.0.0-20240520140907-9709f6f59323/pkg/clients/tekton/containers.go (about) 1 package tekton 2 3 import ( 4 "context" 5 "io" 6 7 corev1 "k8s.io/api/core/v1" 8 ) 9 10 // fetchContainerLog fetches logs of a given container. 11 func (t *TektonController) fetchContainerLog(podName, containerName, namespace string) (string, error) { 12 podClient := t.KubeInterface().CoreV1().Pods(namespace) 13 req := podClient.GetLogs(podName, &corev1.PodLogOptions{Container: containerName}) 14 readCloser, err := req.Stream(context.Background()) 15 log := "" 16 if err != nil { 17 return log, err 18 } 19 defer readCloser.Close() 20 b, err := io.ReadAll(readCloser) 21 if err != nil { 22 return log, err 23 } 24 return string(b[:]), nil 25 }