簡體   English   中英

Chef:如何在ruby塊中增加Mixlib :: ShellOut的CommandTimout?

[英]chef: How do I increase the CommandTimout for Mixlib::ShellOut in a ruby block?

我正在嘗試在基於Chef 11.10.4的客戶端的Ubuntu 14.04系統上的Chef配方中執行數據庫數據加載。 我正在紅寶石塊中加載數據,這是日志中錯誤的相關部分:

Mixlib :: ShellOut ::的CommandTimeout

命令在600秒后超時:

命令超出了允許的執行時間,被TERM信號終止。

[2015-10-06T01:24:00 + 00:00]錯誤:ruby_block [加載數據集](chef-virtuoso ::加載第178行)發生錯誤:Mixlib :: ShellOut :: CommandTimeout:命令在600秒后超時:

任何人都知道如何將shell_out!的默認CommandTimeout增加到3600 shell_out! 在紅寶石塊中?

這是失敗的食譜中的紅寶石塊:

::Chef::Recipe.send(:include, Chef::Mixin::ShellOut)

ruby_block "Load Dataset" do
  block do
    shell_out!(DATA_LOAD_COMMAND)
  end
end

根據mixlib-shellout代碼和廚師mixin shell_out代碼,您應該能夠使用以下timeout選項:

ruby_block "Load Dataset" do
  block do
    shell_out!(DATA_LOAD_COMMAND, :timeout => 3600)
  end
end

您不必將類發送到Recipe中,它已經是DSL的一部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM