Skip to content

Commit

Permalink
test: add repro for thanos-io#5069
Browse files Browse the repository at this point in the history
Add repro for thanos-io#5069 by querying sidecar with --min-time enabled and then
checking the result equivalence.

Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@vinted.com>
  • Loading branch information
GiedriusS committed Feb 10, 2022
1 parent b2c1ff0 commit dc6c999
Show file tree
Hide file tree
Showing 8 changed files with 149 additions and 52 deletions.
9 changes: 6 additions & 3 deletions test/e2e/e2ethanos/services.go
Original file line number Diff line number Diff line change
Expand Up @@ -133,11 +133,11 @@ func NewPrometheus(e e2e.Environment, name, promConfig, webConfig, promImage str
return prom, container, nil
}

func NewPrometheusWithSidecar(e e2e.Environment, name, promConfig, webConfig, promImage string, enableFeatures ...string) (*e2e.InstrumentedRunnable, *e2e.InstrumentedRunnable, error) {
return NewPrometheusWithSidecarCustomImage(e, name, promConfig, webConfig, promImage, DefaultImage(), enableFeatures...)
func NewPrometheusWithSidecar(e e2e.Environment, name, promConfig, webConfig, promImage, minTime string, enableFeatures ...string) (*e2e.InstrumentedRunnable, *e2e.InstrumentedRunnable, error) {
return NewPrometheusWithSidecarCustomImage(e, name, promConfig, webConfig, promImage, minTime, DefaultImage(), enableFeatures...)
}

func NewPrometheusWithSidecarCustomImage(e e2e.Environment, name, promConfig, webConfig, promImage string, sidecarImage string, enableFeatures ...string) (*e2e.InstrumentedRunnable, *e2e.InstrumentedRunnable, error) {
func NewPrometheusWithSidecarCustomImage(e e2e.Environment, name, promConfig, webConfig, promImage, minTime string, sidecarImage string, enableFeatures ...string) (*e2e.InstrumentedRunnable, *e2e.InstrumentedRunnable, error) {
prom, dataDir, err := NewPrometheus(e, name, promConfig, webConfig, promImage, enableFeatures...)
if err != nil {
return nil, nil, err
Expand All @@ -155,6 +155,9 @@ func NewPrometheusWithSidecarCustomImage(e e2e.Environment, name, promConfig, we
if len(webConfig) > 0 {
args["--prometheus.http-client"] = defaultPromHttpConfig()
}
if minTime != "" {
args["--min-time"] = minTime
}
sidecar := NewService(
e,
fmt.Sprintf("sidecar-%s", name),
Expand Down
2 changes: 2 additions & 0 deletions test/e2e/exemplars_api_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ func TestExemplarsAPI_Fanout(t *testing.T) {
defaultPromConfig("ha", 0, "", "", "localhost:9090", qUnitiated.InternalEndpoint("http")),
"",
e2ethanos.DefaultPrometheusImage(),
"",
e2ethanos.FeatureExemplarStorage,
)
testutil.Ok(t, err)
Expand All @@ -54,6 +55,7 @@ func TestExemplarsAPI_Fanout(t *testing.T) {
defaultPromConfig("ha", 1, "", "", "localhost:9090", qUnitiated.InternalEndpoint("http")),
"",
e2ethanos.DefaultPrometheusImage(),
"",
e2ethanos.FeatureExemplarStorage,
)
testutil.Ok(t, err)
Expand Down
6 changes: 3 additions & 3 deletions test/e2e/info_api_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ func TestInfo(t *testing.T) {
testutil.Ok(t, err)
t.Cleanup(e2ethanos.CleanScenario(t, e))

prom1, sidecar1, err := e2ethanos.NewPrometheusWithSidecar(e, "alone1", defaultPromConfig("prom-alone1", 0, "", ""), "", e2ethanos.DefaultPrometheusImage())
prom1, sidecar1, err := e2ethanos.NewPrometheusWithSidecar(e, "alone1", defaultPromConfig("prom-alone1", 0, "", ""), "", e2ethanos.DefaultPrometheusImage(), "")
testutil.Ok(t, err)
prom2, sidecar2, err := e2ethanos.NewPrometheusWithSidecar(e, "alone2", defaultPromConfig("prom-alone2", 0, "", ""), "", e2ethanos.DefaultPrometheusImage())
prom2, sidecar2, err := e2ethanos.NewPrometheusWithSidecar(e, "alone2", defaultPromConfig("prom-alone2", 0, "", ""), "", e2ethanos.DefaultPrometheusImage(), "")
testutil.Ok(t, err)
prom3, sidecar3, err := e2ethanos.NewPrometheusWithSidecar(e, "alone3", defaultPromConfig("prom-alone3", 0, "", ""), "", e2ethanos.DefaultPrometheusImage())
prom3, sidecar3, err := e2ethanos.NewPrometheusWithSidecar(e, "alone3", defaultPromConfig("prom-alone3", 0, "", ""), "", e2ethanos.DefaultPrometheusImage(), "")
testutil.Ok(t, err)
testutil.Ok(t, e2e.StartAndWaitReady(prom1, sidecar1, prom2, sidecar2, prom3, sidecar3))

Expand Down
4 changes: 2 additions & 2 deletions test/e2e/metadata_api_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func TestMetadataAPI_Fanout(t *testing.T) {
"prom1",
defaultPromConfig("ha", 0, "", "", "localhost:9090", "sidecar-prom1:8080"),
"",
e2ethanos.DefaultPrometheusImage(),
e2ethanos.DefaultPrometheusImage(), "",
)
testutil.Ok(t, err)

Expand All @@ -41,7 +41,7 @@ func TestMetadataAPI_Fanout(t *testing.T) {
"prom2",
defaultPromConfig("ha", 1, "", "", "localhost:9090", "sidecar-prom2:8080"),
"",
e2ethanos.DefaultPrometheusImage(),
e2ethanos.DefaultPrometheusImage(), "",
)
testutil.Ok(t, err)
testutil.Ok(t, e2e.StartAndWaitReady(prom1, sidecar1, prom2, sidecar2))
Expand Down
4 changes: 2 additions & 2 deletions test/e2e/query_frontend_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func TestQueryFrontend(t *testing.T) {

now := time.Now()

prom, sidecar, err := e2ethanos.NewPrometheusWithSidecar(e, "1", defaultPromConfig("test", 0, "", ""), "", e2ethanos.DefaultPrometheusImage())
prom, sidecar, err := e2ethanos.NewPrometheusWithSidecar(e, "1", defaultPromConfig("test", 0, "", ""), "", e2ethanos.DefaultPrometheusImage(), "")
testutil.Ok(t, err)
testutil.Ok(t, e2e.StartAndWaitReady(prom, sidecar))

Expand Down Expand Up @@ -396,7 +396,7 @@ func TestQueryFrontendMemcachedCache(t *testing.T) {

now := time.Now()

prom, sidecar, err := e2ethanos.NewPrometheusWithSidecar(e, "1", defaultPromConfig("test", 0, "", ""), "", e2ethanos.DefaultPrometheusImage())
prom, sidecar, err := e2ethanos.NewPrometheusWithSidecar(e, "1", defaultPromConfig("test", 0, "", ""), "", e2ethanos.DefaultPrometheusImage(), "")
testutil.Ok(t, err)
testutil.Ok(t, e2e.StartAndWaitReady(prom, sidecar))

Expand Down
Loading

0 comments on commit dc6c999

Please sign in to comment.