Chef - 获取 remote_execute 资源的输出

Chef - Get output of remote_execute resource

通常我在这样的变量中得到命令输出: res = `find . -name my_script.sh`。然后我可以解析我感兴趣的输出。

如何获取由 machine_execute 资源执行的命令的输出?

machine_execute 'Check IPA status' do
  command 'ipactl status'
  machine 'IPA_Admin_server'
end

你不能,Chef 资源通常没有输出。在某些情况下,支持输出 API(如 AWS 配置驱动程序的 aws_object 助手),但对于这样的事情,您需要获取低级 Machine 对象并调用其 execute 方法。看一下资源 is implemented for an example. You might also want to skip Provisioning's transport layer and use Train 我们可能会尝试将其集中在该库上。