From 8d1d36051be7b26bf49fe43f53aa670defd8d75f Mon Sep 17 00:00:00 2001 From: Olivier Valentin Date: Fri, 23 Jan 2026 11:29:36 +0100 Subject: [PATCH 1/3] Wait for the container to be created before starting it --- integration-tests/pkg/executor/executor_docker_api.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/integration-tests/pkg/executor/executor_docker_api.go b/integration-tests/pkg/executor/executor_docker_api.go index 0413c1676c..cd0a283469 100644 --- a/integration-tests/pkg/executor/executor_docker_api.go +++ b/integration-tests/pkg/executor/executor_docker_api.go @@ -155,6 +155,9 @@ func (d *dockerAPIExecutor) StartContainer(startConfig config.ContainerStartConf if err != nil { return "", errors.Wrapf(err, "create %s", startConfig.Name) } + + d.client.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning) + if err := d.client.ContainerStart(ctx, resp.ID, container.StartOptions{}); err != nil { return "", errors.Wrapf(err, "start %s", startConfig.Name) } From 8905ef228622d73edcde2bede8fc7621c2be9fbd Mon Sep 17 00:00:00 2001 From: Olivier Valentin Date: Fri, 23 Jan 2026 11:30:10 +0100 Subject: [PATCH 2/3] [nit] rework an error message --- integration-tests/suites/base.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/integration-tests/suites/base.go b/integration-tests/suites/base.go index 2de25cc73e..ff03a50dd6 100644 --- a/integration-tests/suites/base.go +++ b/integration-tests/suites/base.go @@ -254,7 +254,7 @@ func Mem2Numeric(value string) (float64, error) { value, err := strconv.ParseFloat(numericPart, 32) return value / 1024, err } else { - return 0, errors.New(fmt.Sprintf("Invalid units, %s", value)) + return 0, fmt.Errorf("Invalid units, %s", value) } } From 57b813616059ea0c035dd40a298e5d5f2ce0da2c Mon Sep 17 00:00:00 2001 From: Olivier Valentin Date: Fri, 23 Jan 2026 12:00:23 +0100 Subject: [PATCH 3/3] Handle ContainerWait errors --- integration-tests/pkg/executor/executor_docker_api.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/integration-tests/pkg/executor/executor_docker_api.go b/integration-tests/pkg/executor/executor_docker_api.go index cd0a283469..d713a7c440 100644 --- a/integration-tests/pkg/executor/executor_docker_api.go +++ b/integration-tests/pkg/executor/executor_docker_api.go @@ -156,7 +156,13 @@ func (d *dockerAPIExecutor) StartContainer(startConfig config.ContainerStartConf return "", errors.Wrapf(err, "create %s", startConfig.Name) } - d.client.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning) + waitResp, waitErr := d.client.ContainerWait(ctx, resp.ID, container.WaitConditionNotRunning) + select { + case <-waitResp: + break + case err := <-waitErr: + return "", errors.Wrapf(err, "wait %s", startConfig.Name) + } if err := d.client.ContainerStart(ctx, resp.ID, container.StartOptions{}); err != nil { return "", errors.Wrapf(err, "start %s", startConfig.Name)