我正在为bazel构建规则编写一些验证代码,我需要做一些路径验证。我需要检查某个文件是否存在于与构建文件相同的目录中。我注意到有一个上下文属性build_file_path,它指向构建文件。我想从中提取父目录。
看起来我不能创建一个新的path对象--我没有看到一个构造函数/初始化器。Starlark似乎也不像python那样支持os.path,因为不支持导入。
在Starlark中获取代表路径的string对象的父目录的规范方法是什么?
发布于 2020-06-03 06:27:02
我不能回答你的最后一个问题,但希望以下将有助于解决最初的问题:
您可以使用为其构建此规则实例的目标的标签,并找到它的包。这将为您提供一个表示构建文件的父目录的字符串。
即ctx.label.package
https://stackoverflow.com/questions/62070224
复制相似问题