简体   繁体   English

詹金斯(Jenkins)日常下游工作

[英]Jenkins daily downstream job

In our continuous integration implementation we build a new WAR/Jar file every few minutes and deploy this to a Nexus Snapshot repository as bleeding edge candidate. 在我们的持续集成实施中,我们每隔几分钟就会构建一个新的WAR / Jar文件,并将其部署到Nexus Snapshot存储库中作为最新的候选对象。 this is working satisfactory. 这工作令人满意。

We also run a lot of automated QA (findbugs, junit, etc) as downstream jobs, these jobs are much longer running and sometimes regress. 作为下游作业,我们还运行了许多自动化QA(findbug,junit等),这些作业的运行时间更长,有时还会退化。 Only when there is no regression/QA-failure we want to consider the artifact as a Release. 仅当没有回归/ QA失败时,我们才将工件视为发布。

However using a downstream job on the original build (which produced a snapshot and archived the artifact in jenkins) We end up with way to many releases. 但是,在原始版本上使用下游作业(生成了快照并以jenkins归档了工件),我们最终获得了许多版本。

So what we are looking for is some way to have daily job as a 'upstream' job so we can use promoted-builds to make a release daily. 因此,我们正在寻找一种将日常工作作为“上游”工作的方法,以便我们可以使用升级版本进行日常发布。

The diagram below outlines what we are trying to do 下图概述了我们正在尝试做的事情

                 Create_snapshot
                       |
                --+----+------+--
                  |           |
          quick-regression    |      
                  |           |
 --+--------+-----+---+--     |
   |        |         |       |
Findbugs Integration Junit    |
   |       test      tests   Daily-trigger
   |        |         |       |
   |        |         |       |
   |        |         |       |
   |        |         |       |
---+--------+----+----+-------+--
                 |
          Deploy-as-release

Are you using the Join plugin to trigger your 3 test jobs after the quick-regression job? 您是否正在使用Join插件在快速回归工作之后触发3个测试工作?

Because with this plugin, you can trigger your 3 test jobs and if they are successful, then you can trigger your deploy-as-release job. 因为使用此插件,您可以触发3个测试作业,如果它们成功,则可以触发发布即发布作业。

If you want to build only one release per day, you can maybe use the Conditional BuildStep plugin (on the deploy-as-release job) to limit the number of releases. 如果您只想每天构建一个发行版,则可以使用“ 条件构建步骤”插件 (在“按发行版部署”作业上)来限制发行数量。

Will this solution work for you? 该解决方案对您有用吗?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM