Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何使用公共babushka dep管理安全文件?_Ruby_Provisioning_Babushka - Fatal编程技术网

Ruby 如何使用公共babushka dep管理安全文件?

Ruby 如何使用公共babushka dep管理安全文件?,ruby,provisioning,babushka,Ruby,Provisioning,Babushka,我想以与对话大致相同的方式分享我的babushka deps: 但是,我使用chef管理SSL证书和SSH密钥。现在这些文件直接在我的厨师配置中,但由于我想共享我的babushka配置,所以我不能将它们放在那里 在babushka有没有一种处理安全的、非回购文件的好方法?这是我目前正在研究的问题。没有内置的方法,但只需编写一点脚本即可完成 如果您在远程系统上运行deps,比如说从shell脚本,那么我会在脚本中添加一个命令,首先rsync私有数据到位: rsync -taP private/ u

我想以与对话大致相同的方式分享我的babushka deps:

但是,我使用chef管理SSL证书和SSH密钥。现在这些文件直接在我的厨师配置中,但由于我想共享我的babushka配置,所以我不能将它们放在那里


在babushka有没有一种处理安全的、非回购文件的好方法?

这是我目前正在研究的问题。没有内置的方法,但只需编写一点脚本即可完成

如果您在远程系统上运行deps,比如说从shell脚本,那么我会在脚本中添加一个命令,首先rsync私有数据到位:

rsync -taP private/ user@host:~/private/
ssh user@host 'babushka "server configured"'
这是最简单的情况,但很快就会变得一团糟。相反,我正在用babushka本身做这类事情,以便用DEP来描述整个过程

我有一个dep,它有两个小助手方法,用于在远程机器上安装babushka,然后在其上运行任意dep。这允许您根据远程运行的结果编写本地DEP,从而有效地将babushka嵌套在其内部

它还不够通用,还不能合并到core中(需要重构),但它工作得很好。在此期间,如果您想试一试,请看:

使用此方法,可以向每个远程运行传递参数。这使得提供私有数据变得很容易,例如您的私钥或用于设置Web服务器的SSL证书等

(请注意,尽管参数值记录在本地和远程框上的~/.babushka/logs/dep name中,但“private”假定这两个框上的相关用户帐户都是可信的。)