From a1c9d64907cce75bcb566f3ee394734e29b3932d Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Mon, 13 Sep 2021 21:05:02 +0300 Subject: [PATCH] fix: update the way results are retrieved for certified conformance Looks like we bumped sonobuoy library, and it silently changed a lot of things in the way it works with the results. Signed-off-by: Andrey Smirnov --- pkg/cluster/sonobuoy/sonobuoy.go | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/pkg/cluster/sonobuoy/sonobuoy.go b/pkg/cluster/sonobuoy/sonobuoy.go index 1374a7bcb..1f8f2d2a4 100644 --- a/pkg/cluster/sonobuoy/sonobuoy.go +++ b/pkg/cluster/sonobuoy/sonobuoy.go @@ -248,7 +248,14 @@ func Run(ctx context.Context, cluster cluster.K8sProvider, options *Options) err return fmt.Errorf("no result reader") } - tarR := tar.NewReader(resultR) + gzipR, err := gzip.NewReader(resultR) + if err != nil { + return err + } + + defer gzipR.Close() //nolint:errcheck + + tarR := tar.NewReader(gzipR) for { var header *tar.Header @@ -262,22 +269,22 @@ func Run(ctx context.Context, cluster cluster.K8sProvider, options *Options) err return err } - matched, _ := filepath.Match("tmp/sonobuoy/*_sonobuoy_*.tar.gz", header.Name) //nolint:errcheck + matched, _ := filepath.Match("*_sonobuoy_*.tar.gz", header.Name) //nolint:errcheck if !matched { continue } - var gzipR *gzip.Reader + var innerGzipR *gzip.Reader - gzipR, err = gzip.NewReader(tarR) + innerGzipR, err = gzip.NewReader(tarR) if err != nil { return err } - defer gzipR.Close() //nolint:errcheck + defer innerGzipR.Close() //nolint:errcheck - innnerTarR := tar.NewReader(gzipR) + innnerTarR := tar.NewReader(innerGzipR) for { header, err = innnerTarR.Next() @@ -315,7 +322,9 @@ func Run(ctx context.Context, cluster cluster.K8sProvider, options *Options) err select { case err = <-errCh: - return err + if err != nil { + return err + } default: }