我想刷新我的所有保险库,是否有一个解决方案可以通过一个命令执行此操作?
E.g。
knife vault refresh certs secret1
knife vault refresh certs secret2
..
--> knife vault refresh certs *
答案 0 :(得分:2)
您可以自动使用"刀数据包"命令。
以下是如何在shell中执行此操作:
for i in $(knife data bag list); do
for j in $(knife data bag show $i|grep _keys$|sed s/_keys$//); do
echo knife vault refresh $i $j
done
done
当您对结果感到满意时,您只需删除" echo"从第3行开始。
答案 1 :(得分:0)
目前在厨师保险库中似乎无法做到这一点。您必须同时提供保管库和项目刷新命令。或者,您可以为此创建一些自动化任务(rake任务),因此您不需要每次都手动运行多个命令。
您可以在GitHub上的chef-vault repo上创建功能请求。