bazelbuild / bazelbuild/rules_pkg
Determine tree artifact semantics
- Dominant language
- Starlark
- Stars
- 253
- Forks
- 221
- Avg merge
- 10h 33m
- Merged PRs (30d)
- 1
Description
While implementing tree artifact support for pkg_zip, I've encountered a few cases that the rules_pkg community prolly needs to sort out so that handling is consistent among the various pkg_foo rules.
A few open questions from pkg_zip to seed discussion:
- Collision detection
- Should pkg_foo perform collision detection at runtime to detect (and fail?) when a tree artifact file collides with a file from either pkg_files or another tree artifact? (I believe yes.)
- What about directories? I assume we should allow two distinct tree artifacts to both stage files to a single directory.
- Permissions
- Should files' permissions be inherited from the attributes bound to the corresponding pkg_files rule?
- What about directories? Do we stick to defaults (0o755/root/root) and just allow override via pkg_mkdirs?
- Empty directories
- What do we do if a tree artifact contains an empty directory? Do we preserve it in the final packaged artifact or ignore it?
Contributor guide
Assessment
This issue has not been assessed yet.