summaryrefslogtreecommitdiff
path: root/src/buildstream/_project.py
diff options
context:
space:
mode:
authorDarius Makovsky <traveltissues@protonmail.com>2019-09-05 14:22:19 +0100
committerbst-marge-bot <marge-bot@buildstream.build>2019-09-24 15:58:25 +0000
commita8ca9fcb41e1095e04cc40f1ef09700ad70a3dc0 (patch)
tree04d5e81e8e4d8e08d18dfc84eaef99077e31aa4b /src/buildstream/_project.py
parent3247014d07a66b98ac28f1b2a7aa8658661cb4ea (diff)
downloadbuildstream-a8ca9fcb41e1095e04cc40f1ef09700ad70a3dc0.tar.gz
workspace.py: add workspace source plugin
The `workspace.init_workspace()` call should wrap `source._init_workspace` for held sources to support those sources not publishing `BST_VIRTUAL_DIRECTORY` This object owns a directory digest attribute used inplace of the source ref. `track` and `fetch` become noop methods and the workspace is imported into the CAS in the call to `get_unique_key` which also sets the digest attribute and owns that Directory object. The directory is referenced during stage to import directly to the virtual directory object. Importing is expected to be expensive and will be optimised in future. When the unique key is retrieved for the workspace source it will also be commited to the sourcecache. The logic for this source is still a slight variant on other sources since it cannot itself be expected to be in the cache when it's opened. In the source preflight method the preflights of the held sources must be called.
Diffstat (limited to 'src/buildstream/_project.py')
0 files changed, 0 insertions, 0 deletions