[英]Ruby operations on template variables - Chef
我已經在我的廚師食譜食譜中編寫了以下模板
template '/etc/app.conf' do
variables({
my_id: Chef::HTTP.new(https://example.com).get('/',{header})
})
end
我的erb文件是
Output is : <%= @my_id %>
我實際上想執行一些ruby操作(主要是過濾出並計數my_id的組件),然后將這些值(每個組件的數量)傳遞回模板並進一步使用它。 erb配置應該是什么,或者需要在模板塊中添加什么?
(在這里,my_id實際上具有子網,我想獲取那些子網的數量及其值,以便可以進一步使用它執行另一個http請求並獲取每個子網中的節點)。
對Chef Cookbook不太了解,但是您可以在ERB模板中編寫一些紅寶石。 我相信這不是最干凈的解決方案。
請參閱此處 ,了解如何將代碼嵌入到ERB中
您粘貼的內容(希望您進行了總結,因為您錯過了其中的一堆引號)只是一個快速提示。 要獲取JSON數據,您想使用Chef::HTTP::SimpleJSON
,它將為您進行解析, Chef::HTTP::SimpleJSON
進行其他操作。
variables data: Chef::HTTP::SimpleJSON.new('https://whatever.com/').get('/foo')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.