2016-12-27 135 views
-1

我的代碼puppet用execute shell命令運行ruby腳本,變量不工作。

cmd_result = %x("#{rndc}" "#{cmd_arg}" "#{zone}" in "#{view}") 

puts "#{$?.exitstatus}" 
puts cmd_result 

不返回任何輸出,退出狀態爲1時運行的傀儡。

但如果我手動運行它,它正常工作。

+0

你是否嘗試打印那些從puppet類內部調用的變量擴展到什麼? – codeforester

+0

在Puppet中如何使用它? –

+0

@codeforester我將此添加到我的代碼。 #運行命令 cmd_result = eval「%x(#cmd:#{cmd}」) cmd =「#{rndc}#{cmd_arg}#{zone} in#{view}」 logger.debug {cmd})「 logger.debug(」Node_Name =#{hostname} View =#{view} Zone =#{zone} api_link =#{api_link} Auth_token =#{auth_token} rndc = [#{cmd_result}]「 ) – Eman

回答

0

你是(我認爲)試圖從Puppet運行Ruby代碼。

Puppet使用DSL 以紅寶石書寫。我建議你開始here

+0

bu我可以執行外部命令嗎?我的意思是,如果我想運行一個bash甚至python這將是沒有問題的exec資源類型權利? – Eman

相關問題