Назад | Перейти на главную страницу

Ansible fetch с переменным именем файла

Я новичок в Ansible и на самом деле только начинаю реализовывать его в нашей среде. Наша организация требует, чтобы мы вели журнал обновлений, применяемых к нашим серверам. Для согласованности и ясности эти имена файлов создаются с помощью такой команды, как:

yum history info > $(date +"%Y%m%d")_$(hostname)_updates.txt

Поскольку имя файла меняется каждый день, когда команда запускается, как я могу назвать имя файла, используя выборку в playbook? Я пробовал следующие варианты, в том числе с кавычками и без кавычек в src, подачу через переменную и несколько других методов:

- name: Retrieve History
  fetch:
    src: '$(date +"%Y%m%d")_$(hostname)_updates.txt'
    dest: /path/to/file/
    flat: yes

Я искал и пробовал несколько методов, но ничего не вышло, и у меня заканчиваются потоки, которые нужно вытащить. Какие-либо предложения?

Может быть тебе стоит попробовать использовать ansible_date_time переменную и имя файла рендеринга с помощью jinja?

Как это:

- name: Retrieve History
  fetch:
    src: "{{ ansible_date_time.year }}{{ ansible_date_time.month }}{{ ansible_date_time.day }}_{{ ansible_hostname }}_updates.txt"
    dest: /path/to/file/
    flat: yes