Ansible - 迭代路径中的项目的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ansible - 迭代路径中的项目的问题相关的知识,希望对你有一定的参考价值。

我对Ansible很新,我似乎无法使用“with_items”迭代路径中的项目。

下面是示例代码,用于浏览路径中的某些文件并将配置应用于Juniper路由器。

---
- name: Get Juniper Device Facts
  hosts: "junos_devices"
  gather_facts: false
  connection: local
tasks:  
  - name: Update prefix-lists
    junos_config:
      src: prefix-lists/{{item}}
    with_items: "/home/python/prefix-lists/*"

我得到的错误是这样的:

failed: [192.168.216.66] (item=/home/python/prefix-lists/*) => {"changed": false, "failed": true, "item": "/home/python/prefix-lists/*", "msg": "path specified in src not found"}

有谁知道我为什么不能这样做?

答案

为什么with_items?使用with_fileglob

从例子:

# copy each file over that matches the given pattern
- name: Copy each file over that matches the given pattern
  copy:
    src: "{{ item }}"
    dest: "/etc/fooapp/"
    owner: "root"
    mode: 0600
  with_fileglob:
    - "/playbooks/files/fooapp/*"

以上是关于Ansible - 迭代路径中的项目的问题的主要内容,如果未能解决你的问题,请参考以下文章

ansible中的循环都是借助迭代来实现的。

将项目分配给ansible中的var with_items

如何在Django视图中使用for循环返回每次迭代[关闭]

Ansible - 在循环中重试失败的迭代

普通JAVA类 如何获取,WEB项目的根路径

片段中 ListView 的 setOnItemClickListener