Ansible如何复制到具有动态后缀的目标文件夹
我需要将本地源文件夹的内容复制到远程文件夹,其中源内容如下:Ansible如何复制到具有动态后缀的目标文件夹,ansible,ansible-2.x,Ansible,Ansible 2.x,我需要将本地源文件夹的内容复制到远程文件夹,其中源内容如下: files/ ├── certs ├── server.crt └── server.key 目标路径将随其后缀而变化。例如,如果目标路径是claim-pvc-3b6165b0-f1d6-11ea-a39b-0050569b0faf/。此处的索赔pvc-始终保持不变,但其后缀3b6165b0-f1d6-11ea-a39b-0050569b0faf将发生变化 我尝试过使用以下方法,但不起作用: - name: cop
files/
├── certs
├── server.crt
└── server.key
目标路径将随其后缀而变化。例如,如果目标路径是claim-pvc-3b6165b0-f1d6-11ea-a39b-0050569b0faf/。此处的索赔pvc-
始终保持不变,但其后缀3b6165b0-f1d6-11ea-a39b-0050569b0faf
将发生变化
我尝试过使用以下方法,但不起作用:
- name: copy contents
copy:
dest: "claim-pvc-*"
src: files/certs/
请帮助我,我是ansible的初学者
更新
正如在评论中所建议的那样。我已尝试使用查找模块获取目录的全名:
- name: find the
find:
paths: "/mnt/k8sMount/"
patterns: "claim-pvc"
file_type: "directory"
register: find_result
- name: print find_result
debug: var=find_result
但无法获取目录名。这就是结果
ok: [master] => {
"find_result": {
"changed": false,
"examined": 28,
"failed": false,
"files": [],
"matched": 0,
"msg": ""
}
}
您可以使用
dest
dir父目录上的find
模块来确定dest dir的实际名称,然后在copy
任务中使用它。感谢您的建议,我已经尝试过了,但无法获得所需的输出,我已经用观察更新了问题。如果有任何错误,请告诉我。您应该检查上的“示例”以了解您需要提供的模式。您可以使用dest
dir父目录上的find
模块来确定dest dir的实际名称,然后在copy
任务中使用它。谢谢您的建议,我已经试过了,但是没有得到想要的结果,我用观察更新了这个问题。如果有任何错误,请让我知道。您应该检查上的“示例”,了解您需要提供的模式