首页 > 解决方案 > 如何将参数值传递给 Jenkins 管道中的阶段构建?

问题描述

我创建了一个管道,它从用户那里获取参数值。我想使用此参数触发 jenkin 作业。如何将参数值传递给构建的参数。这是我的代码:

pipeline {
 agent any
 parameters {
  string(name: 'SYSTEM', defaultValue: '', description: 'Enter array. Example:SYS-123')

  string(name: 'EMail', defaultValue: '', description: 'Enter email id')

 }
 stages {
  stage('Example') {
   steps {
    echo "Hello ${params.SYSTEM}"
    echo "Hello ${params.EMail}"
   }
  }
  stage('core-rest-api-sanity') {
   steps {
    build job: 'xyz', parameters: [string(name: 'E-Mail', value: ${params.EMail}), string(name: 'SYSTEM', value: ${params.SYSTEM})]
   }
  }
 }
}

在上面的代码中,我从用户那里获取电子邮件和系统详细信息。然后我想触发我的工作“xyz”,这需要这些参数。

标签: jenkinsgroovyjenkins-pipelinejenkins-groovy

解决方案


    pipeline {
 agent any
 parameters {
  string(name: 'SYSTEM', defaultValue: '', description: 'Enter array. Example:SYS-123')

  string(name: 'EMail', defaultValue: '', description: 'Enter email id')

 }
 stages {
  stage('Example') {
   steps {
    echo "Hello ${params.SYSTEM}"
    echo "Hello ${params.EMail}"
   }
  }
  stage('core-rest-api-sanity') {
   steps {
      build job: 'xyz', parameters: [string(name: 'E-Mail', value: params.EMail), 
        string(name: 'SYSTEM', value: params.SYSTEM)]
     }
    }
   }
  }

推荐阅读