如何运行第一批文件并转到第二批文件而无需等待完成第一批文件

问题描述 投票:1回答:1

我想在chef中运行两个不同的批处理文件。问题是,在执行第一个批处理文件后,它正在等待完成然后执行batchfile2。在不等待batchfile1完成的情况下,我想执行batchfile2。

batch "run-script1" do
  code  "batchfile1"
  cwd "path"
  action :run
end

waiting to complete batchfile1 execution and then executing batchfile2

batch "run-script2" do
  code  "batchfile2"
  cwd "path"
  action :run
end

在不等待batchfile1完成的情况下,我想执行batchfile2

chef
1个回答
0
投票

如果你在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
© www.soinside.com 2019 - 2024. All rights reserved.