Commit Graph
3 Commits
Author SHA1 Message Date
Andras Bacsai 5dbbca5da3 fix(file-mounts): support sibling compose mounts in current UI 2026-08-18 20:01:46 +02:00
Andras Bacsai 47e626c45f fix(storage): correct base dir and path normalization for file mounts
Use `applications` vs `services` base segment based on compose parsing
version to resolve correct directory for service-type parents. Also
normalize `fs_path` through `replaceLocalSource` before comparing to
avoid path mismatch on volume deduplication.

Add gate check to compose toggle button and use random resource ID in
test to avoid collision between parallel test runs.
2026-05-06 15:33:42 +02:00
Andras Bacsai f5b8ac0c4f fix(file-mounts): key updateOrCreate on fs_path+mount_path to prevent sibling collision
Previously, LocalFileVolume::updateOrCreate only matched on mount_path +
resource, so multiple compose services binding different host files to the
same container path would overwrite each other.

- Add fs_path to the find-key in applicationParser, serviceParser, and
  parseDockerComposeFile so rows are uniquely identified by both host
  source and container target
- Cast Stringable $source to string in all three call sites
- Fix isReadOnlyVolume() to handle both Application and Service resources,
  and match the candidate volume row by both mount_path and transformed
  fs_path instead of mount_path alone
- Fix @js() usage in general.blade.php for reliable Alpine.js bool evaluation
- Add ApplicationComposeMultipleFileMountsTest covering dedup and
  read-only detection across sibling mounts
2026-04-29 15:23:10 +02:00