Optional creation of buildtrees
Description
Provide configuration for the optional creation of buildtrees
Artifacts can be cached explicitly with an empty build tree
when
built via the cli main options or user config for all or only
successful build artifacts. Default behaviour is to still create
and cache all expected buildtrees.
This will create a situation in which a cache-key could contain a ref to a buildtree dir that was or wasn't populated for relevant element types and as such this uncertainty should be opt-in behaviour until further work such as artifact has a proto is landed. Users will be warned if interacting with an empty buildtree.
Changes proposed in this merge request:
- Add main cli and user config option cache-buildtrees as a 'tristate' for when artifacts are cached via bst build
- Keep default behaviour the same, highlight were a cached buildtree is empty
- Tests
This merge request, when approved, will close: #896 (closed)
Merge request reports
Activity
- Resolved by Jürg Billeter
I would flip this to cache-buildtrees and default to False.
I definitely agree with changing the name of the option. Positive option names are much more intuitive as you don't have to deal with double negatives such as 'dont-cache-buildtrees: False'.
I leave the default value discussion to others.
However, I'm wondering whether it would make sense to distinguish between successful and failed buildtrees. I might want to skip buildtrees for successful builds to save space but might still want to be able to debug build failures.
Having cache-buildtrees default to 'True' was my initial implementation, however having a cli flag of the same name to set it to 'False' is less intuitive to me than the double negative (if the cli option is to match the config option)
Our usual approach would be to support both
--cache-buildtrees
and--no-cache-buildtrees
.Our usual approach would be to support both
--cache-buildtrees
and--no-cache-buildtrees
.Fair enough, I can rework it for that I was just trying to keep it inline with pull-buildtrees and defaulting to False in user config. I'll look to push the changes. I still however have the belief that we should default to caching them, as per my reasoning in the description.
added 20 commits
-
9ca41283...bb6a692d - 18 commits from branch
master
- 2c0a6c2c - Add cli main & user conf option for 'dont-cache-buildtrees' context
- 05f51fe8 - Provide configuration for the optional creation of buildtrees
-
9ca41283...bb6a692d - 18 commits from branch
added 5 commits
-
1f821d7c...bb6a692d - 3 commits from branch
master
- 445a0df0 - Add cli main & user conf option for 'cache-buildtrees' context
- c7a14d52 - Provide configuration for the optional creation of buildtrees
-
1f821d7c...bb6a692d - 3 commits from branch
added 1 commit
- a01c3e15 - Provide configuration for the optional creation of buildtrees
mentioned in issue #896 (closed)
added 21 commits
-
a01c3e15...95d9b9ae - 18 commits from branch
master
- 86dcd984 - Add cli main & user conf option for 'cache-buildtrees' context
- 5ce60e2e - _frontend/cli.py: Ensure failed buildtree warning is correct
- dbe941d3 - Provide configuration for the optional creation of buildtrees
Toggle commit list-
a01c3e15...95d9b9ae - 18 commits from branch
added 30 commits
-
dbe941d3...8c6baf23 - 27 commits from branch
master
- fa770070 - Add cli main & user conf option for 'cache-buildtrees' context
- 7483657b - _frontend/cli.py: Ensure failed buildtree warning is correct
- e14ccaf7 - Provide configuration for the optional creation of buildtrees
Toggle commit list-
dbe941d3...8c6baf23 - 27 commits from branch
added 8 commits
-
e14ccaf7...ae0ee361 - 5 commits from branch
master
- 118644b2 - Add cli main & user conf option for 'cache-buildtrees' context
- b546bac1 - _frontend/cli.py: Ensure failed buildtree warning is correct
- d2029444 - Provide configuration for the optional creation of buildtrees
Toggle commit list-
e14ccaf7...ae0ee361 - 5 commits from branch
enabled an automatic merge when the pipeline for d2029444 succeeds
mentioned in commit 54ec032a
mentioned in issue freedesktop-sdk/infrastructure/infrastructure#32
mentioned in merge request !1208 (merged)