gtristan opened a new issue, #1838:
URL: https://github.com/apache/buildstream/issues/1838
Build trees are very expensive to cache and transfer over the wire to
artifact servers.
As per development on #566, we have made the *caching* of buildtrees
optional with the `cache-buildtrees` setting.
However, at upload time, we unconditionally push the entire artifact
regardless of the setting.
This overlooks a couple of possibilities:
* The `cache-buildtrees` setting has changed after some work was done
locally and before `bst artifact push` was separately invoked later, where the
user has the expectation that they are not uploading buildtrees which they have
been using locally.
* In this case it should be sufficient to address the artifact pushing
code to take the `cache-buildtrees` into consideration when pushing
* There is a desire to work with buildtrees locally but not to upload them
to the cache. It could hypothetically make sense to use a `cache-buildtrees:
always` setting and only push them with a `cache-buildtrees: auto` setting
* This would probably only make sense if the build trees of successful
builds could be useful locally, for instance we had envisioned a feature where
one could use `bst shell` environments with staged dependency buildtrees, in
order to have source code available for `gdb`
* If this is interesting, we'd probably want a separate `push-buildtrees`
setting that could default to the `cache-buildtrees` value
I think it would be good enough to fix the first use case for the sake of
correctness, and only investigate the second additional optionality in the case
that further developments making cached buildtrees of successful builds useful.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]