詹金斯管道:如何运行一个平行于许多阶段?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了詹金斯管道:如何运行一个平行于许多阶段?相关的知识,希望对你有一定的参考价值。

我想在两个阶段并行运行一个阶段,然后在其他三个阶段之后完成所有这些阶段。

像这样的东西(不是有效的语法):

pipeline 
    stages 
        stage('Build A') 
        
        stage('Build B') 
        
        stage('Build C') 
        
        parallel 
            stages 
                stage('Build D1') 
                
                stage('Build D2') 
                
            
            stage('Build D3') 
            
         
    

是否可以安排这种结构?

答案

这样做的方法是sequential stages in parallel

pipeline 
    agent none

    stages 
        stage("build and deploy on Windows and Linux") 
            parallel 
                stage("windows") 
                    agent 
                        label "windows"
                    
                    stages 
                        stage("build") 
                            steps 
                                bat "run-build.bat"
                            
                        
                        stage("deploy") 
                            when 
                                branch "master"
                            
                            steps 
                                bat "run-deploy.bat"
                            
                        
                    
                

                stage("linux") 
                    agent 
                        label "linux"
                    
                    stages 
                        stage("build") 
                            steps 
                                sh "./run-build.sh"
                            
                        
                        stage("deploy") 
                             when 
                                 branch "master"
                             
                             steps 
                                sh "./run-deploy.sh"
                            
                        
                    
                
            
        
    

以上是关于詹金斯管道:如何运行一个平行于许多阶段?的主要内容,如果未能解决你的问题,请参考以下文章

詹金斯:无法在管道阶段定义变量

在詹金斯管道中复制工件

Jenkins Pipeline - 我们可以在 jenkins 管道之外运行工作吗?

如何相对于子目录运行詹金斯管道?

如何在詹金斯管道中访问 git commit 消息 INSIDE sh STEP?

詹金斯管道:代理与节点?