Jenkins 如何配置从属作业之间的执行开始?
我的Jenkins服务器设置了两个作业A和B 作业A由subversion中的更改触发,运行单元测试,如果成功,则创建WAR并将其部署到另一个环境 如果作业A成功,则会触发作业B。此作业针对已部署的WAR运行测试 问题是,部署过程需要一段时间,而当作业B启动并尝试使用它时,战争还没有及时准备好 我在寻找如何将B工作推迟到战争开始并开始的想法 有没有办法,一旦作业B被触发等待x秒?如果可以避免的话,我真的不想把它放在作业B的测试中Jenkins 如何配置从属作业之间的执行开始?,jenkins,Jenkins,我的Jenkins服务器设置了两个作业A和B 作业A由subversion中的更改触发,运行单元测试,如果成功,则创建WAR并将其部署到另一个环境 如果作业A成功,则会触发作业B。此作业针对已部署的WAR运行测试 问题是,部署过程需要一段时间,而当作业B启动并尝试使用它时,战争还没有及时准备好 我在寻找如何将B工作推迟到战争开始并开始的想法 有没有办法,一旦作业B被触发等待x秒?如果可以避免的话,我真的不想把它放在作业B的测试中 谢谢肯定有一种方法可以让作业等待-只需将sleep放入第一个she
谢谢肯定有一种方法可以让作业等待-只需将
sleep
放入第一个shell构建步骤。或者,您可以设置“静默期”——在创建构建时,它位于高级项目选项中
<>这是一个只有在其他方法失败的情况下才能使用的创可贴解决方案。您可以尝试以下方法:如果有一种方法可以在部署过程(作业a触发)完成之前立即接触Jenkins有权访问的文件,那么您可以使用。请参见此处的用例3。完成此工作的最可靠方法是在部署成功之前使作业不完成,例如,通过测试来自已部署web应用的URL的有效响应。描述了一种方法 也许作业B可以根据作业A生成的war(将存储在lastSuccessfulBuild的工件中)进行部署,这要感谢对可用选项的概述。目前已经设置了一个睡眠,但我将研究FSTrigger插件,因为它看起来对这种情况和其他情况非常有用。