Я думаю, что вы можете использовать Bazel's config_setting
и select
, чтобы сделать эту работу.config_setting
позволяет вам определять предикат, который является истинным или ложным, в зависимости от аргументов командной строки.Вы можете предоставить --define
аргумент, который config_setting
будет проверять.Затем вы можете при желании передать аргумент тестам, используя select
.
Что-то подобное может работать для вас.Это передаст аргумент -test.short
в тест, если вы передадите --define=short=true
в командной строке.По умолчанию аргумент не передается.
config_setting(
name = "short",
values = {
"define": "short=true",
},
)
go_test(
name = "go_default_test",
srcs = ["hello_test.go"],
args = select({
":short": ["-test.short"],
"//conditions:default": [],
}),
)