Несколько разных команд в цикле

Существует спецификация, которую поддерживает множество драйверов, называемая DBRef.

DBRef - это более формальная спецификация для создания ссылок между документами. DBRefs (обычно) включают имя коллекции, а также идентификатор объекта. Большинство разработчиков используют только DBRefs, если коллекция может измениться с одного документа на другой. Если ваша ссылочная коллекция всегда будет одинаковой, рекомендации по руководству, описанные выше, более эффективны.

blockquote>

Взято из MongoDB Документация: Модели данных> Ссылка на модель данных> Ссылки на базы данных

0
задан nwinkler 17 January 2019 в 15:07
поделиться

1 ответ

Цикл работает только для задачи, к которой он прикреплен. Чтобы обернуть несколько задач в цикл, вам нужно разделить их на другой файл, использовать оператор include для их загрузки, а затем присоединить цикл к этому оператору include.

В твоем случае ничего этого не требуется. Я думаю, что это должно сделать то, что вы ищете, предполагая, что file1.txt содержит список имен файлов, по одному на строку & amp; без расширения файла:

- host: localhost
  connection: local
  tasks:
    - name: Convert each file listed in file1.txt
      copy:
        dest: "./{{ item | trim }}.json"
        content: "{{ lookup('file', item + '.yml') | from_yaml | to_nice_json }}"
      with_lines: cat ./file1.txt
  • connection: local остановок. Ansible открывает SSH-соединение с локальным хостом.
  • lookup('file', item + '.yml') читает файл. item - это имя переменной по умолчанию, которое используется в циклах для хранения содержимого каждого элемента цикла.
  • with_lines работает только локально, поэтому, если вам нужно выполнить это удаленно, вам нужно будет изменить это [ 119]
0
ответ дан clockworknet 17 January 2019 в 15:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: