[英]Use command output in puppet ensure_packages package definition
我目前正在從木偶清單安裝 kernel 標頭,其中包含以下內容:
ensure_packages([
'linux-headers-4.19.0-12-cloud-amd64',
],
{ 'ensure' => 'present' })
如果我可以使用uname -r
命令而不是硬編碼 kernel 版本會更有意義,以便自動檢索正在安裝它的 kernel 版本實例。
因此,我嘗試使用以下內容進行配置。
ensure_packages([
"linux-headers-$(uname -r)",
],
{ 'ensure' => 'present' })
但這失敗了,因為它似乎無法解決該命令。
這在傀儡中甚至可能嗎?
這在傀儡中甚至可能嗎?
是的,可以在目錄構建期間運行外部命令,捕獲 output,並像使用任何其他字符串一樣使用它來通知目錄的詳細信息。 您將在generate()
function的幫助下完成此操作。 您可能需要指定命令的顯式路徑。
但這不是你真正想要的。
如果您在目錄構建期間執行評估,那么您將獲得與構建目錄的機器相關的數據,該機器通常與應用目錄的機器不同。 向目錄生成器傳達目標機器詳細信息的最合適的工具是事實。 您需要檢查核心(內置) kernel
事實是否已經提供了您想要的。 如果沒有,那么為此目的編寫自定義事實應該很容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.