Ansible Передача переменной в строку файла с помощью stdout_lines

name: the file
    raw: cat "{{item}}"
    with_items: "{{groups['firewall']}}"
    when: inventory_hostname == item
    register: output3

debug: var=output3.results

name: Copy File to Local Machine
    local_action: lineinfile dest=/Users/{{inventory_hostname}} line="{{item}}"
    with_dict: "{{ output3 }}"

Как сделать output3.stdout_lines строкой? Текущий метод, который у меня есть, копирует все, что мне не нужно.


person ehuck    schedule 09.08.2016    source источник


Ответы (1)


Попробуй это:

- name: Copy File to Local Machine
  local_action: lineinfile dest=/Users/{{inventory_hostname}} line="{{item.1}}"
  with_subelements:
      - "{{output3.results}}"
      - stdout_lines
      - flags:
          skip_missing: yes

Я полагаю, это какой-то аппаратный блок без поддержки Python?
В противном случае есть более элегантные способы извлечения файлов.

person Konstantin Suvorov    schedule 09.08.2016
comment
Спасибо, это очень помогло. - person ehuck; 09.08.2016