Test-Kitchen v1.5.0、Vagrant v1.8.1の環境設定があります。 chef vaultを使用してdata_bags_path/passwords/pilot.jsonファイルの暗号化されたパスワードを解読する方法があります。テストキッチン、ベジタリアン、シェフゼロプロビジョニングのChef Vault
私はここで解決策を使用しています。https://github.com/chef/chef-vault/issues/58daxgamesはページの最後に向かっています。
マイ.kitchen.yml:
---
driver:
name: vagrant
provisioner:
name: chef_zero
require_chef_omnibus: 12.14.77
roles_path: ../../roles
environments_path: ../../environments
data_bags_path: ../../data_bags
client_rb:
environment: lgrid2-dev
node_name: "ltylapp400a"
client_key: "/etc/chef/ltylapp400a.pem"
platforms:
- name: centos-6.8
driver:
synced_folders:
- ["/Users/212466756/.chef", "/etc/chef", "disabled:false"]
suites:
- name: ltylapp400a
run_list:
- role[lgrid-db]
attributes:
chef_client:
シェフ・ボールトを扱う私のレシピからの抜粋:
case node["customer_conf"]["status"]
when 'pilot'
passwords = ChefVault::Item.load('passwords', 'pilot')
when 'production'
passwords = ChefVault::Item.load('passwords', node[:hostname][1..3])
end
関連data_bagsのための私のディレクトリ構造:
data_bags
--passwords
--pilot.json
--pilot_keys.json
私が得ているエラーは、私のclient.pemが、 /etc/chef/ltylapp400a.pemでそのデータバックの内容を解読することはできません。シェフは私がナイフボールをリフレッシュすることをお勧めします、私は私のローカルマシン上の私のシェフサーバーに接続していないので、これを実行すると接続するシェフサーバーを持たないというエラーが表示されます。私の質問は、ぼかしがdata_bagを解読できるように、pilot_keys.jsonに生成された新しい鍵をどのように追加することができるかです。以下
より詳細な答えが、私はまだシェフがやや新しい、テスト・キッチンなどしています優れています...