in magefile.go [154:216]
func ReportFailedTests(ctx context.Context, testResultsFolder string) error {
stackVersion := os.Getenv("STACK_VERSION")
serverlessEnv := os.Getenv("SERVERLESS")
dryRunEnv := os.Getenv("DRY_RUN")
serverlessProjectEnv := os.Getenv("SERVERLESS_PROJECT")
buildURL := os.Getenv("BUILDKITE_BUILD_URL")
subscription := os.Getenv("ELASTIC_SUBSCRIPTION")
serverless := false
if serverlessEnv != "" {
var err error
serverless, err = strconv.ParseBool(serverlessEnv)
if err != err {
return fmt.Errorf("failed to parse SERVERLESS value: %w", err)
}
if serverlessProjectEnv == "" {
serverlessProjectEnv = defaultServerlessProjectType
}
}
logsDBEnabled := false
if v, found := os.LookupEnv("STACK_LOGSDB_ENABLED"); found && v == "true" {
logsDBEnabled = true
}
verboseMode := false
if v, found := os.LookupEnv("VERBOSE_MODE_ENABLED"); found && v == "true" {
verboseMode = true
}
maxIssuesString := os.Getenv("CI_MAX_TESTS_REPORTED")
maxIssues := defaultMaximumTestsReported
if maxIssuesString != "" {
var err error
maxIssues, err = strconv.Atoi(maxIssuesString)
if err != nil {
return fmt.Errorf("failed to convert to int env. variable CI_MAX_TESTS_REPORTED %s: %w", maxIssuesString, err)
}
}
dryRun := false
if dryRunEnv != "" {
var err error
dryRun, err = strconv.ParseBool(dryRunEnv)
if err != err {
return fmt.Errorf("failed to parse DRY_RUN value: %w", err)
}
}
options := testsreporter.CheckOptions{
Serverless: serverless,
ServerlessProject: serverlessProjectEnv,
LogsDB: logsDBEnabled,
StackVersion: stackVersion,
Subscription: subscription,
BuildURL: buildURL,
MaxPreviousLinks: defaultPreviousLinksNumber,
MaxTestsReported: maxIssues,
DryRun: dryRun,
Verbose: verboseMode,
}
return testsreporter.Check(ctx, testResultsFolder, options)
}