我想将文件从 salt stack 主服务器复制到 minion 服务器。我从/sf/ask/1938152051/找到了一个脚本。但我得到了一个错误。
copy_my_files:
file.recurse:
- source: salt://srv/salt/nginx.conf
- target: /etc/nginx
- makedirs: True
Run Code Online (Sandbox Code Playgroud)
错误:-
ID: copy_my_files
Function: file.recurse
Result: False
Comment: Specified file copy_my_files is not an absolute path
Started: 09:46:24.850682
Duration: 1.473 ms
Changes:
Run Code Online (Sandbox Code Playgroud)
我已经为两者提供了正确的路径。
小智 2
如果我是正确的, file.recurse 用于复制目录的内容。在这里,如果只复制一个文件,您需要使用file.managed。
例如重用您的示例,这应该有效:
copy_my_files:
file.managed:
- name: /etc/nginx/nginx.conf
- source: salt://nginx.conf
- makedirs: True
Run Code Online (Sandbox Code Playgroud)
请注意,您要复制的 nginx.conf 文件必须位于 salt master 上的 /srv/salt 中。这是 salt:// 指向的默认位置(除非您修改了配置)
如果你想使用file.recurse复制多个文件,这也很容易
deploy linter configuration:
file.recurse:
- name: "/usr/local/linter"
- source: salt://devtools/files/linter
- makedirs: True
- replace: True
- clean: True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19941 次 |
| 最近记录: |