我正在嘗試使用Bazel爲TensorFlow設置我的自定義編譯系統。 我需要在配置步驟中創建一個臨時文件,我將在構建步驟中將其用作緩存。 我能在我的.bzl文件來創建它:用Bazel創建和讀取臨時文件
repository_ctx.file(filename)
而且一個配置後,我可以看到,它裏面的文件夾:
$HOME/.cache/bazel/_bazel_$USERNAME/%MD5%/external/%repository_name%
其中repository_name實際上是repository_ctx.name
但是在構建時我無法從我的.tpl腳本訪問此路徑。我想通過替換repository_ctx.template
從.bzl腳本發送它,但即使在這裏我還沒有找到如何找到這條路!
它看起來並不像我可以使用像bazel-out或bazel-genfiles這樣的符號鏈接來訪問這個文件夾(這聽起來很有前途,但不是......)。我也無法在該文件夾之外創建文件。
這是一個非常簡單的問題,我只是不能相信,還有比硬編碼路徑或find
它沒有其他辦法...
哼,我明白了。所以我必須找到一種方法將這個'@repository_name //:whatever'從BUILD文件發送到tpl文件。我想我接受你的答案,謝謝! – Zakor
沒問題!添加了如何從.bzl文件訪問它。 – kristina