如何在宏中计算bazel工作区名称?

时间:2017-11-02 06:33:24

标签: bazel

我想在执行bazel宏期间计算工作区名称。如果这是规则我可以​​使用ctx.workspace_name(),但我在宏中没有ctx个对象。有native.package_name()native.repository_name()但没有native.workspace_name()

我需要这个,因为我想计算docker镜像中我的文件由docker规则放置的路径,以便我可以构造正确的entrypoint参数。

https://github.com/bazelbuild/rules_docker/blob/master/lang/image.bzl#L84

1 个答案:

答案 0 :(得分:0)

native.repository_name()正是您所寻找的。令人困惑的是来自workspace_name()的{​​{1}}和来自ctx repository_name() native的{​​{1}}。