【发布时间】:2014-02-02 03:21:58
【问题描述】:
我有一个需要很长时间(10 小时)才能执行的配方,我收到了这个错误
错误:Mixlib::ShellOut::CommandTimeout: windows_batch
如您所见,它位于 Windows 机器上。
配方是
windows_batch "some_name" do
code <<-EOH
#copy code that takes several hours
EOH
timeout = 180000
end
如您所见,我将超时设置为一个很大的数字,但它会超时大约 6.5 小时并且基本上忽略了地雷。
令人困惑的部分是,尽管某些节点运行完全相同的配方,但它们不会超时!!!
如何为此增加超时设置?
【问题讨论】:
-
你确定你正在以一种应该做的方式使用 chef 吗?我无法想象我需要运行一些脚本来执行几个小时来配置系统的场景。显然你应该把它分成更小的部分,或者使用 chef 创建一个 *.bat 文件并在其他(子)进程中运行它,而不是与 chef 交互。
-
但是我需要厨师来控制这个长脚本的执行,只有在这一步完成后才进入下一步。该脚本确实在处理来自远程位置的大量数据,我不明白为什么厨师不会处理这个。毕竟,厨师只是在运行脚本。
标签: chef-infra