使用 Ansible find 和 file 一起设置权限
Using Ansible find and file together to set permissions
我正在尝试为单个目录中的所有“*.key”文件设置权限。我想一起使用 "find" 和 "files" 但不知道如何处理查找结果。
- find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
# not sure how to do this
- files: group=ssl-cert mode=640
如何让这两个命令协同工作?
提前致谢,
特拉维斯
下面是@helloV 最后的代码:
- name: list private key files
find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
register: keys
- name: set private key permissions
file: path="{{item.path}}" group=ssl-cert mode=640
with_items: "{{keys.files}}"
注册find的输出,然后打印它,这样你就知道find
到底返回了什么。您会发现输出中有一个对象 files
,其中包含有关所有文件的信息。您必须遍历它并从每个文件中提取 path
。未经测试的代码:
tasks:
- find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
register: keys
#- debug: var=keys
- file: path="{{item.path}}" group=ssl-cert mode=640
with_items: keys.files
我正在尝试为单个目录中的所有“*.key”文件设置权限。我想一起使用 "find" 和 "files" 但不知道如何处理查找结果。
- find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
# not sure how to do this
- files: group=ssl-cert mode=640
如何让这两个命令协同工作?
提前致谢, 特拉维斯
下面是@helloV 最后的代码:
- name: list private key files
find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
register: keys
- name: set private key permissions
file: path="{{item.path}}" group=ssl-cert mode=640
with_items: "{{keys.files}}"
注册find的输出,然后打印它,这样你就知道find
到底返回了什么。您会发现输出中有一个对象 files
,其中包含有关所有文件的信息。您必须遍历它并从每个文件中提取 path
。未经测试的代码:
tasks:
- find:
paths: "/etc/nginx/ssl"
patterns: "*.key"
register: keys
#- debug: var=keys
- file: path="{{item.path}}" group=ssl-cert mode=640
with_items: keys.files