我在 LWRP 中有以下内容,它所做的只是分解一个 .ear 文件::
action :expand do
ear_folder = new_resource.target_folder
temp_folder = "#{::File.join(ear_folder, 'tmp_folder')}"
expand_ear(new_resource.source, ear_folder)
expand_wars(ear_folder,temp_folder)
end
def expand_ear(src,dest)
bash "unzip EAR" do
cwd dest
code <<-EOF
pwd
ls -l
jar -xvf #{src}
EOF
end
end
def explode_wars(src,dest)
Dir.glob("#{basepath}/*.war") do |file|
......... ###crete tmp folder, move .war there then unzip it to 'dest'
end
end
当我运行此/使用 Vagrant 提供/时,输出显示 Chef 并行启动了“expand_ear”和“expand_wars”。结果,expand_wars def 无法找到所有 .wars /它们仍在被提取。我尝试将“expand_ear”设为布尔值并将“expand_wars”包装在:
if expand_ear?(src,dest)
expand_war
end
但这会产生相同的结果。???