Объедините с_fileglob с другим списком в ассибильных детских книгах
-
21-12-2019 - |
Вопрос
Поэтому у меня есть непрерывный PlayBook, и я пытаюсь вызвать команду для каждого элемента в списке, но и запустить эту команду над файломGLOB.В неблагоприятных, и он может принять имена переменной, но если я добавлю «с_fileglob», он просто вставляет «с помощью_fileglob» в качестве имени файла вместо того, чтобы на самом деле делать шаблон.
vars:
repo_versions:
- version: trusty
distribution: Ubuntu
- version: wheezy
distribution: Debian
...
- command: reprepro -b /var/www/html includedeb {{ item[0].version }} {{ item[1] }}
with_nested:
- repo_versions
with_fileglob: /home/repoman/debs/*.deb
when: debs_available.stat.exists == True
.
Я попробовал пару различных комбинаций, и я не могу получить его для обработки команды в двойном цикле (для каждой .version, для каждого файла .deb)
Решение
Это должно быть то, что вы пытаетесь выполнить.
Я использовал модуль shell
для регистрации вывода файлаglob, а затем свойство stdout_lines
переменной реструктуры в цикле.Я преобразовал задачу из моего теста на ваши фактические команды и пути, поэтому вам может потребоваться двойная проверка:
vars:
repo_versions:
- version: trusty
distribution: Ubuntu
- version: wheezy
distribution: Debian
tasks:
- shell: ls -1 /home/repoman/debs/*.deb
register: repo_list
- command: reprepro -b /var/www/html includedeb {{ item[0].version }} {{ item[1] }}
with_nested:
- repo_versions
- repo_list.stdout_lines
.