Ansible with_fileglob-使用路径中的变量发布
当我想将一个变量添加到Ansible with_fileglob-使用路径中的变量发布,ansible,Ansible,当我想将一个变量添加到与_fileglob一起使用的路径中时,我遇到了一个问题-似乎该变量总是扩展到“[]” 我用参数--extra-vars-environment=“dev”运行了剧本,并从调试输出extra-vars:('environment=dev',)中获得 不幸的是,使用和\u fileglob的复制任务失败: - name: Copy all files from environment subdirectory copy: src: "{{ite
与_fileglob一起使用的路径中时,我遇到了一个问题-似乎该变量总是扩展到“[]”
我用参数--extra-vars-environment=“dev”
运行了剧本,并从调试输出extra-vars:('environment=dev',)
中获得
不幸的是,使用和\u fileglob
的复制任务失败:
- name: Copy all files from environment subdirectory
copy:
src: "{{item}}"
dest: /etc/
with_fileglob: directory/{{ environment }}/*
TASK [Copy all files from environment subdirectory] ************************************************************************
task path: /home/ansible/playbook/playbook.yml:511
looking for "files/directory/[]" at "/home/ansible/playbook/files/files/directory/[]"
looking for "files/directory/[]" at "/home/ansible/playbook/files/directory/[]"
looking for "files/directory/[]" at "/home/ansible/playbook/files/files/directory/[]"
looking for "files/directory/[]" at "/home/ansible/playbook/files/directory/[]"
[WARNING]: Unable to find 'files/directory/[]' in expected paths (use -vvvvv to see paths)
我使用的是ansible 2.9.3
请问我做错了什么?
非常感谢您的提示。是保留关键字,不能用作变量名称。看见下面剧本中的固定变量按预期工作
shell>cat pb.yml
-主机:本地主机
任务:
-调试:
变量:项目
使用_fileglob:“目录/{{env}}/*”
考虑到这棵树
shell>树目录
目录
└── 发展
├── 文件1
├── 文件2
└── 文件3
1个目录,3个文件
简略的结果是
shell>ansible playbook pb.yml-e“env=dev”| grep项目:
项目:/scratch/tmp/directory/dev/file2
项目:/scratch/tmp/directory/dev/file1
项目:/scratch/tmp/directory/dev/file3