0

如何引用 a 给出的目录路径中的文件genrule?我正在尝试以下方法,但似乎不起作用:

http_file(
    name = "some_file",
    ...
)

genrule(
    name = "zip_structure",
    srcs = [":some_file"],
    bash = 'mkdir -p ${OUT}/bin; cp ${SRCS} ${OUT}/bin;',
    out = "zip_contents",
)

zip_file(
    name = "my_zip",
    srcs = glob(["$(location :zip_structure)/**/*"]), # does not work
    # srcs = glob(["$(location :zip_structure)/*"]), # does not work either
    # srcs = glob([":zip_structure/**/*"]), # does not work either
)

我基本上是在尝试使用bin包含文件的文件夹来创建文件夹结构。我想压缩那个bin文件夹。

问题是,如果我直接引用 :zip_structure ,:zip_structure(在这种情况下zip_contents)的 out 文件夹将作为根文件夹包含在最终 zip 的结构中。

一种解决方法是命名genruleto的 out 文件夹bin,这样 bin 是生成的 zip 中的根文件夹,但这似乎不是一个正确的方法,因为我只输出可能更多的内部文件夹之一复杂的结构。

4

1 回答 1

0

查看 buckaroo 的提取功能。 代码用法示例

于 2020-03-28T22:12:54.543 回答