Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix tar.gz assembly having incorrect folder structure (#6644)
## What is the goal of this PR? Fix the issues in tar.gz assembly that were caused by #6642. ## What are the changes implemented in this PR? PR #6642 has changed the upstream repository of `rules_docker` to be from `bazelbuild`. Previously, the upstream repository was the Vaticle's fork of `rules_docker`. That fork contained a patch that fixed a bug in `rules_pkg` that stopped `pkg_tar` rule from working with long paths (the bug caused targz assembly of TypeDB to be incorrect) . Incidentally, an identical patch was applied in Vaticle's `bazel-distribution`. By loading, `rules_docker` from `vaticle_dependencies` before `bazel-distribution`, we ended up using the unpatched `rules_pkg` in the assembly targets that were depending on `rules_pkg` (we can't have multiple versions of a workspace dependency at the same time). This caused the targz assembly of TypeDB to contain invalid paths. The solution in this PR simply swaps the order of loading, so that `typedb` ends up depending on the patched `rules_pkg` that is provided by `bazel-distribution`. The ideal solution for this problem would be to bump the `rules_pkg` dependency in `bazel-distribution`, however, the newer versions of `rules_pkg` changed their subpackage visibility modifiers. More precisely, in the newer versions, `pkg_tar` depends on private subpackages. Unfortunately, `stardoc`, the tool that we use to generate documentation, does not work with rules that depend on rules that are invisible to our project (bazelbuild/stardoc#93, bazelbuild/stardoc#128). Therefore, in order to continue using `stardoc`, we must continue using the older version of `rules_pkg`. Co-authored-by: Lukas Slezevicius <[email protected]> Co-authored-by: Alex Walker <[email protected]>
- Loading branch information