Jenkins pipeline多项目变量传递

pipeline 多项目变量传递

使用过程中,需要多项目联动,如果将外部变量传递到 pipeline 项目内进行调用呢?接下来让我们一起揭秘下。

项目类型

MultiJob Project mp-refactoring–>流水线 job

变量传递

  1. 在 pipeline 中预先定义好要使用的变量名称,例如:

        parameters {
        // 指定 tag 或者分支名称
        gitParameter(name: 'BRANCH_TAG',type: 'PT_BRANCH_TAG',defaultValue: 'pipeline3.0_split')
        // d定义基础镜像
        // string(name: 'BASE_IMAGE', defaultValue: 'magic-harbor.magic.com/mp_refactoring/magicpipeline-py:v1.1', description: 'Select Base Image')
    }
    
  2. MultiJob 设置传递变量

    定义主JOB 参数化构建过程

  3. 设置 MultJob 包含的任务列表,并设置高级选项

    主要在高级选项中增加如下:Current build parametersPredefined parameters分别是:当前构建参数预定义的参数

    预定义参数: 保持与 pipeline 中定的参数同名。以此既能达到参数传递。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JenkinsPipeline中,可以通过环境变量、参数化构建和全局变量等方式在不同的stage之间传递参数。以下是一些示例: 1. 环境变量 在stage中定义一个环境变量,可以通过${env.VARIABLE_NAME}在其他stage中引用。例如: ``` pipeline { agent any stages { stage('Build') { environment { IMAGE_TAG = '1.0.0' } steps { sh 'echo "Building image with tag ${IMAGE_TAG}"' } } stage('Deploy') { steps { sh 'echo "Deploying image with tag ${IMAGE_TAG}"' } } } } ``` 2. 参数化构建 通过参数化构建,可以在Pipeline执行之前让用户输入参数值,并将这些参数传递给不同的stage。例如: ``` pipeline { agent any parameters { string(name: 'ENVIRONMENT', defaultValue: 'dev', description: 'Environment to deploy to') booleanParam(name: 'ENABLE_CACHE', defaultValue: true, description: 'Enable caching?') } stages { stage('Build') { steps { sh 'echo "Building application for ${params.ENVIRONMENT}"' } } stage('Deploy') { steps { sh 'echo "Deploying application to ${params.ENVIRONMENT}"' if (params.ENABLE_CACHE) { sh 'echo "Caching enabled"' } else { sh 'echo "Caching disabled"' } } } } } ``` 3. 全局变量 可以在Pipeline中定义全局变量,并在不同的stage中引用。例如: ``` pipeline { agent any options { // Define global variable envVars([ // Use Jenkins built-in variable for current build number // and assign to MY_BUILD_NUMBER envVar('MY_BUILD_NUMBER', "${BUILD_NUMBER}") ]) } stages { stage('Build') { steps { sh 'echo "Building application for build ${MY_BUILD_NUMBER}"' } } stage('Deploy') { steps { sh 'echo "Deploying application for build ${MY_BUILD_NUMBER}"' } } } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值