2017-11-11 119 views
1

使用container_image規則創建Docker圖像時,映像中不存在必要的運行文件。 pkg_tar規則也是如此,看起來實際上是這個問題。Bazel:在container_image中包含runfiles

用下面BUILD文件,我預計sh_binarytool_b出現在tool_a的runfiles。

container_image(
    name = "my image", 
    base = "@bash//image", 
    directory = "/usr/local/opt", 
    files = [":tool_a"], 
) 

sh_binary(
    name = "tool_a", 
    visibility = ["//visibility:public"], 
    srcs = ["tool_a.sh"], 
    data = [":tool_b"], 
) 

sh_binary(
    name = "tool_b", 
    visibility = ["//visibility:public"], 
    srcs = ["tool_b.sh"], 
) 

圖像但只包含tool_a.shtool_a包裝。

我怎樣才能包含runfiles呢?

回答

0

不幸的是,你不能開箱即用。這是包裝規則中的longstanding defect

+0

我以前見過那個線程。太糟糕了,改變被放棄了。是否有可能以某種方式解決這個問題? – thertweck