Skip to content

Vendor mode does not remap cross-repo symlinks to vendor dir #22303

@peakschris

Description

@peakschris

Description of the bug:

When vendoring a repo such as rules_helm, which contains symlinks between its sub-repos, the symlinks are not remapped on vendoring. This means the resulting directories in the vendor_dir contains symlinks into the bazel user cache, and become dangling if the vendor_dir is copied to a different machine.

Which category does this issue belong to?

No response

What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

Module.bazel:
bazel_dep(name = "rules_helm", version = "0.3.2")

bazel vendor --vendor_dir=vendor
dir vendor\rules_helm~~helm~helm\helm.exe
<note resulting file is a symlink that points into user cache>

Which operating system are you running Bazel on?

windows, but I suspect this is a general problem

What is the output of bazel info release?

7.2.0 latest (8c6220a)

If bazel info release returns development version or (@non-git), tell us how you built Bazel.

No response

What's the output of git remote get-url origin; git rev-parse HEAD ?

No response

Is this a regression? If yes, please try to identify the Bazel commit where the bug was introduced.

No response

Have you found anything relevant by searching the web?

No response

Any other information, logs, or outputs that you want to share?

There is also an issue in rules_helm on Windows with the rules_helm symlink, but this is unrelated to this reported issue: periareon/rules_helm#78. I have validated this by fixing the rules_helm issue locally.

Metadata

Metadata

Assignees

Labels

P1I'll work on this now. (Assignee required)team-ExternalDepsExternal dependency handling, remote repositiories, WORKSPACE file.type: bug

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions