我在makefile中有以下内容:
some_file: some_script
bash some_script > $@
并且希望在一个ansible playbook任务中复制它,其中运行任务会重新创建文件但仅在生成脚本文件已更改时,否则它是无操作。有没有办法用股票安全模块来实现这个目标?
您必须分两个阶段执行:收集信息,然后有条件地执行
vars:
files:
- some_file
- some_script
tasks:
- stat: path={{ item }}
register: stats
with_items: '{{ files }}'
- debug:
msg: '{{ stats.results[0].stat.path }} is newer than {{ stats.results[1].stat.path }}'
when: '{{ stats.results[0].stat.mtime > stats.results[1].stat.mtime }}'