diff --git a/app/Jobs/CleanupHelperContainersJob.php b/app/Jobs/CleanupHelperContainersJob.php index 425dd2591c..52b4064feb 100644 --- a/app/Jobs/CleanupHelperContainersJob.php +++ b/app/Jobs/CleanupHelperContainersJob.php @@ -21,7 +21,7 @@ class CleanupHelperContainersJob implements ShouldBeEncrypted, ShouldBeUnique, S private static function helperContainersCommand(): string { - return 'docker container ps --format \'{{json .}}\' | jq -s \'map(select(.Image|test("^([^/]+/)?coollabsio/coolify-helper(:|@)")))\''; + return 'docker container ps --format \'{{json .}}\' | jq -s \'map(select(.Image|test("(^|/)coollabsio/coolify-helper(:|@)")))\''; } public function handle(): void diff --git a/tests/Unit/CleanupHelperContainersJobTest.php b/tests/Unit/CleanupHelperContainersJobTest.php index a649985d28..bd3e2e175d 100644 --- a/tests/Unit/CleanupHelperContainersJobTest.php +++ b/tests/Unit/CleanupHelperContainersJobTest.php @@ -13,6 +13,11 @@ it('matches helper image references without matching similarly named images', fu 'docker.io/coollabsio/coolify-helper:1.0.16', 'ghcr.io/coollabsio/coolify-helper@sha256:abc', 'registry.example/team/coollabsio/coolify-helper:latest', + 'coollabsio/coolify:latest', + 'coollabsio/coolify:4.3.12', + 'coollabsio/coolify-realtime:1.0.10', + 'coolify-helper:latest', + 'someone/coolify-helper:1.0.16', 'evil/coollabsio/coolify-helper-copy:latest', 'coollabsio/not-coolify-helper:latest', ]; @@ -31,7 +36,7 @@ it('matches helper image references without matching similarly named images', fu $process->mustRun(); expect(array_column(json_decode($process->getOutput(), true, flags: JSON_THROW_ON_ERROR), 'Image')) - ->toBe(array_slice($images, 0, 3)); + ->toBe(array_slice($images, 0, 4)); } finally { unlink($docker); rmdir($directory);