Linux

如何使用名稱中的變數創建 puppet 文件目錄資源,以便它不會在名稱周圍添加括號

  • December 20, 2021

當我在清單中嘗試以下內容時。

$profile = hiera('duplicity::profile', 'test123')

file { [ "/tmp/${profile}" ]:
 ensure => directory,
 owner  => root,
 group  => root,
}

我在該節點的 heira 中定義了以下內容

duplicity::profile:
 - 'testfails'

它會創建這樣的文件夾

find /tmp/\[testfails\]
/tmp/[testfails]

為什麼將括號添加到文件夾名稱中?

問題在於我如何聲明我的 hiera 數據。

duplicity::profile:
 - 'testfails'

這會創建一個值列表或數組。嘗試從列表或數組中創建目錄是沒有意義的。我應該遍歷列表或確保我只允許單個字元串值。

這將單個字元串分配給變數。

duplicity::profile: 'testthatworks'

正確創建目錄[]

引用自:https://serverfault.com/questions/854256