From b48a4c0efbba5bfc02a734e8127298f372820d24 Mon Sep 17 00:00:00 2001 From: Sebastian Choren Date: Thu, 26 May 2022 13:43:42 -0300 Subject: [PATCH 1/6] Fix server mod name (#577) --- server/analytics/analytics.go | 2 +- server/analytics/analytics_test.go | 4 ++-- server/app/app.go | 18 ++++++++--------- server/assertions/assertions.go | 6 +++--- server/assertions/assetions_test.go | 10 +++++----- server/assertions/comparator/basic_test.go | 2 +- .../assertions/comparator/comparators_test.go | 2 +- server/assertions/selectors/builder.go | 4 ++-- server/assertions/selectors/builder_test.go | 2 +- server/assertions/selectors/parser_test.go | 2 +- server/assertions/selectors/pseudo_classes.go | 2 +- server/assertions/selectors/search.go | 2 +- server/assertions/selectors/selector.go | 4 ++-- server/assertions/selectors/selector_test.go | 6 +++--- server/config/config_test.go | 2 +- server/executor/assertion_runner.go | 4 ++-- server/executor/assertion_runner_test.go | 8 ++++---- server/executor/executor.go | 2 +- server/executor/executor_test.go | 6 +++--- server/executor/integration_test.go | 8 ++++---- server/executor/runner.go | 4 ++-- server/executor/runner_test.go | 8 ++++---- server/executor/trace_poller.go | 8 ++++---- server/go.mod | 2 +- server/http/controller.go | 20 +++++++++---------- server/http/mappings.go | 8 ++++---- server/http/websocket/router.go | 2 +- server/http/websocket/subscribe.go | 2 +- server/http/websocket/unsubscribe.go | 2 +- server/main.go | 8 ++++---- server/migrations/migration_test.go | 4 ++-- server/model/tests.go | 4 ++-- server/subscription/manager_test.go | 2 +- server/testdb/definitions.go | 2 +- server/testdb/definitions_test.go | 4 ++-- server/testdb/mock.go | 2 +- server/testdb/postgres.go | 4 ++-- server/testdb/postgres_test.go | 6 +++--- server/testdb/runs.go | 2 +- server/testdb/runs_test.go | 8 ++++---- server/testdb/tests.go | 2 +- server/testdb/tests_test.go | 4 ++-- server/testmock/app.go | 6 +++--- server/testmock/database.go | 4 ++-- server/tracedb/jaegerdb.go | 2 +- server/tracedb/jaegerdb_test.go | 4 ++-- server/tracedb/tempodb.go | 2 +- server/tracedb/tempodb_test.go | 4 ++-- server/tracedb/tracedb.go | 2 +- server/tracedb/tracedb_test.go | 4 ++-- server/traces/traces_test.go | 4 ++-- 51 files changed, 118 insertions(+), 118 deletions(-) diff --git a/server/analytics/analytics.go b/server/analytics/analytics.go index 0f9a81e7fa..b68f948f63 100644 --- a/server/analytics/analytics.go +++ b/server/analytics/analytics.go @@ -10,7 +10,7 @@ import ( "runtime" "github.com/denisbrodbeck/machineid" - "github.com/kubeshop/tracetest/config" + "github.com/kubeshop/tracetest/server/config" ) const ( diff --git a/server/analytics/analytics_test.go b/server/analytics/analytics_test.go index 52a51af11f..69658cfe9d 100644 --- a/server/analytics/analytics_test.go +++ b/server/analytics/analytics_test.go @@ -3,8 +3,8 @@ package analytics_test import ( "testing" - "github.com/kubeshop/tracetest/analytics" - "github.com/kubeshop/tracetest/config" + "github.com/kubeshop/tracetest/server/analytics" + "github.com/kubeshop/tracetest/server/config" "github.com/stretchr/testify/assert" ) diff --git a/server/app/app.go b/server/app/app.go index 9ef5a2119f..9d037e17c7 100644 --- a/server/app/app.go +++ b/server/app/app.go @@ -9,15 +9,15 @@ import ( "regexp" "text/template" - "github.com/kubeshop/tracetest/analytics" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/executor" - httpServer "github.com/kubeshop/tracetest/http" - "github.com/kubeshop/tracetest/http/websocket" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/openapi" - "github.com/kubeshop/tracetest/subscription" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/analytics" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/executor" + httpServer "github.com/kubeshop/tracetest/server/http" + "github.com/kubeshop/tracetest/server/http/websocket" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/openapi" + "github.com/kubeshop/tracetest/server/subscription" + "github.com/kubeshop/tracetest/server/tracedb" ) type App struct { diff --git a/server/assertions/assertions.go b/server/assertions/assertions.go index 5fb9f426f8..c688eab1ec 100644 --- a/server/assertions/assertions.go +++ b/server/assertions/assertions.go @@ -1,9 +1,9 @@ package assertions import ( - "github.com/kubeshop/tracetest/assertions/selectors" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/selectors" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/traces" "go.opentelemetry.io/otel/trace" ) diff --git a/server/assertions/assetions_test.go b/server/assertions/assetions_test.go index fb85505d1f..dea525dee0 100644 --- a/server/assertions/assetions_test.go +++ b/server/assertions/assetions_test.go @@ -3,11 +3,11 @@ package assertions_test import ( "testing" - "github.com/kubeshop/tracetest/assertions" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/traces" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/assertions/comparator/basic_test.go b/server/assertions/comparator/basic_test.go index 2ae80b8cfd..62add5de09 100644 --- a/server/assertions/comparator/basic_test.go +++ b/server/assertions/comparator/basic_test.go @@ -3,7 +3,7 @@ package comparator_test import ( "testing" - "github.com/kubeshop/tracetest/assertions/comparator" + "github.com/kubeshop/tracetest/server/assertions/comparator" "github.com/stretchr/testify/assert" ) diff --git a/server/assertions/comparator/comparators_test.go b/server/assertions/comparator/comparators_test.go index c42fbf5e2e..3b0f27fb19 100644 --- a/server/assertions/comparator/comparators_test.go +++ b/server/assertions/comparator/comparators_test.go @@ -3,7 +3,7 @@ package comparator_test import ( "testing" - "github.com/kubeshop/tracetest/assertions/comparator" + "github.com/kubeshop/tracetest/server/assertions/comparator" "github.com/stretchr/testify/assert" ) diff --git a/server/assertions/selectors/builder.go b/server/assertions/selectors/builder.go index 77a48d36cd..31bb74c7da 100644 --- a/server/assertions/selectors/builder.go +++ b/server/assertions/selectors/builder.go @@ -4,8 +4,8 @@ import ( "fmt" "github.com/alecthomas/participle/v2" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/traces" ) var defaultParser *SelectorParser diff --git a/server/assertions/selectors/builder_test.go b/server/assertions/selectors/builder_test.go index 01a2353c63..3b247705af 100644 --- a/server/assertions/selectors/builder_test.go +++ b/server/assertions/selectors/builder_test.go @@ -3,7 +3,7 @@ package selectors_test import ( "testing" - "github.com/kubeshop/tracetest/assertions/selectors" + "github.com/kubeshop/tracetest/server/assertions/selectors" "github.com/stretchr/testify/assert" ) diff --git a/server/assertions/selectors/parser_test.go b/server/assertions/selectors/parser_test.go index eec6b2bbf3..7ad79e3496 100644 --- a/server/assertions/selectors/parser_test.go +++ b/server/assertions/selectors/parser_test.go @@ -3,7 +3,7 @@ package selectors_test import ( "testing" - "github.com/kubeshop/tracetest/assertions/selectors" + "github.com/kubeshop/tracetest/server/assertions/selectors" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/assertions/selectors/pseudo_classes.go b/server/assertions/selectors/pseudo_classes.go index a1e03ce2ed..dc76afa597 100644 --- a/server/assertions/selectors/pseudo_classes.go +++ b/server/assertions/selectors/pseudo_classes.go @@ -1,7 +1,7 @@ package selectors import ( - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/traces" ) type PseudoClass interface { diff --git a/server/assertions/selectors/search.go b/server/assertions/selectors/search.go index 50e3617de3..a0eeca1a5c 100644 --- a/server/assertions/selectors/search.go +++ b/server/assertions/selectors/search.go @@ -1,7 +1,7 @@ package selectors import ( - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/traces" "go.opentelemetry.io/otel/trace" ) diff --git a/server/assertions/selectors/selector.go b/server/assertions/selectors/selector.go index 9cc1afc8d2..c20a214aee 100644 --- a/server/assertions/selectors/selector.go +++ b/server/assertions/selectors/selector.go @@ -4,8 +4,8 @@ import ( "fmt" "strconv" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/traces" ) func FromSpanQuery(sq model.SpanQuery) Selector { diff --git a/server/assertions/selectors/selector_test.go b/server/assertions/selectors/selector_test.go index fbc6e07f42..985bd565eb 100644 --- a/server/assertions/selectors/selector_test.go +++ b/server/assertions/selectors/selector_test.go @@ -3,9 +3,9 @@ package selectors_test import ( "testing" - "github.com/kubeshop/tracetest/assertions/selectors" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/selectors" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/traces" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/otel/trace" diff --git a/server/config/config_test.go b/server/config/config_test.go index 78d1f48b6f..0160d2df34 100644 --- a/server/config/config_test.go +++ b/server/config/config_test.go @@ -4,7 +4,7 @@ import ( "strings" "testing" - "github.com/kubeshop/tracetest/config" + "github.com/kubeshop/tracetest/server/config" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/collector/config/configgrpc" diff --git a/server/executor/assertion_runner.go b/server/executor/assertion_runner.go index e48daef467..35593c508a 100644 --- a/server/executor/assertion_runner.go +++ b/server/executor/assertion_runner.go @@ -5,8 +5,8 @@ import ( "fmt" "time" - "github.com/kubeshop/tracetest/assertions" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/assertions" + "github.com/kubeshop/tracetest/server/model" ) type AssertionRequest struct { diff --git a/server/executor/assertion_runner_test.go b/server/executor/assertion_runner_test.go index 5dc2139bd3..b8b1ce2925 100644 --- a/server/executor/assertion_runner_test.go +++ b/server/executor/assertion_runner_test.go @@ -8,10 +8,10 @@ import ( "os" "testing" - "github.com/kubeshop/tracetest/executor" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testmock" + "github.com/kubeshop/tracetest/server/executor" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testmock" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/executor/executor.go b/server/executor/executor.go index c3bf44f859..40572ecd8d 100644 --- a/server/executor/executor.go +++ b/server/executor/executor.go @@ -8,7 +8,7 @@ import ( "net/http" "strings" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/model" "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp" "go.opentelemetry.io/contrib/propagators/aws/xray" "go.opentelemetry.io/contrib/propagators/b3" diff --git a/server/executor/executor_test.go b/server/executor/executor_test.go index 1286bee7dc..5b07e7b9e1 100644 --- a/server/executor/executor_test.go +++ b/server/executor/executor_test.go @@ -6,9 +6,9 @@ import ( "net/http/httptest" "testing" - "github.com/kubeshop/tracetest/executor" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/executor" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" "github.com/stretchr/testify/assert" ) diff --git a/server/executor/integration_test.go b/server/executor/integration_test.go index f0b1f462b0..4dfcd24598 100644 --- a/server/executor/integration_test.go +++ b/server/executor/integration_test.go @@ -9,10 +9,10 @@ import ( "testing" "time" - "github.com/kubeshop/tracetest/app" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/openapi" - "github.com/kubeshop/tracetest/testmock" + "github.com/kubeshop/tracetest/server/app" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/openapi" + "github.com/kubeshop/tracetest/server/testmock" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/executor/runner.go b/server/executor/runner.go index 0841836b59..fc9ec7b01b 100644 --- a/server/executor/runner.go +++ b/server/executor/runner.go @@ -5,8 +5,8 @@ import ( "fmt" "time" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" "go.opentelemetry.io/otel/trace" ) diff --git a/server/executor/runner_test.go b/server/executor/runner_test.go index fe8c700568..d5b40d1d82 100644 --- a/server/executor/runner_test.go +++ b/server/executor/runner_test.go @@ -5,10 +5,10 @@ import ( "testing" "time" - "github.com/kubeshop/tracetest/executor" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testdb" + "github.com/kubeshop/tracetest/server/executor" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testdb" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" diff --git a/server/executor/trace_poller.go b/server/executor/trace_poller.go index 831e5bd3ef..3d285109d0 100644 --- a/server/executor/trace_poller.go +++ b/server/executor/trace_poller.go @@ -7,10 +7,10 @@ import ( "math" "time" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/subscription" - "github.com/kubeshop/tracetest/tracedb" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/subscription" + "github.com/kubeshop/tracetest/server/tracedb" + "github.com/kubeshop/tracetest/server/traces" v1 "go.opentelemetry.io/proto/otlp/trace/v1" ) diff --git a/server/go.mod b/server/go.mod index 5fbf02a9e7..b1022ec586 100644 --- a/server/go.mod +++ b/server/go.mod @@ -1,4 +1,4 @@ -module github.com/kubeshop/tracetest +module github.com/kubeshop/tracetest/server go 1.18 diff --git a/server/http/controller.go b/server/http/controller.go index 511fcece5a..c3b798bcb7 100644 --- a/server/http/controller.go +++ b/server/http/controller.go @@ -8,16 +8,16 @@ import ( "net/http" "github.com/google/uuid" - "github.com/kubeshop/tracetest/analytics" - "github.com/kubeshop/tracetest/assertions" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/assertions/selectors" - "github.com/kubeshop/tracetest/executor" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/openapi" - "github.com/kubeshop/tracetest/testdb" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/analytics" + "github.com/kubeshop/tracetest/server/assertions" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/assertions/selectors" + "github.com/kubeshop/tracetest/server/executor" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/openapi" + "github.com/kubeshop/tracetest/server/testdb" + "github.com/kubeshop/tracetest/server/tracedb" ) var IDGen = id.NewRandGenerator() diff --git a/server/http/mappings.go b/server/http/mappings.go index ce0aec6711..24b164d141 100644 --- a/server/http/mappings.go +++ b/server/http/mappings.go @@ -5,10 +5,10 @@ import ( "fmt" "github.com/google/uuid" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/openapi" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/openapi" + "github.com/kubeshop/tracetest/server/traces" "go.opentelemetry.io/otel/trace" ) diff --git a/server/http/websocket/router.go b/server/http/websocket/router.go index 81a813a262..f4a1afb114 100644 --- a/server/http/websocket/router.go +++ b/server/http/websocket/router.go @@ -7,7 +7,7 @@ import ( "net/http" "github.com/gorilla/websocket" - "github.com/kubeshop/tracetest/subscription" + "github.com/kubeshop/tracetest/server/subscription" ) type MessageExecutor interface { diff --git a/server/http/websocket/subscribe.go b/server/http/websocket/subscribe.go index 7f08462e4f..7a229e0645 100644 --- a/server/http/websocket/subscribe.go +++ b/server/http/websocket/subscribe.go @@ -5,7 +5,7 @@ import ( "fmt" "github.com/gorilla/websocket" - "github.com/kubeshop/tracetest/subscription" + "github.com/kubeshop/tracetest/server/subscription" ) type subscriptionMessage struct { diff --git a/server/http/websocket/unsubscribe.go b/server/http/websocket/unsubscribe.go index a362880155..de364c1f6f 100644 --- a/server/http/websocket/unsubscribe.go +++ b/server/http/websocket/unsubscribe.go @@ -5,7 +5,7 @@ import ( "fmt" "github.com/gorilla/websocket" - "github.com/kubeshop/tracetest/subscription" + "github.com/kubeshop/tracetest/server/subscription" ) type unsubscribeMessage struct { diff --git a/server/main.go b/server/main.go index 19f5983c82..d0933f47c4 100644 --- a/server/main.go +++ b/server/main.go @@ -13,10 +13,10 @@ import ( "flag" "log" - "github.com/kubeshop/tracetest/app" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/testdb" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/app" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/testdb" + "github.com/kubeshop/tracetest/server/tracedb" ) var cfg = flag.String("config", "config.yaml", "path to the config file") diff --git a/server/migrations/migration_test.go b/server/migrations/migration_test.go index 266d1abc36..d31f09eced 100644 --- a/server/migrations/migration_test.go +++ b/server/migrations/migration_test.go @@ -7,8 +7,8 @@ import ( "github.com/golang-migrate/migrate/v4" "github.com/golang-migrate/migrate/v4/database/postgres" - "github.com/kubeshop/tracetest/testdb" - "github.com/kubeshop/tracetest/testmock" + "github.com/kubeshop/tracetest/server/testdb" + "github.com/kubeshop/tracetest/server/testmock" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/model/tests.go b/server/model/tests.go index cb40249813..924764fcc8 100644 --- a/server/model/tests.go +++ b/server/model/tests.go @@ -7,8 +7,8 @@ import ( "time" "github.com/google/uuid" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/traces" "go.opentelemetry.io/otel/trace" ) diff --git a/server/subscription/manager_test.go b/server/subscription/manager_test.go index 7dad027a6d..f4322f4069 100644 --- a/server/subscription/manager_test.go +++ b/server/subscription/manager_test.go @@ -3,7 +3,7 @@ package subscription_test import ( "testing" - "github.com/kubeshop/tracetest/subscription" + "github.com/kubeshop/tracetest/server/subscription" "github.com/stretchr/testify/assert" ) diff --git a/server/testdb/definitions.go b/server/testdb/definitions.go index 34b72234cd..bf776616ca 100644 --- a/server/testdb/definitions.go +++ b/server/testdb/definitions.go @@ -6,7 +6,7 @@ import ( "encoding/json" "fmt" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/model" ) var _ model.DefinitionRepository = &postgresDB{} diff --git a/server/testdb/definitions_test.go b/server/testdb/definitions_test.go index c1f80c2fac..ee40c533e1 100644 --- a/server/testdb/definitions_test.go +++ b/server/testdb/definitions_test.go @@ -4,8 +4,8 @@ import ( "context" "testing" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/model" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/testdb/mock.go b/server/testdb/mock.go index 4b47ccd451..11bb1627ca 100644 --- a/server/testdb/mock.go +++ b/server/testdb/mock.go @@ -4,7 +4,7 @@ import ( "context" "github.com/google/uuid" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/model" "github.com/stretchr/testify/mock" "go.opentelemetry.io/otel/trace" ) diff --git a/server/testdb/postgres.go b/server/testdb/postgres.go index 8370fe90a9..9557f1bccb 100644 --- a/server/testdb/postgres.go +++ b/server/testdb/postgres.go @@ -8,8 +8,8 @@ import ( "github.com/golang-migrate/migrate/v4" "github.com/golang-migrate/migrate/v4/database/postgres" _ "github.com/golang-migrate/migrate/v4/source/file" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/model" ) type postgresDB struct { diff --git a/server/testdb/postgres_test.go b/server/testdb/postgres_test.go index 42f2b257b3..c299b20b1f 100644 --- a/server/testdb/postgres_test.go +++ b/server/testdb/postgres_test.go @@ -5,9 +5,9 @@ import ( "testing" "time" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testdb" - "github.com/kubeshop/tracetest/testmock" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testdb" + "github.com/kubeshop/tracetest/server/testmock" ) func getDB() (model.Repository, func()) { diff --git a/server/testdb/runs.go b/server/testdb/runs.go index 1075b51eee..941788cb16 100644 --- a/server/testdb/runs.go +++ b/server/testdb/runs.go @@ -7,7 +7,7 @@ import ( "fmt" "github.com/google/uuid" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/model" "go.opentelemetry.io/otel/trace" ) diff --git a/server/testdb/runs_test.go b/server/testdb/runs_test.go index fd6a4bd55b..ffc58e2932 100644 --- a/server/testdb/runs_test.go +++ b/server/testdb/runs_test.go @@ -5,10 +5,10 @@ import ( "testing" "time" - "github.com/kubeshop/tracetest/assertions/comparator" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testdb" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/assertions/comparator" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testdb" + "github.com/kubeshop/tracetest/server/traces" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/otel/trace" diff --git a/server/testdb/tests.go b/server/testdb/tests.go index e4ce8265fd..83bc3c6739 100644 --- a/server/testdb/tests.go +++ b/server/testdb/tests.go @@ -8,7 +8,7 @@ import ( "fmt" "github.com/google/uuid" - "github.com/kubeshop/tracetest/model" + "github.com/kubeshop/tracetest/server/model" ) var _ model.TestRepository = &postgresDB{} diff --git a/server/testdb/tests_test.go b/server/testdb/tests_test.go index 54a53dcdc0..064d1e75ab 100644 --- a/server/testdb/tests_test.go +++ b/server/testdb/tests_test.go @@ -4,8 +4,8 @@ import ( "context" "testing" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testdb" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testdb" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/server/testmock/app.go b/server/testmock/app.go index 8d2eb613c7..94df8e983c 100644 --- a/server/testmock/app.go +++ b/server/testmock/app.go @@ -1,9 +1,9 @@ package testmock import ( - "github.com/kubeshop/tracetest/app" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/app" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/tracedb" "go.opentelemetry.io/collector/config/configgrpc" "go.opentelemetry.io/collector/config/configtls" ) diff --git a/server/testmock/database.go b/server/testmock/database.go index 11e92e2194..9931df6ca9 100644 --- a/server/testmock/database.go +++ b/server/testmock/database.go @@ -5,8 +5,8 @@ import ( "fmt" "time" - "github.com/kubeshop/tracetest/model" - "github.com/kubeshop/tracetest/testdb" + "github.com/kubeshop/tracetest/server/model" + "github.com/kubeshop/tracetest/server/testdb" "github.com/orlangure/gnomock" "github.com/orlangure/gnomock/preset/postgres" ) diff --git a/server/tracedb/jaegerdb.go b/server/tracedb/jaegerdb.go index 57db290a5f..24223298bf 100644 --- a/server/tracedb/jaegerdb.go +++ b/server/tracedb/jaegerdb.go @@ -5,7 +5,7 @@ import ( "fmt" "io" - pb "github.com/kubeshop/tracetest/internal/proto-gen-go/api_v3" + pb "github.com/kubeshop/tracetest/server/internal/proto-gen-go/api_v3" "go.opentelemetry.io/collector/component/componenttest" "go.opentelemetry.io/collector/config/configgrpc" v1 "go.opentelemetry.io/proto/otlp/trace/v1" diff --git a/server/tracedb/jaegerdb_test.go b/server/tracedb/jaegerdb_test.go index 1099556c29..a5477237d9 100644 --- a/server/tracedb/jaegerdb_test.go +++ b/server/tracedb/jaegerdb_test.go @@ -7,8 +7,8 @@ import ( "testing" "github.com/gogo/protobuf/jsonpb" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/tracedb" "github.com/stretchr/testify/assert" "go.opentelemetry.io/collector/config/configgrpc" "go.opentelemetry.io/collector/config/configtls" diff --git a/server/tracedb/tempodb.go b/server/tracedb/tempodb.go index d2dc9880ec..ff094555c7 100644 --- a/server/tracedb/tempodb.go +++ b/server/tracedb/tempodb.go @@ -4,7 +4,7 @@ import ( "context" "fmt" - tempopb "github.com/kubeshop/tracetest/internal/proto-gen-go/tempo-idl" + tempopb "github.com/kubeshop/tracetest/server/internal/proto-gen-go/tempo-idl" "go.opentelemetry.io/collector/component/componenttest" "go.opentelemetry.io/collector/config/configgrpc" "go.opentelemetry.io/otel/trace" diff --git a/server/tracedb/tempodb_test.go b/server/tracedb/tempodb_test.go index 60696656fb..d707406407 100644 --- a/server/tracedb/tempodb_test.go +++ b/server/tracedb/tempodb_test.go @@ -7,8 +7,8 @@ import ( "testing" "github.com/gogo/protobuf/jsonpb" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/tracedb" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/collector/config/configgrpc" diff --git a/server/tracedb/tracedb.go b/server/tracedb/tracedb.go index 410098b645..4f17e8f500 100644 --- a/server/tracedb/tracedb.go +++ b/server/tracedb/tracedb.go @@ -5,7 +5,7 @@ import ( "errors" "fmt" - "github.com/kubeshop/tracetest/config" + "github.com/kubeshop/tracetest/server/config" v1 "go.opentelemetry.io/proto/otlp/trace/v1" ) diff --git a/server/tracedb/tracedb_test.go b/server/tracedb/tracedb_test.go index 286b5cbf12..eec226f345 100644 --- a/server/tracedb/tracedb_test.go +++ b/server/tracedb/tracedb_test.go @@ -4,8 +4,8 @@ import ( "fmt" "testing" - "github.com/kubeshop/tracetest/config" - "github.com/kubeshop/tracetest/tracedb" + "github.com/kubeshop/tracetest/server/config" + "github.com/kubeshop/tracetest/server/tracedb" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/collector/config/configgrpc" diff --git a/server/traces/traces_test.go b/server/traces/traces_test.go index 86d61d3eab..01079ea423 100644 --- a/server/traces/traces_test.go +++ b/server/traces/traces_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" - "github.com/kubeshop/tracetest/id" - "github.com/kubeshop/tracetest/traces" + "github.com/kubeshop/tracetest/server/id" + "github.com/kubeshop/tracetest/server/traces" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.opentelemetry.io/otel/trace" From 7382247cf956670e5cff3b6ac3bbddfc4960b1fb Mon Sep 17 00:00:00 2001 From: Matheus Nogueira Date: Thu, 26 May 2022 13:46:34 -0300 Subject: [PATCH 2/6] fix: return run test version (#576) --- server/testdb/runs.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/server/testdb/runs.go b/server/testdb/runs.go index 941788cb16..8b5c7bbc50 100644 --- a/server/testdb/runs.go +++ b/server/testdb/runs.go @@ -57,7 +57,7 @@ func (td *postgresDB) UpdateRun(ctx context.Context, r model.Run) error { } func (td *postgresDB) GetRun(ctx context.Context, id uuid.UUID) (model.Run, error) { - stmt, err := td.db.Prepare("SELECT run FROM runs WHERE id = $1") + stmt, err := td.db.Prepare("SELECT run, test_version FROM runs WHERE id = $1") if err != nil { return model.Run{}, err } @@ -71,7 +71,7 @@ func (td *postgresDB) GetRun(ctx context.Context, id uuid.UUID) (model.Run, erro } func (td *postgresDB) GetTestRuns(ctx context.Context, test model.Test, take, skip int32) ([]model.Run, error) { - stmt, err := td.db.Prepare("SELECT run FROM runs WHERE test_id = $1 ORDER BY run ->> 'createdAt' DESC LIMIT $2 OFFSET $3") + stmt, err := td.db.Prepare("SELECT run, test_version FROM runs WHERE test_id = $1 ORDER BY run ->> 'createdAt' DESC LIMIT $2 OFFSET $3") if err != nil { return nil, err } @@ -95,7 +95,7 @@ func (td *postgresDB) GetTestRuns(ctx context.Context, test model.Test, take, sk } func (td *postgresDB) GetRunByTraceID(ctx context.Context, test model.Test, traceID trace.TraceID) (model.Run, error) { - stmt, err := td.db.Prepare("SELECT run FROM runs WHERE test_id = $1 AND run ->> 'traceId' = $2") + stmt, err := td.db.Prepare("SELECT run, test_version FROM runs WHERE test_id = $1 AND run ->> 'traceId' = $2") if err != nil { return model.Run{}, err } @@ -117,23 +117,25 @@ func encodeRun(r model.Run) (string, error) { return string(b), nil } -func decodeRun(b []byte) (model.Run, error) { +func decodeRun(b []byte, testVersion int) (model.Run, error) { var run model.Run err := json.Unmarshal(b, &run) if err != nil { return model.Run{}, fmt.Errorf("unmarshal run: %w", err) } + run.TestVersion = testVersion return run, nil } func readRunRow(row scanner) (model.Run, error) { var b []byte - err := row.Scan(&b) + var testVersion int + err := row.Scan(&b, &testVersion) switch err { case sql.ErrNoRows: return model.Run{}, ErrNotFound case nil: - return decodeRun(b) + return decodeRun(b, testVersion) default: return model.Run{}, fmt.Errorf("read run row: %w", err) } From e14dd429cec6513f8b0e79be5a00672e9634fca6 Mon Sep 17 00:00:00 2001 From: Sebastian Choren Date: Thu, 26 May 2022 13:54:19 -0300 Subject: [PATCH 3/6] add selector uniqueness validation (#574) --- server/app/app.go | 2 +- server/http/controller.go | 6 ++++-- server/http/mappings.go | 13 +++++++++++++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/server/app/app.go b/server/app/app.go index 9d037e17c7..f2eebd4a67 100644 --- a/server/app/app.go +++ b/server/app/app.go @@ -82,7 +82,7 @@ func (a *App) Start() error { runner.Start(5) // worker count. should be configurable defer runner.Stop() - controller := httpServer.NewController(a.traceDB, a.db, runner, assertionRunner) + controller := httpServer.NewController(a.db, runner, assertionRunner) apiApiController := openapi.NewApiApiController(controller) router := openapi.NewRouter(apiApiController) diff --git a/server/http/controller.go b/server/http/controller.go index c3b798bcb7..a1522ede52 100644 --- a/server/http/controller.go +++ b/server/http/controller.go @@ -17,7 +17,6 @@ import ( "github.com/kubeshop/tracetest/server/model" "github.com/kubeshop/tracetest/server/openapi" "github.com/kubeshop/tracetest/server/testdb" - "github.com/kubeshop/tracetest/server/tracedb" ) var IDGen = id.NewRandGenerator() @@ -32,7 +31,6 @@ type controller struct { } func NewController( - traceDB tracedb.TraceDB, testDB model.Repository, runner executor.Runner, assertionRunner executor.AssertionRunner, @@ -266,6 +264,10 @@ func (c *controller) SetTestDefinition(ctx context.Context, testID string, def o return openapi.Response(http.StatusUnprocessableEntity, err.Error()), err } + if err := c.model.ValidateDefinition(def); err != nil { + return openapi.Response(http.StatusUnprocessableEntity, err.Error()), err + } + test, err := c.testDB.GetLatestTestVersion(ctx, id) if err != nil { return handleDBError(err), err diff --git a/server/http/mappings.go b/server/http/mappings.go index 24b164d141..e5ed342759 100644 --- a/server/http/mappings.go +++ b/server/http/mappings.go @@ -324,6 +324,19 @@ func (m modelMapper) Tests(in []openapi.Test) []model.Test { return tests } +func (m modelMapper) ValidateDefinition(in openapi.TestDefinition) error { + selectors := map[string]bool{} + for _, d := range in.Definitions { + if _, exists := selectors[d.Selector]; exists { + return fmt.Errorf("duplicated selector %s", d.Selector) + } + + selectors[d.Selector] = true + } + + return nil +} + func (m modelMapper) Definition(in openapi.TestDefinition) model.Definition { defs := model.Definition{} for _, d := range in.Definitions { From f416537aa3b79543bbf86f2664bb7b6b95316ab6 Mon Sep 17 00:00:00 2001 From: Sebastian Choren Date: Thu, 26 May 2022 13:54:33 -0300 Subject: [PATCH 4/6] change start and end time to unix milli (#573) --- api/trace.yaml | 8 ++++---- server/http/mappings.go | 21 ++++++--------------- server/openapi/model_span.go | 10 ++++------ 3 files changed, 14 insertions(+), 25 deletions(-) diff --git a/api/trace.yaml b/api/trace.yaml index 098a496cce..483de7928b 100644 --- a/api/trace.yaml +++ b/api/trace.yaml @@ -27,11 +27,11 @@ components: name: type: string startTime: - type: string - format: date-time + type: integer + description: span start time in unix milli format endTime: - type: string - format: date-time + type: integer + description: span end time in unix milli format attributes: type: object description: Key-Value of span attributes diff --git a/server/http/mappings.go b/server/http/mappings.go index e5ed342759..134e507a80 100644 --- a/server/http/mappings.go +++ b/server/http/mappings.go @@ -3,6 +3,7 @@ package http import ( "errors" "fmt" + "time" "github.com/google/uuid" "github.com/kubeshop/tracetest/server/assertions/comparator" @@ -125,17 +126,7 @@ func (m openapiMapper) Trace(in *traces.Trace) openapi.Trace { flat := map[string]openapi.Span{} for id, span := range in.Flat { - parentID := "" - if span.Parent != nil { - parentID = span.Parent.ID.String() - } - flat[id.String()] = openapi.Span{ - Id: span.ID.String(), - Attributes: map[string]string(span.Attributes), - StartTime: span.StartTime, - EndTime: span.EndTime, - ParentId: parentID, - } + flat[id.String()] = m.Span(*span) } return openapi.Trace{ @@ -154,8 +145,8 @@ func (m openapiMapper) Span(in traces.Span) openapi.Span { return openapi.Span{ Id: in.ID.String(), ParentId: parentID, - StartTime: in.StartTime, - EndTime: in.EndTime, + StartTime: int32(in.StartTime.UnixMilli()), + EndTime: int32(in.EndTime.UnixMilli()), Attributes: map[string]string(in.Attributes), Children: m.Spans(in.Children), } @@ -422,8 +413,8 @@ func (m modelMapper) Span(in openapi.Span, parent *traces.Span) traces.Span { ID: sid, Attributes: in.Attributes, Name: in.Name, - StartTime: in.StartTime, - EndTime: in.EndTime, + StartTime: time.UnixMilli(int64(in.StartTime)), + EndTime: time.UnixMilli(int64(in.EndTime)), Parent: parent, } span.Children = m.Spans(in.Children, &span) diff --git a/server/openapi/model_span.go b/server/openapi/model_span.go index 87018a1253..61b17d1564 100644 --- a/server/openapi/model_span.go +++ b/server/openapi/model_span.go @@ -9,10 +9,6 @@ package openapi -import ( - "time" -) - type Span struct { Id string `json:"id,omitempty"` @@ -20,9 +16,11 @@ type Span struct { Name string `json:"name,omitempty"` - StartTime time.Time `json:"startTime,omitempty"` + // span start time in unix nano format + StartTime int32 `json:"startTime,omitempty"` - EndTime time.Time `json:"endTime,omitempty"` + // span end time in unix nano format + EndTime int32 `json:"endTime,omitempty"` // Key-Value of span attributes Attributes map[string]string `json:"attributes,omitempty"` From 6a11088c0450fc3f77525503eaf868d145095987 Mon Sep 17 00:00:00 2001 From: Sebastian Choren Date: Thu, 26 May 2022 14:00:39 -0300 Subject: [PATCH 5/6] fix cli --- cli/openapi/model_span.go | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/cli/openapi/model_span.go b/cli/openapi/model_span.go index ceca0b81ca..5177c73cbe 100644 --- a/cli/openapi/model_span.go +++ b/cli/openapi/model_span.go @@ -12,16 +12,17 @@ package openapi import ( "encoding/json" - "time" ) // Span struct for Span type Span struct { - Id *string `json:"id,omitempty"` - ParentId *string `json:"parentId,omitempty"` - Name *string `json:"name,omitempty"` - StartTime *time.Time `json:"startTime,omitempty"` - EndTime *time.Time `json:"endTime,omitempty"` + Id *string `json:"id,omitempty"` + ParentId *string `json:"parentId,omitempty"` + Name *string `json:"name,omitempty"` + // span start time in unix milli format + StartTime *int32 `json:"startTime,omitempty"` + // span end time in unix milli format + EndTime *int32 `json:"endTime,omitempty"` // Key-Value of span attributes Attributes *map[string]string `json:"attributes,omitempty"` Children []Span `json:"children,omitempty"` @@ -141,9 +142,9 @@ func (o *Span) SetName(v string) { } // GetStartTime returns the StartTime field value if set, zero value otherwise. -func (o *Span) GetStartTime() time.Time { +func (o *Span) GetStartTime() int32 { if o == nil || o.StartTime == nil { - var ret time.Time + var ret int32 return ret } return *o.StartTime @@ -151,7 +152,7 @@ func (o *Span) GetStartTime() time.Time { // GetStartTimeOk returns a tuple with the StartTime field value if set, nil otherwise // and a boolean to check if the value has been set. -func (o *Span) GetStartTimeOk() (*time.Time, bool) { +func (o *Span) GetStartTimeOk() (*int32, bool) { if o == nil || o.StartTime == nil { return nil, false } @@ -167,15 +168,15 @@ func (o *Span) HasStartTime() bool { return false } -// SetStartTime gets a reference to the given time.Time and assigns it to the StartTime field. -func (o *Span) SetStartTime(v time.Time) { +// SetStartTime gets a reference to the given int32 and assigns it to the StartTime field. +func (o *Span) SetStartTime(v int32) { o.StartTime = &v } // GetEndTime returns the EndTime field value if set, zero value otherwise. -func (o *Span) GetEndTime() time.Time { +func (o *Span) GetEndTime() int32 { if o == nil || o.EndTime == nil { - var ret time.Time + var ret int32 return ret } return *o.EndTime @@ -183,7 +184,7 @@ func (o *Span) GetEndTime() time.Time { // GetEndTimeOk returns a tuple with the EndTime field value if set, nil otherwise // and a boolean to check if the value has been set. -func (o *Span) GetEndTimeOk() (*time.Time, bool) { +func (o *Span) GetEndTimeOk() (*int32, bool) { if o == nil || o.EndTime == nil { return nil, false } @@ -199,8 +200,8 @@ func (o *Span) HasEndTime() bool { return false } -// SetEndTime gets a reference to the given time.Time and assigns it to the EndTime field. -func (o *Span) SetEndTime(v time.Time) { +// SetEndTime gets a reference to the given int32 and assigns it to the EndTime field. +func (o *Span) SetEndTime(v int32) { o.EndTime = &v } From b50bc381618760f4d871d8e462beeb7e20f5bf6d Mon Sep 17 00:00:00 2001 From: Sebastian Choren Date: Thu, 26 May 2022 14:06:26 -0300 Subject: [PATCH 6/6] ignore cli for gh action release --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4e4802e491..fed35bf109 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,6 +10,7 @@ on: branches: [ main ] paths-ignore: - 'docs/**' + - 'cli/**' jobs: