У меня имеется список репозитариев, который сделан примерно так:
gitRepos
- [ true, "doxygen_documentation.git", "master", "doxygen_doc" ]
- [ false, "idk.git", "qt5", "idk" ]
- [ true, "binke.git", "master", "binke_plugin" ]
...
Чтобы делать действия с репозитариями, используется with_items по данному списку. Раньше в этом списке не было первого столбца true/false, и действия выполнялись для всех элементов списка gitRepos:
- name: Создание/обновление репозитариев
git: repo="{{ item[nRepoNetworkPath] }}" dest="{{ gitReposPath }}/{{ item[nDirectoryName] }}"
with_items:
- "{{ gitRepos }}"
Теперь появился первый столбец, и в with_items надо прописать фильтр, который уберет строки, в которых первый элемент равен false. Условие when использовать нежелательно, так как в нем используются условия по другим переменным, и будет очень заморочено.
Но я читаю документацию:
https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_filters.html
И не вижу там возможности фильтровать/преобразовывать список так, чтобы в нем исключить элементы по условию. Как это можно сделать?