func (err executionErr) Error() string {
	var errsStr string
	for _, e := range err.errs {
		errsStr += fmt.Sprintf("%s\n", e)
	}
	return errsStr
}
Error implements Error interface
package main
import (
	"bytes"
	"encoding/json"
	"fmt"
	"os"
	"os/exec"
	"path/filepath"
	"strings"
	"time"
	"github.com/newrelic/infra-integrations-sdk/args"
	"github.com/newrelic/infra-integrations-sdk/integration"
	"github.com/sirupsen/logrus"
	v1 "k8s.io/api/core/v1"
	"k8s.io/apimachinery/pkg/util/rand"
	_ "github.com/newrelic/nri-kubernetes/v2/e2e/gcp"
	"github.com/newrelic/nri-kubernetes/v2/e2e/helm"
	"github.com/newrelic/nri-kubernetes/v2/e2e/jsonschema"
	"github.com/newrelic/nri-kubernetes/v2/e2e/k8s"
	"github.com/newrelic/nri-kubernetes/v2/e2e/retry"
	"github.com/newrelic/nri-kubernetes/v2/e2e/scenario"
	"github.com/newrelic/nri-kubernetes/v2/e2e/timer"
)
var cliArgs = struct {
	NrChartPath                string `default:"e2e/charts/newrelic-infrastructure-k8s-e2e" help:"Path to the newrelic-infrastructure-k8s-e2e chart"`
	SchemasDirectory           string `default:"e2e/schema" help:"Directory where JSON schema files are defined"`
	IntegrationImageTag        string `default:"1.0.0" help:"Integration image tag"`
	IntegrationImageRepository string `default:"newrelic/infrastructure-k8s" help:"Integration image repository"`
	Rbac                       bool   `default:"false" help:"Enable rbac"`
	ClusterName                string `help:"Identifier of your cluster. You could use it later to filter data in your New Relic account"`
	NrLicenseKey               string `help:"New Relic account license key"`
	Verbose                    bool   `default:"false" help:"When enabled, more detailed output will be printed"`
	CollectorURL               string `default:"https://staging-infra-api.newrelic.com" help:"New Relic backend collector url"`
	Context                    string `default:"" help:"Kubernetes context"`
	CleanBeforeRun             bool   `default:"true" help:"Clean the cluster before running the tests"`
	FailFast                   bool   `default:"false" help:"Fail the whole suit on the first failure"`
	Unprivileged               bool   `default:"false" help:"Deploy and run the integration in unprivileged mode"`
}{}
const (
	nrLabel        = "name=newrelic-infra"
	namespace      = "default"
	nrContainer    = "newrelic-infra"
	ksmLabel       = "app.kubernetes.io/name=kube-state-metrics"
	minikubeFlavor = "Minikube"
	unknownFlavor  = "Unknown"
)
type integrationData struct {
	expectedJobs []job
	podName      string
	stdOut       []byte
	stdErr       []byte
}
type executionErr struct {
	errs []error
}