Заменить все содержимое файла с помощью Ansible - PullRequest
0 голосов
/ 11 ноября 2019

Я бы хотел иметь возможность заменить все содержимое файла с помощью Ansible playbook.

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

---
  - hosts: my_hosts
    tasks:
     - name: Replace the content of my file
       lineinfile:
         path: /home/user-ansible/test/conf
         regexp: "*"
         line: "{{ lookup('file', '/home/ansible/config/conf') }}"

1 Ответ

1 голос
/ 11 ноября 2019

Чтобы заменить содержимое файла на целевом сервере (dest) и убедиться, что он всегда выровнен с вашим источником (src), используйте модуль copy

---
- name: Demo play to copy file
  hosts: my_hosts

  tasks:

   - name: Replace the content of my file
     copy:
       src: /home/user-ansible/test/conf
       dest: /home/ansible/config/conf

Дополнительное примечание. В опубликованной вами книге воспроизведения есть проблемы с отступами yaml, которые могут вызвать проблемы в будущем. Пожалуйста, уделите Y минут, чтобы выучить yaml и обратите внимание на отступы и новые строки. Вы можете проверить свои игровые книги с помощью yamllint и ansible-lint до публикации

...