加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 在Chef中复制整个目录结构

发布时间:2020-12-16 19:37:21 所属栏目:百科 来源:网络整理
导读:我有一个目录结构(示例数据),我想在Chef配方中复制.似乎唯一的方法是显式创建每个单独的目录和文件: directory "/mnt/data/experiment1/dataset1" do recursive true only_if { node.chef_environment == "dev" }enddirectory "/mnt/data/experiment1/datas
我有一个目录结构(示例数据),我想在Chef配方中复制.似乎唯一的方法是显式创建每个单独的目录和文件:
directory "/mnt/data/experiment1/dataset1" do
   recursive true
   only_if { node.chef_environment == "dev" }
end


directory "/mnt/data/experiment1/dataset2" do
   recursive true
   only_if { node.chef_environment == "dev" }
end

directory "/mnt/data/experiment2/dataset1" do
   recursive true
   only_if { node.chef_environment == "dev" }
end


directory "/mnt/data/experiment1/dataset2" do
   recursive true
   only_if { node.chef_environment == "dev" }
end


cookbook_file "/mnt/data/experiment1/dataset1/testfile1.txt" do
   owner "atom"
   group "atom"
   mode "0644"
   source "sampledata/experiment1/dataset1/testfile1.txt"
   only_if { node.chef_environment == "dev"}
end

...

有没有办法简单地从菜谱中递归复制整个目录结构?指定配方中每个文件的名称似乎是多余的并且容易出错(即,如果我们向树中添加文件但忘记在配方中引用它,则不会复制它.)

我想一个黑客的解决方法是找出所有厨师文件被复制到目标机器上的地方并做一个cp -r但是有什么更干净的东西吗?

或者我是以错误的方式来做这件事的?

解决方法

为什么不使用remote_directory资源.
它的目的正是为了那个.

见:https://docs.chef.io/resource_remote_directory.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读