Bazel - Как прочитать строку из файла среды?
У меня есть несколько k8s_object
правил в моем проекте, и я снабдил их одинаковыми cluster
назовите так:
k8s_object(
name = "k8s_service",
kind = "service",
cluster = "gke_cents-ideas_europe-west3-b_cents-ideas",
template = ":gateway.service.yaml",
)
Поэтому всякий раз, когда я хочу изменить имя кластера, мне приходится менять его во многих разных местах.
Цель
Я бы предпочел установить имя кластера в .env
файл вроде этого:
KUBERNETES_CLUSTER=my-cluster-name
и пусть Базель автоматически получит это значение.
1 ответ
Решение
https://docs.bazel.build/versions/2.0.0/skylark/tutorial-sharing-variables.html
Создайте файл.bzl, в котором вы можете объявить переменную. Импортируйте этот файл bzl во все файлы BUILD, ссылающиеся на переменную.