我想在chef中运行两个不同的批处理文件。问题是,在执行第一个批处理文件后,它正在等待完成然后执行batchfile2。在不等待batchfile1完成的情况下,我想执行batchfile2。
batch "run-script1" do
code "batchfile1"
cwd "path"
action :run
end
batch "run-script2" do
code "batchfile2"
cwd "path"
action :run
end
在不等待batchfile1完成的情况下,我想执行batchfile2
如果你在batchfile1
路径位置有一个名为path
的文件,并且你希望它会被执行...那么它就不会发生,因为这不是batch
resource的工作原理。
我可以假设第一个batch
资源未能执行,导致chef-client运行失败,因此第二个batch
资源未执行。
批处理资源创建并执行临时文件(类似于脚本资源的行为方式),而不是运行命令内联。例如:
batch 'echo some env vars' do code <<-EOH echo %TEMP% echo %SYSTEMDRIVE% echo %PATH% echo %WINDIR% EOH end