2016-08-22 22 views
0

我有一个调用的管道,例如UAT。此构建计划每3分钟一次。另一个版本叫做DEVDEV计划每分钟。任务是:仅在最后的DEV执行为SUCCESS时才运行UAT。如果没有 - 跳过执行。并在相同的条件下运行3分钟后。
我该如何做到这一点?在几种情况下跳过管道执行

回答

0

不要将您的UAT作业安排为单独的作业,而是在您的第一个DEV管道成功完成后触发启动。 当你正在使用的管道,你居然有2个解决方案:

1) 不要叫另一工作,但只需要调用一个Groovy功能的DEV部分整合,如:

node() { 
    stage "UAT" 
    // Your existing UAT pipeline content here 

    stage "DEV" 
    git 'http://urlToYourGit/projectContainingYourDevScript' 
    pipeline = load 'functions.groovy' 
    pipeline.dev() 
} 

2)只要拨打第二个电话詹金斯工作用这种线:

node() { 
    stage "UAT" 
    // Your existing UAT pipeline content here 

    build job: "dev-job" 
} 

有了这些解决方案2,你可以配置你的第一份工作,以每分钟运行,只有当第一个完成时,会触发第二部分/工作取得成功(否则詹金斯会像通常那样做失败)。