我正在尝试检查是否安装了特定的软件包或没有使用ansible,以下是我的任务
- name: check whether a package called {{ pkg_name }} is installed or not
ansible.builtin.debug:
msg: "{{ ansible_facts.packages['pkg_name'] }} is installed
when: "pkg_name in ansible_facts.packages"
pkg_name是我定义的变量,我尝试过与ansible_fact的不同组合,如:
"{{ ansible_facts.packages['pkg_name'] }} is installed"
"{{ ansible_facts.packages.{{ pkg_name }} }} is installed"
但是这些方法都不起作用,但是如果我简单地放字符串而不是变量,它就可以很好地工作,即。
ansible_facts.packages['httpd']
使用变量检查的正确语法是什么?
还确认我可以将数组传递给它以同时检查多个包吗