小编Ney*_*bar的帖子

ansible with_items列表列表正在变平

我正在尝试使用ansible循环列表列表来安装一些软件包.但是{{item}}返回子列表中的每个元素而不是子列表本身.我有一个yaml文件来自外部ansible的清单列表,它看起来像这样:

---
modules:
 - ['module','version','extra']
 - ['module2','version','extra']
 - ['module3','version','extra']
Run Code Online (Sandbox Code Playgroud)

我的任务看起来像这样:

task:
 - include_vars: /path/to/external/file.yml
 - name: install modules
   yum: name={{item.0}} state=installed
   with_items: "{{ modules }}"
Run Code Online (Sandbox Code Playgroud)

当我跑步时,我得到:

fatal: [localhost]: FAILED! => {"failed": true, "msg": "ERROR! int object has no element 0"}
Run Code Online (Sandbox Code Playgroud)

当我尝试:

- debug: msg="{{item}}"
  with_items: "{{module}}"
Run Code Online (Sandbox Code Playgroud)

它打印每个元素(模块,版本,额外等),而不仅仅是子列表(这是我期望的)

yaml ansible

14
推荐指数
4
解决办法
3万
查看次数

标签 统计

ansible ×1

yaml ×1