Задать переменные среды в декларативном конвейере Jenkins - PullRequest
0 голосов
/ 20 июня 2019

Ниже приведен мой код для этапа развертывания в jenkinsfile

stage('Deploy') {  
    node('slave1') {
    if ("${env.Build_testapp1}" == 'true') {
    script {
                    env.packageid = "Applications/testapp1/revesion1"
                    env.environmentId = "Environments/SysTest1/machine1"


                }
      xldDeploy serverCredentials: 'developer', environmentId: env.environmentId, packageId: env.packageid
    }

но как я могу сделать его переменным в зависимости от среды?

Я искал что-то вроде этого

if ("${env.Build_EVN}" == 'dev'){
env.environmentId = "Environments/Dev/machine1"
}
if ("${env.Build_EVN}" == 'systest1'){
env.environmentId = "Environments/SysTest1/machine1"
}

затем используя «env.environmentId» на стадии («Deploy»)

1 Ответ

0 голосов
/ 20 июня 2019

Вы можете добавить еще один этап перед Deploy для обработки env.environmentId для последующих этапов использования.

stage('Prepare env') {
  steps {
    script {
      if ("${env.Build_EVN}" == 'dev'){
        env.environmentId = "Environments/Dev/machine1"
      }
      if ("${env.Build_EVN}" == 'systest1'){
        env.environmentId = "Environments/SysTest1/machine1"
      }
    }
  }
}

stage('Deploy') {
  ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...