_frontend/cli.py: Make show() --use-buildtree respect pull semantics
Description
Ensure that if a buildtree isn't cached locally, it's only fetched if --pull & pull-buildtrees config are set. Also, only attempt to fetch if it's plausible that it could be pulled, with appropriate messaging based on local cached state.
I'd potentially look at making --use-buildtree
a bool flag in the future, and handle the current behaviour of always/try
via --on-error
. However for now I think this makes the current implementation more correct.
Changes proposed in this merge request:
- Only ever try to pull missing buildtrees if the current pull configuration is valid
- If pulling is allowed, ensure messaging to user highlights if the existence of a buildtree is known
- Update the tests for the new output & tweaked semantics
This merge request, when approved, will close: #1151 (closed)