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
устанавливается пустым (что приводит к проблемам других, так как я не хочу, чтобы это даже инициировало его.
Предложения?