Я пытаюсь оценить значение переменной role_path
, чтобы использовать ее в других ролях в качестве контрольной точки. Проблема в том, что, когда моя переменная используется в другой роли, она имеет значение другой роли, а не того, когда она была объявлена.Ansible - как оценить переменную role_path
Я обойду это с помощью команды echo
значения текущей переменной и регистрации вывода в соответствии с ниже.
- name: get ansible base path from current role_path
command: echo {{ role_path }}/../../
register: ansible_base_path_out
- name: save ansible base path variable for future use
set_fact:
ansible_base_path: "{{ ansible_base_path_out.stdout }}"
Это лучший способ сделать это или есть более красноречивое решение?
@techraf - переменная 'role_path', а не' role_path'. В конце роли слова нет 's'. В то время как 'role_path' предоставляет список,' role_path' предоставляет только путь текущей роли. –
@techraf Я прошу отличия - тогда как 'role_path' дает список,' role_path' дает только путь текущей роли. –
Я голосую, чтобы закрыть этот вопрос как не относящийся к теме, потому что «как улучшить рабочий код» - запросы не относятся к теме в StackOverflow и должны быть опубликованы в обзоре кода SE – techraf