Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ansible with_fileglob-使用路径中的变量发布_Ansible - Fatal编程技术网

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