Ansible 无法找到或访问
Ansible Could not find or access
我正在尝试在我的任务中使用 2 个 lookup(fileglob) 进行循环
---
- hosts: localhost
become: yes
become_user: root
tasks:
- name: Loop with 2 lookup
copy:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- { src: "{{ lookup('fileglob', 'custom_scripts/*', wantlist=True) }}", dest: /var/custom_scripts/ }
- { src: "{{ lookup('fileglob','certs/*', wantlist=True) }}", dest: /var/custom_certs/ }
当我尝试 运行 时,我在错误日志中得到无法找到或访问“文件路径”ansible 正在查看所有这些文件,因为列出了所有无法访问的文件。 777
上设置了所有文件夹和文件的权限
这种复制文件的逻辑似乎有缺陷,很可能导致此问题。 item.src
正如您尝试访问的那样,是一个列表 (wantlist=True
)。实际上,您将文件列表传递给 copy
的 src
参数,而不是 1 个文件。
此外,copy module 支持复制整个目录。所以应该不需要实际获取文件列表。
应该执行如下任务:
- name: Loop with 2 lookup
copy:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- { src: 'custom_scripts/', dest: '/var/custom_scripts' }
- { src: 'certs/', dest: '/var/custom_certs' }
我正在尝试在我的任务中使用 2 个 lookup(fileglob) 进行循环
---
- hosts: localhost
become: yes
become_user: root
tasks:
- name: Loop with 2 lookup
copy:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- { src: "{{ lookup('fileglob', 'custom_scripts/*', wantlist=True) }}", dest: /var/custom_scripts/ }
- { src: "{{ lookup('fileglob','certs/*', wantlist=True) }}", dest: /var/custom_certs/ }
当我尝试 运行 时,我在错误日志中得到无法找到或访问“文件路径”ansible 正在查看所有这些文件,因为列出了所有无法访问的文件。 777
上设置了所有文件夹和文件的权限这种复制文件的逻辑似乎有缺陷,很可能导致此问题。 item.src
正如您尝试访问的那样,是一个列表 (wantlist=True
)。实际上,您将文件列表传递给 copy
的 src
参数,而不是 1 个文件。
此外,copy module 支持复制整个目录。所以应该不需要实际获取文件列表。
应该执行如下任务:
- name: Loop with 2 lookup
copy:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- { src: 'custom_scripts/', dest: '/var/custom_scripts' }
- { src: 'certs/', dest: '/var/custom_certs' }