Базель: settings_bundle - PullRequest
       4

Базель: settings_bundle

0 голосов
/ 07 февраля 2020

Я настроил

config_setting(
name = "qa"
values = {"define": "env=qa"},
)

config_setting(
name = "dev"
values = {"define": "env=dev"},
)

Теперь, как мне заставить bazel включать settings_bundle , только если он соответствует qa или dev?

ios_application (
name = myApp,
bundle_id = "com.app.myapp",
...
#set it only if qa or dev otherwise no settings_bundle
settings_bundle = ":SettingsBundle"
)

1 Ответ

2 голосов
/ 07 февраля 2020

Вы захотите использовать select(), что-то вроде этого:

WORKSPACE:

load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
bazel_skylib_workspace()

BUILD:

load("@bazel_skylib//lib:selects.bzl", "selects")

...

ios_application(
  ...
  settings_bundle = selects.with_or({
      (":qa", ":dev"): ":SettingsBundle",
      "//conditions:default": None,
  }),
)

На самом деле я не уверен, сработает ли None для //conditions:default, может потребоваться наличие фиктивного пакета настроек.

См .:

...