Bazel:如何访问 Skylark 中的工作区状态变量?
Bazel: How to access workspace status variables in Skylark?
我正在使用 --workspace_status_command
with stable status variables similarly to the Kubernetes test-infra usage。
我想将 STABLE_*
变量公开给自定义 Skylark 规则。我应该怎么做?
rules_docker
支持从工作区状态文件中标记。看起来它使用 ctx.info_file
和 ctx.version_file
来访问它们:https://github.com/bazelbuild/rules_docker/blob/4d8ec6570a5313fb0128e2354f2bc4323685282a/container/layer_tools.bzl#L83
它们不在已发布的文档中,但 Bazel 源代码似乎表明这些是正确的:https://github.com/bazelbuild/bazel/blob/0.12.0/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java#L987-L1011
我正在使用 --workspace_status_command
with stable status variables similarly to the Kubernetes test-infra usage。
我想将 STABLE_*
变量公开给自定义 Skylark 规则。我应该怎么做?
rules_docker
支持从工作区状态文件中标记。看起来它使用 ctx.info_file
和 ctx.version_file
来访问它们:https://github.com/bazelbuild/rules_docker/blob/4d8ec6570a5313fb0128e2354f2bc4323685282a/container/layer_tools.bzl#L83
它们不在已发布的文档中,但 Bazel 源代码似乎表明这些是正确的:https://github.com/bazelbuild/bazel/blob/0.12.0/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java#L987-L1011