我有一个包含不同角色的 ansible playbook。在每个角色中,我想向同一个配置文件添加几行。例如,向文件添加部分ini
:
[部分] 参数1=值1 参数2=值2
实现这一目标的最佳方法是什么?
是否可以连接模板片段?例如:
[部分] 参数1={{ 值变量1 }} 参数2={{ 值变量2 }}
答案1
通过你的例子我会这样做
- 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 文件 - 我最好使用 ansible 核心模块ini文件