2

什么时候适合在配方中使用 shellout 而不是 bash 块或执行?由于它的日志记录,我倾向于默认将它用于所有外部调用,但命令的冗长是一个缺点。

4

1 回答 1

5

使用 Shellout

当您需要获取命令的结果以在其他地方使用时

使用script和儿童

当您希望 Chef 为您执行代码时。

Shellout 不是script/execute块的替代品。它们还在 Chef Client 运行期间的不同时间执行。Shellout 是 Ruby 的东西,而script/execute是 Chef 资源,例如template. 这些资源中包含大量的安全和跨平台支持,而 Shellout 将无法获得这些支持。

于 2014-01-23T05:57:54.650 回答