aka*_*ash 4 ansible ansible-role
我正在尝试将大量文件(100 个)复制到我的远程服务器。然而,使用“复制”命令此任务需要相当长的时间。搜索了一下,我明白“同步”很适合这个。不幸的是,我当前的远程服务器没有“rsync”,因此我也无法使用“同步”选项。
作为解决方法,我想将文件夹压缩到 ansible 主机中,然后使用“取消归档”模块将其传输到远程服务器。
- name: Archive the folder
shell: zip <dest-zip-path> <path-to-folder>
delegate_to: localhost
Run Code Online (Sandbox Code Playgroud)
但是,这样做时出现以下错误:“module_stderr”:“sudo:需要密码\n”
在传输之前,是否有更简单的方法可以在 ansible 主机上本地压缩文件夹?
根据 Zeitounator 发布的解决方案,这是我用来解决该问题的 Ansible 代码:
- name: Archive the files
archive:
path: <path-to-folder>
dest: <dest-zip-path>
format: zip
delegate_to: localhost
become: false
Run Code Online (Sandbox Code Playgroud)