Как узнать ценность зашифрованного пакета данных в Test Kitchen
Я добавил data_bags_path
а также encrypted_data_bag_secret_key_path
в kitchen.yml
следующее:
provisioner:
name: chef_zero
chef_omnibus_url: omni-url/chef/install.sh
roles_path: 'test/integration/default/roles'
data_bags_path: "test/integration/default/data_bags"
encrypted_data_bag_secret_key_path: "test/integration/default/encrypted_data_bag_secret"
Я считаю, что вышеприведенные копии encrypted_data_bag_secret
в файл с именем encrypted_data_bag_secret в /tmp/kitchen/
Вот почему в своем рецепте я называю секретом следующее:
secret = Chef::EncryptedDataBagItem.load_secret("/tmp/kitchen/encrypted_data_bag_secret")
encryptkey = Chef::EncryptedDataBagItem.load("tokens", "encryptkey", secret)
Однако тестовая кухня не работает со следующей ошибкой:
No such file or directory - file not found '/tmp/kitchen/encrypted_data_bag_secret'
1 ответ
Решение
В общем, вы, вероятно, не хотите использовать зашифрованные пакеты данных в своих тестах. Если вы хотите использовать шифрование по какой-то причине (на самом деле, нет), используйте обычный data_bag_item()
API, который выполняет загрузку ключей для вас.