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

Ansible, объединяющие файлы

У меня есть анзибл с разными ролями. В каждой роли я хотел бы добавить несколько строк в один файл конфигурации. Например, добавление разделов в ini файл:

[section]
param1=value1
param2=value2

Как лучше всего этого добиться?

Можно ли объединить части шаблона? Например:

[section]
param1={{ value_var1 }}
param2={{ value_var2 }}

По вашему примеру я бы так сделал

- name: Checking is applied aleady
  shell: grep "ANSIBLE_ROLE_X_APPLIED" /path/to/file
  ignore_errors: yes
  register: grep_role_x_applied

- name: Applying changes in file
  lineinfile: dest=/path/to/file line='{{ item }}'
  when: grep_role_x_applied.stdout == ""
  with_items:
    - '; ANSIBLE_ROLE_X_APPLIED'
    - '[section]'
    - 'param1=value1'
    - 'param2=value2' 

Конечно, в каждой роли у вас есть разные теги, например ANSIBLE_ROLE_X_APPLIED

Или что-то основанное на этой идее

РЕДАКТИРОВАТЬ: Если это действительно ini-файл - мне лучше поиграть с доступным основным модулем ini_file

Что о

cat file1 file2 file3 > targetFile

?