Anisble: Как условно установить переменную env (модуль docker_container)

У меня есть задача, где я должен запустить Docker- контейнер с помощью модуля docker_container, поэтому я использую его так:

- name: Start mImage
  docker_container:
    name: "{{ item }}"
    image: "myImage"
    state: started
    recreate: true
    pull: true
    ports:
      - "{{ ports }}"
    env:
      DATASOURCE_URL: "{{myURL}}"
  with_items: "{{selected_APIS}}"
  when:
    - CONDITION == 'True'  #if true set the env var else do not set

Как вы можете видеть, у меня есть env var, который я хочу установить, только когда мое состояние проверено.

Проблема в том, что когда условие не проверено, я не должен его устанавливать -> DATASOURCE_URL даже не должен быть установлен, я попробовал синтаксис jinja, выполнив это:

  DATASOURCE_URL: "{{myURL if CONDITION == 'True' }}"

но так, если ложно, DATASOURCE_URL устанавливается пустым (что приводит к проблемам других, так как я не хочу, чтобы это даже инициировало его.

Предложения?

0 ответов

Другие вопросы по тегам