Chef - 根据另一个块的结果触发一个块

Chef - triggering one block based on the results of another

我写了一个简单的方法(在 RHEL 节点上运行),在安装 rpm 包后,它通过 运行 service MyService status 命令检查它是否 运行,然后我捕获结果通过来自 ruby 块

的标准输出和正则表达式

我的问题是,如果正则表达式不匹配,因此服务不是 运行 我如何触发显示

的块

rpm_package 'MyService' do action :remove end

最简单的方法是制作自定义资源,而不是使用 ruby_block 或配方级代码。