我正在尝试找出一种方法来使用 Chef 配方中的 Subversion 资源来将现有文件与存储库中的 HEAD 修订版进行比较。
现在看起来 Subversion 资源只会导出文件,覆盖现有文件。这对我不起作用,因为我想将它用于服务配置文件,如果文件不同,则重新启动。
目前我正在将当前版本从 repo 导出到临时文件。然后我通知 bash 资源来区分文件 - 如果不同,请替换现有文件并重新启动服务。这是很多额外的开销,只是为了复制现有资源的功能(即,cookbook_file 和模板)。
注意:我不想每次有更改时都必须修改文件然后上传食谱。我需要其他管理员能够修改配置文件,而无需深入的 Chef 知识。
这甚至可以使用 Subversion 资源吗?如果没有,我可以使用另一种资源/方法来做到这一点吗?