Chef infra 通过将两个文件与chef中的regex匹配来执行脚本

Chef infra 通过将两个文件与chef中的regex匹配来执行脚本,chef-infra,Chef Infra,我是厨师新手。我的chef节点中有一个version.txt文件。我编写了一个菜谱来执行chef节点中的脚本。我上传了另一个版本不同的version.txt文件(即内容)。我只想执行脚本当前版本的.txt文件包含比前一版本更高的值?如何处理这个正则表达式?如何使用正则表达式比较两个文件?您不比较文件,而是告诉Chef您希望文件的内容是什么,Chef将强制执行。如果文件已经存在,但使用旧版本,则将对其进行更新;如果文件不存在,则将创建该文件。只有当文件内容发生更改时,才能使用通知触发运行脚本。如何

我是厨师新手。我的chef节点中有一个version.txt文件。我编写了一个菜谱来执行chef节点中的脚本。我上传了另一个版本不同的version.txt文件(即内容)。我只想执行脚本当前版本的.txt文件包含比前一版本更高的值?如何处理这个正则表达式?如何使用正则表达式比较两个文件?

您不比较文件,而是告诉Chef您希望文件的内容是什么,Chef将强制执行。如果文件已经存在,但使用旧版本,则将对其进行更新;如果文件不存在,则将创建该文件。只有当文件内容发生更改时,才能使用通知触发运行脚本。

如何执行触发运行脚本的通知?你能举一个语法的例子吗?如果你不熟悉Chef语法,我建议你从教程开始。通知被添加到资源中,如
通知:运行,'execute[/path/to/my/script]
其中
执行'/path/to/my/script'
它是您在其他地方定义的另一个资源,
:run
是您要执行的操作。