From 087641ab6c8a1ebc57d6c20fbaa1f0b7cb546b6c Mon Sep 17 00:00:00 2001 From: nightio Date: Thu, 2 Jul 2026 18:10:07 +0200 Subject: [PATCH] Copy files before starting container Move the copy-to-container step before containerStart() so files configured with withCopyFilesToContainer(), withCopyDirectoriesToContainer(), or withCopyContentToContainer() are available when the container entrypoint starts. This avoids races for images that read configuration immediately on startup, such as Caddy loading /etc/caddy/Caddyfile before the test-provided file has been copied into the container. --- src/Container/GenericContainer.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Container/GenericContainer.php b/src/Container/GenericContainer.php index 45d3998..4fd5639 100644 --- a/src/Container/GenericContainer.php +++ b/src/Container/GenericContainer.php @@ -338,12 +338,12 @@ public function start(): StartedGenericContainer return $this->start(); } - $this->dockerClient->containerStart($this->id); - if ($this->filesToCopy !== [] || $this->directoriesToCopy !== [] || $this->contentsToCopy !== []) { $this->copyToContainer(); } + $this->dockerClient->containerStart($this->id); + $startedContainer = new StartedGenericContainer($this->id); $this->waitStrategy->wait($startedContainer);