我正在寻找一种方法来暂停 Jenkins 或让 Jenkins 在开始另一个批处理之前完成批处理文件中的任务。基本上我想要的是类似于运行的东西:
start /wait batchfile.bat
但是当我运行这个 Jenkins 时,它就挂了,这个过程实际上从未完成。当我运行这样的东西时:
run %startpath%\firstbatch.bat
run %startpath%\secondbatch.bat
Jenkins 在不同的线程中运行这两个批处理文件,这对我来说是一个大问题。我需要完成批处理,因为它们会 cooking 和复制 Assets 。触发的最后一批压缩 Assets 并在途中发送它们,但如果 Assets 没有完成复制,则 zip 开始时不会包含目录中的所有文件。我能想到的唯一另一种方法是让每个批次都在不同的构建中,并为 Jenkins 添加一个安静期,但这只是对批次脚本实际运行多长时间的猜测。提前致谢。
最佳答案
尝试使用 "call batchfile.bat"这应该会阻塞,直到批处理文件运行完毕。
关于multithreading - Jenkins一次运行多个批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13593124/