2017-09-07 44 views
0

運行rake規格測試我得到:爲什麼使用'lookup'或'hiera'函數進行hiera查找的rspec-puppet行爲不同?

Warning: The function 'hiera' is deprecated in favor of using 'lookup'. See 
https://docs.puppet.com/puppet/4.10/reference/deprecated_language.html 
(file & line not available) 

所以我決定改變使用查找。但是我hiera查找現在不工作

v1 = lookup('key') # doesn't work 
v2 = hiera('key', undef) #works 

我使用rspec的木偶-2.5.0和3.2.0 onceover,否則其他的東西不符合我們使用木偶企業版工作(相當於puppet 4.7.0)(你不喜歡Ruby版本)。

我懷疑是由於rspec-puppet的查找攔截工作無法正常工作,並且找不到正確的hiera.yaml。在我去調試之前,我想知道是否有人已經看到了這個?

+0

沒有進一步的信息,最好的猜測是你試圖使用Hiera配置<4的Puppet查找功能。注意你可能使用Hiera> = 4,但是你的配置設置爲較低。此外,您的警告會將您引導至4.10文檔,因此您比Puppet 4.7.0等同於使用PE。我會猜想2017年或2016年的情況。更多信息將有助於減少猜測。 –

回答

1

非常感謝@ matt-schuchard。這就是其中的原因:hiera config v3。所以我以錯誤的方向接近重構。首先升級hiera,然後木偶代碼本身就是正確的順序。