使用unarchive然后修改提取的文件来回答幂等问题

时间:2017-06-21 11:01:11

标签: ansible ansible-2.x

在其中一个ansible角色中,我们提取了一些tar.gz文件,然后我们将其中一个提取的文件替换为另一个,以解决一些问题。

问题是当我们再次运行ansible时,ansible正在重新提取存档,因为目录内容已更改并自然标记任务已更改,并且还会按预期再次替换该文件。

所以每次我们运行剧本时,我们都会有两个“变化”...

如何处理此问题以保持操作的幂等性?

1 个答案:

答案 0 :(得分:3)

使用exclude选项忽略某些路径,请参阅documentation。 即。

- unarchive:
    src: https://example.com/example.zip
    dest: /usr/local/bin
    remote_src: True
    exclude: bad.config

creates也可能适合您,如果远程计算机上已存在指定路径,则无法运行unarchive步骤