Chef infra 如何在Chef中进行符号链接或硬链接

Chef infra 如何在Chef中进行符号链接或硬链接,chef-infra,Chef Infra,有两种方法“生成sshkey_”和“创建dbaas_json_” sshkey_一代有如下特点: file '/tmp/keys/ssh_public.pub' do content public_key end # # 我们在目录中创建公钥文件,同样可以正常工作 配方“dbaas_json_创建”类似于: vmPublicKeyText = File.read("/scratch/keys/ssh_public.pub") puts vmPublicKeyText 现在通过runlis

有两种方法“生成sshkey_”和“创建dbaas_json_”

sshkey_一代有如下特点:

file '/tmp/keys/ssh_public.pub' do
content public_key
end
# # 我们在目录中创建公钥文件,同样可以正常工作

配方“dbaas_json_创建”类似于:

 vmPublicKeyText = File.read("/scratch/keys/ssh_public.pub")
 puts vmPublicKeyText
现在通过runlist执行这两个配方时,会出现如下错误:

No such file or directory @ rb_sysopen - /scratch/keys/ssh_public.pub
使用runlist,第二个配方首先执行,然后查找依赖于第一个配方的目录。需要确认如何进行符号链接或硬链接,正如我在下面的代码“dbaas_json_creation”中尝试的那样,但仍然存在相同的问题

 link "/scratch/json/fcubs-dbcs-create.json" do
 to "/scratch/keys/ssh_public.pub"
 link_type :hard
 end

有什么建议吗?

这可能是编译与收敛的问题。有关详细信息,请参阅。

这可能是编译与收敛的问题。有关详细信息,请参阅。

据我所知,您正在
/tmp
目录下创建文件,稍后您将尝试访问
/scratch
目录

然后尝试链接一个不存在的目录(/scratch)


尝试将第一个配方
/tmp/keys/ssh_public.pub
修改为
/scratch/keys/ssh_public.pub
,反之亦然。

据我所知,您正在
/tmp
目录下创建文件,然后尝试访问
/scratch
目录

然后尝试链接一个不存在的目录(/scratch)


尝试修改第一个配方
/tmp/keys/ssh_public.pub
/scratch/keys/ssh_public.pub
,反之亦然。

这是不相关的。纳瓦罗,这是我错误地给出了错误的目录,我实际上是从创建“ssh_public.pub”的同一个目录中读取的。纳瓦罗,这是错误的,我给出了错误的目录,我实际上是从我创建“ssh_public.pub”的同一个目录中读取的。您可以与我们共享您的厨师运行日志吗?您也可以与我们共享您的厨师运行日志吗?