From 7d2eec3ba35df6196d8dbd505a8180da94299e70 Mon Sep 17 00:00:00 2001 From: Geoffrey Ragot Date: Thu, 26 Sep 2024 12:05:50 +0200 Subject: [PATCH 1/2] feat(dockerpool): add NO_CLEANUP var handling --- testing/docker/pool.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/testing/docker/pool.go b/testing/docker/pool.go index cc76be6d..1ca67898 100644 --- a/testing/docker/pool.go +++ b/testing/docker/pool.go @@ -63,9 +63,11 @@ func (p *Pool) Run(cfg Configuration) *dockertest.Resource { resource, err := p.pool.RunWithOptions(cfg.RunOptions, cfg.HostConfigOptions...) require.NoError(p.t, err) - p.t.Cleanup(func() { - require.NoError(p.t, p.pool.Purge(resource)) - }) + if os.Getenv("NO_CLEANUP") != "true" { + p.t.Cleanup(func() { + require.NoError(p.t, p.pool.Purge(resource)) + }) + } go p.streamContainerLogs(resource.Container.ID) From 2e95a183ae5d22409fb072f2c9aa6db26e1d3338 Mon Sep 17 00:00:00 2001 From: Geoffrey Ragot Date: Thu, 26 Sep 2024 12:24:59 +0200 Subject: [PATCH 2/2] fix: kafka test --- publish/module_test.go | 59 +++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 29 deletions(-) diff --git a/publish/module_test.go b/publish/module_test.go index 07b15bf2..150c0eb9 100644 --- a/publish/module_test.go +++ b/publish/module_test.go @@ -8,6 +8,8 @@ import ( "testing" "time" + dockerlib "github.com/formancehq/go-libs/testing/docker" + "go.opentelemetry.io/otel" "go.opentelemetry.io/otel/propagation" tracesdk "go.opentelemetry.io/otel/sdk/trace" @@ -27,37 +29,36 @@ import ( func createRedpandaServer(t *testing.T) string { - pool, err := dockertest.NewPool("") - require.NoError(t, err) - - resource, err := pool.RunWithOptions(&dockertest.RunOptions{ - Repository: "docker.redpanda.com/vectorized/redpanda", - Tag: "v22.3.11", - Tty: true, - Cmd: []string{ - "redpanda", "start", - "--smp", "1", - "--overprovisioned", - "--kafka-addr", "PLAINTEXT://0.0.0.0:9092", - "--advertise-kafka-addr", "PLAINTEXT://localhost:9092", - "--pandaproxy-addr", "0.0.0.0:8082", - "--advertise-pandaproxy-addr", "localhost:8082", - }, - PortBindings: map[docker.Port][]docker.PortBinding{ - "9092/tcp": {{ - HostIP: "0.0.0.0", - HostPort: "9092", - }}, - "9644/tcp": {{ - HostIP: "0.0.0.0", - HostPort: "9644", - }}, + pool := dockerlib.NewPool(t, logging.Testing()) + resource := pool.Run(dockerlib.Configuration{ + RunOptions: &dockertest.RunOptions{ + Repository: "docker.redpanda.com/vectorized/redpanda", + Tag: "v22.3.11", + Tty: true, + Cmd: []string{ + "redpanda", "start", + "--smp", "1", + "--overprovisioned", + "--kafka-addr", "PLAINTEXT://0.0.0.0:9092", + "--advertise-kafka-addr", "PLAINTEXT://localhost:9092", + "--pandaproxy-addr", "0.0.0.0:8082", + "--advertise-pandaproxy-addr", "localhost:8082", + }, + PortBindings: map[docker.Port][]docker.PortBinding{ + "9092/tcp": {{ + HostIP: "0.0.0.0", + HostPort: "9092", + }}, + "9644/tcp": {{ + HostIP: "0.0.0.0", + HostPort: "9644", + }}, + }, }, }) - require.NoError(t, err) - t.Cleanup(func() { - require.NoError(t, pool.Purge(resource)) - }) + + // todo: need to add a check function on the container + <-time.After(5 * time.Second) stdout := io.Discard stderr := io.Discard