Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into fix-integrations-logsdb
Browse files Browse the repository at this point in the history
  • Loading branch information
jsoriano committed Sep 4, 2024
2 parents 59cf4d4 + 38f691e commit b995f9c
Show file tree
Hide file tree
Showing 10 changed files with 76 additions and 26 deletions.
13 changes: 13 additions & 0 deletions .buildkite/pipeline.schedule-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,19 @@ steps:
- step: "check"
allow_failure: false

- label: "Check integrations local stacks - Stack Version v8.16 - LogsDB"
trigger: "integrations"
build:
env:
SERVERLESS: "false"
FORCE_CHECK_ALL: "true"
STACK_VERSION: 8.16.0-SNAPSHOT
STACK_LOGSDB_ENABLED: "true"
PUBLISH_COVERAGE_REPORTS: "false"
depends_on:
- step: "check"
allow_failure: false

- label: "Check integrations in serverless - project: Observability"
key: "trigger-integrations-serverless-obs"
trigger: "integrations-serverless"
Expand Down
2 changes: 1 addition & 1 deletion .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,4 +107,4 @@ steps:
soft_fail: true
# run this step when if it is triggered by the daily job
if: >
build.source == "trigger_job" && build.env('BUILDKITE_TRIGGERED_FROM_BUILD_PIPELINE_SLUG') == "integrations-schedule-daily"
build.source == "trigger_job" && build.env('BUILDKITE_TRIGGERED_FROM_BUILD_PIPELINE_SLUG') == "integrations-schedule-daily" && build.env('STACK_LOGSDB_ENABLED') != "true"
2 changes: 1 addition & 1 deletion .buildkite/scripts/common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -503,7 +503,7 @@ prepare_stack() {
fi
fi

if [ "${STACK_LOGSDB_ENABLED}" == "true" ]; then
if [ "${STACK_LOGSDB_ENABLED:-false}" == "true" ]; then
args="${args} -U stack.logsdb_enabled=true"
fi

Expand Down
5 changes: 4 additions & 1 deletion dev/testsreporter/_static/summary.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
{{ if .serverless -}}
- Serverless: {{ .serverlessProject}}
{{ end -}}
{{ if .logsDB -}}
- LogsDB: enabled
{{ end -}}
- Package: {{ .packageName }}
- Failing test: {{ .testName }}
{{ if ne .dataStream "" -}}
Expand All @@ -14,4 +17,4 @@
{{- range .owners }}
- {{ . }}
{{- end }}
{{ end -}}
{{ end -}}
1 change: 1 addition & 0 deletions dev/testsreporter/format.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ func (r ResultsFormatter) Summary() string {
"stackVersion": r.result.StackVersion,
"serverless": r.result.Serverless,
"serverlessProject": r.result.ServerlessProject,
"logsDB": r.result.LogsDB,
"packageName": r.result.PackageName,
"testName": r.result.Name,
"dataStream": r.result.DataStream,
Expand Down
18 changes: 18 additions & 0 deletions dev/testsreporter/format_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,24 @@ func TestSummary(t *testing.T) {
expected: `- Serverless: observability
- Package: foo
- Failing test: mytest
- Owners:
- team1
- team2
`,
},
{
title: "summary logsdb",
packageError: PackageError{
LogsDB: true,
PackageName: "foo",
testCase: testCase{
Name: "mytest",
},
Teams: []string{"team1", "team2"},
},
expected: `- LogsDB: enabled
- Package: foo
- Failing test: mytest
- Owners:
- team1
- team2
Expand Down
6 changes: 6 additions & 0 deletions dev/testsreporter/packageerror.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ type PackageError struct {
testCase
Serverless bool
ServerlessProject string
LogsDB bool
StackVersion string
BuildURL string
Teams []string
Expand All @@ -27,6 +28,7 @@ type PackageError struct {
type PackageErrorOptions struct {
Serverless bool
ServerlessProject string
LogsDB bool
StackVersion string
BuildURL string
TestCase testCase
Expand All @@ -37,6 +39,7 @@ func NewPackageError(options PackageErrorOptions) (*PackageError, error) {
p := PackageError{
Serverless: options.Serverless,
ServerlessProject: options.ServerlessProject,
LogsDB: options.LogsDB,
StackVersion: options.StackVersion,
BuildURL: options.BuildURL,
testCase: options.TestCase,
Expand Down Expand Up @@ -66,6 +69,9 @@ func NewPackageError(options PackageErrorOptions) (*PackageError, error) {
func (p PackageError) String() string {
var sb strings.Builder

if p.LogsDB {
sb.WriteString("[LogsDB] ")
}
if p.Serverless {
sb.WriteString(fmt.Sprintf("[Serverless %s] ", p.ServerlessProject))
}
Expand Down
30 changes: 14 additions & 16 deletions dev/testsreporter/testsreporter.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,21 @@ import (
"strings"
)

type checkOptions struct {
ResultsPath string
type CheckOptions struct {
Serverless bool
ServerlessProject string
LogsDB bool
StackVersion string
BuildURL string
CodeownersPath string

MaxPreviousLinks int
MaxTestsReported int
}

func Check(resultsPath, buildURL, stackVersion string, serverless bool, serverlessProject string, maxPreviousLinks, maxTestsReported int) error {
func Check(resultsPath string, options CheckOptions) error {
fmt.Println("path: ", resultsPath)
packageErrors, err := errorsFromTests(checkOptions{
ResultsPath: resultsPath,
Serverless: serverless,
ServerlessProject: serverlessProject,
StackVersion: stackVersion,
BuildURL: buildURL,
})
packageErrors, err := errorsFromTests(resultsPath, options)
if err != nil {
return err
}
Expand All @@ -40,11 +37,11 @@ func Check(resultsPath, buildURL, stackVersion string, serverless bool, serverle

aReporter := reporter{
ghCli: ghCli,
maxPreviousLinks: maxPreviousLinks,
maxPreviousLinks: options.MaxPreviousLinks,
}

if len(packageErrors) > maxTestsReported {
fmt.Printf("Skip creating GitHub issues, hit the maximum number (%d) of tests to be reported. Total failing tests: %d.\n", maxTestsReported, len(packageErrors))
if len(packageErrors) > options.MaxTestsReported {
fmt.Printf("Skip creating GitHub issues, hit the maximum number (%d) of tests to be reported. Total failing tests: %d.\n", options.MaxTestsReported, len(packageErrors))
return nil
}

Expand All @@ -53,7 +50,7 @@ func Check(resultsPath, buildURL, stackVersion string, serverless bool, serverle
ctx := context.TODO()
r := ResultsFormatter{
result: pError,
maxPreviousLinks: maxPreviousLinks,
maxPreviousLinks: options.MaxPreviousLinks,
}
fmt.Println()
fmt.Println("---- Issue ----")
Expand All @@ -77,9 +74,9 @@ func Check(resultsPath, buildURL, stackVersion string, serverless bool, serverle
return multiErr
}

func errorsFromTests(options checkOptions) ([]PackageError, error) {
func errorsFromTests(resultsPath string, options CheckOptions) ([]PackageError, error) {
var packageErrors []PackageError
err := filepath.Walk(options.ResultsPath, func(path string, info os.FileInfo, err error) error {
err := filepath.Walk(resultsPath, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
Expand All @@ -98,6 +95,7 @@ func errorsFromTests(options checkOptions) ([]PackageError, error) {
packageError, err := NewPackageError(PackageErrorOptions{
Serverless: options.Serverless,
ServerlessProject: options.ServerlessProject,
LogsDB: options.LogsDB,
StackVersion: options.StackVersion,
BuildURL: options.BuildURL,
TestCase: c,
Expand Down
9 changes: 3 additions & 6 deletions dev/testsreporter/testsreporter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,7 @@ func TestErrorsFromTest(t *testing.T) {

for _, c := range cases {
t.Run(c.title, func(t *testing.T) {
errors, err := errorsFromTests(checkOptions{
ResultsPath: c.xmlFolder,
errors, err := errorsFromTests(c.xmlFolder, CheckOptions{
Serverless: false,
StackVersion: "",
BuildURL: "",
Expand Down Expand Up @@ -134,8 +133,7 @@ func TestErrorDataStream(t *testing.T) {

for _, c := range cases {
t.Run(c.title, func(t *testing.T) {
errors, err := errorsFromTests(checkOptions{
ResultsPath: c.xmlFolder,
errors, err := errorsFromTests(c.xmlFolder, CheckOptions{
Serverless: false,
StackVersion: "",
BuildURL: "",
Expand Down Expand Up @@ -175,8 +173,7 @@ func TestErrorPackageName(t *testing.T) {

for _, c := range cases {
t.Run(c.title, func(t *testing.T) {
errors, err := errorsFromTests(checkOptions{
ResultsPath: c.xmlFolder,
errors, err := errorsFromTests(c.xmlFolder, CheckOptions{
Serverless: false,
StackVersion: "",
BuildURL: "",
Expand Down
16 changes: 15 additions & 1 deletion magefile.go
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,11 @@ func ReportFailedTests(testResultsFolder string) error {
}
}

logsDBEnabled := false
if v, found := os.LookupEnv("STACK_LOGSDB_ENABLED"); found && v == "true" {
logsDBEnabled = true
}

maxIssuesString := os.Getenv("CI_MAX_TESTS_REPORTED")
maxIssues := defaultMaximumTestsReported
if maxIssuesString != "" {
Expand All @@ -176,6 +181,15 @@ func ReportFailedTests(testResultsFolder string) error {
}
}

mg.Deps(mg.F(testsreporter.Check, testResultsFolder, buildURL, stackVersion, serverless, serverlessProjectEnv, defaultPreviousLinksNumber, maxIssues))
options := testsreporter.CheckOptions{
Serverless: serverless,
ServerlessProject: serverlessProjectEnv,
LogsDB: logsDBEnabled,
StackVersion: stackVersion,
BuildURL: buildURL,
MaxPreviousLinks: defaultPreviousLinksNumber,
MaxTestsReported: maxIssues,
}
mg.Deps(mg.F(testsreporter.Check, testResultsFolder, options))
return nil
}

0 comments on commit b995f9c

Please sign in to comment.