grafana/pkg/build/cmd/e2etests.go
Andreas Christou 5cfd983cc2
AzureMonitor - E2E tests drone update (#57100)
* Update e2e command with video flag

* Add Cloud Plugins E2E tests to drone

* Update env variable names

* Add vault Azure secrets

* Update e2e steps

* Update secrets path

* Update image and rebuild drone file

* Readd drone changes

* Rebuild drone

* Remake drone

* Correct reference to secret

* Remake drone file

* Remove unneeded step

* Clear values in Arg query
2022-11-08 11:27:54 +01:00

51 lines
975 B
Go

package main
import (
"fmt"
"log"
"os"
"os/exec"
"github.com/grafana/grafana/pkg/build/e2eutil"
"github.com/urfave/cli/v2"
)
func EndToEndTests(c *cli.Context) error {
var (
tries = c.Int("tries")
suite = c.String("suite")
host = c.String("host")
video = c.String("video")
)
log.Printf("Running Grafana e2e tests")
port := c.Int("port")
env := append(os.Environ(), fmt.Sprintf("PORT=%d", port))
grafanaServer := e2eutil.Server(host, port)
// TODO implement grafanaServer.Start()
grafanaServer.Wait()
var err error
for i := 0; i < tries; i++ {
log.Printf("Running e2e test suite attempt #%d", i+1)
//nolint:gosec
cmd := exec.Command("./e2e/run-suite", suite, video)
cmd.Env = env
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
err = cmd.Run()
if err == nil {
break
}
log.Printf("Running the test suite failed: %s", err)
}
if err != nil {
return cli.Exit(fmt.Sprintf("e2e tests failed: %s", err), 1)
}
return nil
}