Jenkins Pipeline

发布时间 2023-09-12 10:57:18作者: 钟鼎山林
pipeline {
    agent any
    
    environment {
          
        globalVar = 'This is a global variable'
        //env = 'stg'
        //Priority = '-p P0'
    }

    stages {
        
        stage('配置') {
            steps {
                script {
                    env.version_all = params.version_all
                    env.threadCount = params.threadCount
                    env.envs = params.envs
                    env.Priority = params.Priority
                }
            }
        }
        
        
        stage('DM_DIALOGUE') {
            steps {
                script {
                    // 定义参数值
                    
                    // 在这里引用环境变量
                    echo "环境变量 env 的值:$env.envs"
                    echo "环境变量 Priority 的值:$Priority"
                    echo "环境变量 version_all 的值:$env.version_all"
                    echo "环境变量 threadCount 的值:$env.threadCount"
                    
                    // 执行Job1并传递参数
                    build job: 'DM_DIALOGUE', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
        stage('DM_Navi') {
            steps {
                script {
                    build job: 'DM_Navi', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
        stage('DM_Media') {
            steps {
                script {
                   build job: 'DM_Media', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
        stage('DM_WEATHER') {
            steps {
                script {
                    build job: 'DM_WEATHER', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
         stage('DM_INIT') {
            steps {
                script {
                    build job: 'DM_INIT', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
        stage('DM_Robot') {
            steps {
                script {
                    build job: 'DM_Robot', parameters: [
                            string(name: 'env', value: env.envs), 
                            string(name: 'Priority', value: Priority), 
                            string(name: 'threadCount', value: env.threadCount),
                            string(name: 'version_all', value: env.version_all)
                        ], quietPeriod: 0
                }
            }
        }
    }
}