Files
coolify/tests/Feature/PersistentImageStorageTest.php
Andras Bacsai a5dedc07cd feat(storage): persist local images and unify clipboard copying
Add a private images disk with persistent container mounts and installation/upgrade setup, while routing avatar and project icon storage through it. Reuse the copy button component for API tokens and support clipboard copying through the shared helper.
2026-08-17 16:19:41 +02:00

32 lines
1.1 KiB
PHP

<?php
it('configures a dedicated private disk for persisted images', function () {
expect(config('filesystems.disks.images'))
->toMatchArray([
'driver' => 'local',
'root' => storage_path('app/images'),
'visibility' => 'private',
]);
});
it('persists images in stable and nightly production compose files', function (string $composeFile) {
expect(file_get_contents(base_path($composeFile)))
->toContain('/data/coolify/images:/var/www/html/storage/app/images');
})->with([
'stable' => 'docker-compose.prod.yml',
'nightly' => 'other/nightly/docker-compose.prod.yml',
]);
it('persists images in the Windows compose file', function () {
expect(file_get_contents(base_path('docker-compose.windows.yml')))
->toContain('./images:/var/www/html/storage/app/images');
});
it('creates the persistent image directory during installation and upgrades', function (string $script) {
expect(file_get_contents(base_path($script)))
->toContain('/data/coolify/images');
})->with([
'install' => 'scripts/install.sh',
'upgrade' => 'scripts/upgrade.sh',
]);