Я следую методу, описанному в this post, для создания записи DNS для нового сервера в качестве шеф-повара. Я создал зашифрованный элемент мешка данных для моего учетного AWS:EncryptedDataBagItem.load производит «не может преобразовать nil в String»
$ knife data bag show passwords aws --secret-file .chef/encryted_data_bag_secret
aws_access_key: <my_access_key>
aws_secret_key: <my_secret_key>
id: aws
Однако, когда я запускаю клиент шефа, эту линию ...
aws_creds = Chef::EncryptedDataBagItem.load('passwords', 'aws')
производит эту ошибку:
TypeError: can't convert nil into String
Я попытался найти ошибку, но пока я вижу доказательства того, что другие люди столкнулись с этим, неясно, какова их проблема и как она была решена. Что здесь происходит, и как я могу это исправить?
Это определенно часть проблемы. У меня был рецепт, который будет копировать секретный файл (ранее в run_list, чем этот), но, видимо, файл ключа должен быть на месте * до запуска chef-client *. – MrTheWalrus