2

考虑以下写在WORKSPACE文件中的 bazel 规则:

container_pull(
    name = "release-base",
    registry = "mydockernet:9443",
    repository = "release-base",
    digest = "sha256:...",
    tag = "1.8.2",
)

问题是标签值1.8.2是写在yaml配置文件中的,我们要尊重 DRY 原则(从配置文件中读取值,而不是复制 bazel 文件中的值)。有没有办法处理这个?

4

1 回答 1

0

它不是 yaml,但您可以在另一个 bzl 文件中定义内容,然后将它们加载到您的 WORKSPACE 中:

load("common.bzl", "MYVERSION")
container_pull(
   name = "release-base",
   registry = "mydockernet:9443",
   repository = "release-base",
   digest = "sha256:...",
   tag = MYVERSION,
)

然后是common.bzl:

MYVERSION=1.8.2
于 2020-02-04T11:21:09.060 回答