Create a CAS-backed virtual directory implementation
Background
After CAS-based artifact caches are in use (#387 (closed)), we can allow certain elements in BuildStream to use the CAS directly instead of extracting to a filesystem first, which should improve performance.
Task description
Implement CAS-based virtual directories using the abstract virtual directory implementation from #394 (closed).
-
Implement CASBasedDirectory -
Switch Import and Compose elements to use the new CAS-based directory instead of file-based virtual directories.
Acceptance Criteria
-
All existing tests should pass -
freedesktop-sdk should build correctly and we should be able to verify that the new CAS-based directory has been used -
Build time for freedesktop-sdk should be no worse than 10% slower than it was without this MR.
Edited by Jim MacArthur