当我们阅读时,由于文件改变,“tar”失败,无法继续

我正在运行一个正在运行tar命令压缩目录的ansible-playbook 。 以下是一个ansible任务。

  - name: tar the old code command: tar -czf {{ansible_date_time.date}}.tar.gz /home/ubuntu/my-folder 

以上给出了以下错误。

“警告”:使用unarchive模块,而不是运行tar stderr:tar:删除成员名称中的前导'/'tar:/home/ubuntu/my-folder/xyz.log:文件在我们读取时发生变化

我也尝试了选项--ignore-failed-read但没有压缩目录,但成功运行了其余的任务。

  - name: tar the old code command: tar -czf {{ansible_date_time.date}}.tar.gz /home/ubuntu/my-folder --ignore-failed-read 

由于此任务位于其他任务之间,所以在此之后必须执行的任务失败。

ansible不给模块tar代码。 只有unarchive模块是有解压目录。

    当tar命令遇到“我们读取文件时发生变化”的问题时,会返回代码为1的命令,虽然我不能说太多的权限来解释Ansible,但我认为它会处理任何非零返回码为“失败”。 我通过告诉Ansible重新定义它认为的失败来解决这个问题:

     - name: tar the old code command: tar -czf {{ansible_date_time.date}}.tar.gz /home/ubuntu/my-folder register: tar_result failed_when: tar_result.rc > 1