Как в Ansible в цикле with_items получить значение item?, xintrea, 23-Апр-20, 13:23 [смотреть все]Имеется такой список:
# Таблица репозитариев gitRepos: - [ "idk.git", "master", "idk", "idk.pro", "" ] - [ "touch_widgets.git", "master", "tw_integration", "tw.pro", "" ] - [ "akson.git", "radioline", "akson", "", "/usr/share/akson" ]
Я делаю по ней всякие циклы with_items. В этих циклах я могу получать значения столбцов по числовому индексу, например {{ item[2] }}, вот так:
- name: Получение последних изменений из GIT shell: "cd {{ gitReposPath }}/{{ item[2] }} ; git pull" with_items: - "{{ gitRepos }}"
Но писать магические константы индексов некомильфо. Поэтому я сделал переменные:
# Структура таблицы репозитариев gitTable_RepoNetworkPath: 0 # Сетевой путь к Git-репозитарию gitTable_BranchName: 1 # Имя ветки gitTable_DirectoryName: 2 # Имя каталога gitTable_ProFileName: 3 # Имя файла проекта gitTable_TargetCopyDirectoryName: 4 # Директория для прямого копирования
И хочу вместо индексов писать осмысленные имена переменных. То есть, вместо
{{ item[2] }}
я пытаюсь написать:
{{ item[ {{ gitTable_DirectoryName }} ] }}
Но Ansible меня не понимает, и дает ошибку:
fatal: [compilingHost]: FAILED! => {"msg": "template error while templating string: expected token ':', got '}'. String: cd {{ gitReposPath }}/{{ item[ {{ gitTable_DirectoryName }} ] }} ; git pull"}
Вопрос: Как получить значение переменной цикла item, когда она является списком, причем индекс задать не магическим числом, а переменной?
|
- Как в Ansible в цикле with_items получить значение item?, xintrea, 13:42 , 23-Апр-20 (1)
В общем, надо писать так:
{{ item[ gitTable_DirectoryName ] }}
Вопрос закрыт. - Как в Ansible в цикле with_items получить значение item?, Аноним, 15:24 , 27-Апр-20 (2)
> Имеется такой список: я, конечно, только учусь, но что мешает сделать так:
# Таблица репозитариев gitRepos: - RepoNetworkPath: "idk.git" BranchName: "master" DirectoryName: "idk" ProFileName: "idk.pro" TargetCopyDirectoryName: "" - RepoNetworkPath: ...
и писать
{{ item.DirectoryName }}
?
- Как в Ansible в цикле with_items получить значение item?, Аноним, 15:38 , 27-Апр-20 (3)
|