我想把它添加到一个文件的顶部:
#
# Ansible managed
#
我尝试了lineinfile
,它可以工作,但不是幂等的-它在每一次ansible运行时都会添加另一个。
- ansible.builtin.lineinfile:
path: /some/file
regexp: "^#\n# Ansible managed\n#\n"
line: "#\n# Ansible managed\n#\n"
insertbefore: BOF
我尝试了blockinfile
,它在文件的中间添加了一个块(不知道为什么),然后在每次运行ansible时添加另一个块。
- ansible.builtin.blockinfile:
path: /some/file
marker: ""
marker_begin: ""
marker_end: ""
insertbefore: "^#\n# Ansible managed\n#\n"
block: |
#
# Ansible managed
#
我尝试了replace
,它严重地破坏了文件(在每一行之前添加块)。
- ansible.builtin.replace:
path: /some/file
regexp: "^(?:#\n# Ansible managed\n#\n)?(.*)$"
replace: '#\n# Ansible managed\n#\n\1'
我该怎么做?
1条答案
按热度按时间vecaoik11#
使用模块ansible.posix.patch。例如,给定远程主机上的文件
创建修补程序文件
如何创建修补程序的示例
那出戏
将修补文件