передать логическую переменную как env, secret или configmap в файл yaml k8s - PullRequest
0 голосов
/ 13 марта 2020

Мы работаем над созданием файла развертывания yaml для нашего приложения Java spring-boot для запуска на AKS.

Мне нужен способ добавить логическую переменную в виде env, secret или configmap, которую я могу передать следующее application.properties

azure.activedirectory.session-stateless=true

в переменную окружения внутри моего модуля следующим образом:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: service
spec:
  replicas: 1
  selector:
    matchLabels:
      app: svc-deployment
  template:
    spec:
      containers:
      - name: image
        image: acr/image:tag
        env:
        - name: azure.activedirectory.session-stateless
          value: true

Я читал, что yaml, похоже, не может разобрать логическое значение Значения либо с кавычкой - "Ture" - или без. Есть ли обходной путь?

Ответы [ 3 ]

1 голос
/ 13 марта 2020

application.properties можно настроить с помощью переменной SPRING_APPLICATION_JSON env

apiVersion: apps/v1
kind: Deployment
metadata:
  name: service
spec:
  replicas: 1
  selector:
    matchLabels:
      app: svc-deployment
  template:
    spec:
      containers:
      - name: image
        image: acr/image:tag
        env:
        - name: SPRING_APPLICATION_JSON
          value: '{"azure": {"activedirectory": {"session-stateless": true}}}'

См .: https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot -features-external-config

0 голосов
/ 13 марта 2020

Обходного пути нет и не будет никакого смысла. Сами по себе env-переменные являются строками, поэтому значения должны быть слишком большими, иначе это все равно будет конвертировать для вас.

0 голосов
/ 13 марта 2020

Чтобы переменная окружения переопределяла значение в application.properties, вы должны объявить имя переменной окружения в верхнем регистре, используя подчеркивание в качестве разделителя.

В вашем случае имя переменной окружения должно быть AZURE_ACTIVEDIRECTORY_SESSIONSTATELESS

Дополнительные сведения см. В правилах Relaxed Binding в документации Spring Boot.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...