我正在使用pex_pytext,我想传递一些参数。其中一些args是文件的路径:我的源代码,以便获取覆盖率信息。有一个args
参数传递给PEX-pytest可执行文件:
pex_pytest(
name = "test",
srcs = glob(["**/*_test.py"]),
args = [
"--cov=path/to/code",
"--cov-config=path/to/.coveragerc",
],
deps = [
":main",
"//pylibs/test/mock",
],
)
因此,在这里,我希望我将得到我的主要代码(:main
)和mock
库,并将其放入test-pex中。然后,我想使用--cov
和--cov-config
参数运行它。
问题是args
接受一个字符串数组,而我不知道如何传递文件路径。我当时在想,如果我可以要求Bazel将标签转换为文件路径,那么我可以提供适当的标签。
如何获取相对于我的BUILD文件的路径,并将其作为字符串传递给该BUILD文件中定义的规则?
答案 0 :(得分:1)
args
(用于测试)应具有"make" variable substitution,所以$(location)
可以工作:
"--cov=$(location :path/to/code)"