Я пытаюсь заполнить переменную ansible:
- "docker -ce", если в RedHat
- "docker" в противном случае
следующие работы, но не очень чистые:
docker_edition: 'ce'
docker_package: docker{{ "-" if (ansible_os_family == "RedHat") else "" }}{{ docker_edition if (ansible_os_family == "RedHat") else "" }}
Я хотел бы написать это в одном троичном выражении, я попробовал следующее:
docker_package: "docker{{ (ansible_os_family == "RedHat") | ternary("","-{{ docker_edition }}") }}"
docker_package: docker{{ (ansible_os_family == "RedHat") | ternary("","-{{ docker_edition }}") }}
docker_package: docker{{ -{{ docker_edition }} if (ansible_os_family == "RedHat") else "" }}
но я не могу заставить это работать.
Для пояснения, сработало бы следующее:
{{ "docker-ce" if (ansible_os_family == "RedHat") else "docker" }}
но я хочу оставить переменную docker_edition
отдельной, так как она используется в другом месте.