我正在使用ansible配置firewalld。lineinfile
模块有一个validate
参数,我想用它来验证我的配置。
我试过这个:
- name: config firewalld
become: true
ansible.builtin.lineinfile:
path: /etc/firewalld/firewalld.conf
regexp: "^#?FirewallBackend"
line: "FirewallBackend=iptables"
state: present
validate: firewall-cmd --check-config # <--------------
但我得到一个ansible错误:
验证必须包含%s:firewall-cmd --check-config
这是因为它需要文件的路径(%s
)。
我查阅了--check-config
的文档,想找到一种指定配置文件路径的方法,但什么也找不到。
- 有没有办法做到这一点?* 我可以运行一个原始的
sudo firewall-cmd --check-config
,但我希望有一个本地的ansible方法来做到这一点。
1条答案
按热度按时间unguejic1#
从the repo的细节来看,看起来这不可能用ansible干净地完成。这里有一个解决方案: