我想使用Ansible在远程位置ovrwrite文件。无论zip文件中的内容是否发生变化,每次运行playbook文件都需要在目标服务器上覆盖。
以下是我的剧本
- hosts: localhost
tasks:
- name: Checking if File is exsists to copy to update servers.
stat:
path: "/var/lib/abc.zip"
get_checksum: False
get_md5: False
register: win_stat_result
- debug:
var: win_stat_result.stat.exists
- hosts: uploads
tasks:
- name: Getting VARs
debug:
var: hostvars['localhost']['win_stat_result']['stat'] ['exists']
- name: copy Files to Destination Servers
win_copy:
src: "/var/lib/abc.zip"
dest: E:\xyz\data\charts.zip
force: yes
when: hostvars['localhost']['win_stat_result']['stat']['exists']
当我运行这个剧本时,它没有覆盖目的地上的文件,因为文件已经存在。我使用force=yes
但它没有用。
也许只是在复制任务之前添加一个删除任务?