1

Это мое требование, чтобы иметь параметры в Дженкинс:Использование ключа пары значений в Дженкинс

1. User selects 3 Values from Dropdown: DEV, QA, PROD 
2. Upon selection I need to return single value as parameter as like this: 
If DEV selected, return "Development http://dev.com 1" 
If QA selected, return "QA http://qa.com 2" 
If PROD selected, return "Production http://prod.com 3" 
3. Once the value is returned in a variable, I will use that variable value in next step of 'Windows batch command'. 

Где и как можно определить ключ/значение. Я попытался использовать расширенный плагин Parameter Parameter, но не знаю, как это сделать.

ответ

0

Вы можете сделать сопоставление в строгом сценарии. Если у вас есть параметр с именем InputParam, вы можете отобразить его на новый параметр называется OutParam в системе Groovy скрипт так:

import hudson.model.* 
def parameterMap=[:] 
parameterMap.put('DEV','Development http://dev.com 1') 
parameterMap.put('QA','QA http://qa.com 2') 
parameterMap.put('PROD','Production http://prod.com 3') 

def buildMap = build.getBuildVariables() 
def inputValue=buildMap['InputParam'] 
buildMap['OutParam']=parameterMap[inputValue] 

setBuildParameters(buildMap) 

def setBuildParameters(map) { 
    def npl = new ArrayList<StringParameterValue>() 
    for (e in map) { 
     npl.add(new StringParameterValue(e.key.toString(), e.value.toString())) 
    } 
    def newPa = null 
    def oldPa = build.getAction(ParametersAction.class) 
    if (oldPa != null) { 
     build.actions.remove(oldPa) 
     newPa = oldPa.createUpdated(npl) 
    } else { 
     newPa = new ParametersAction(npl) 
    } 
    build.actions.add(newPa) 
} 

Выберите Выполнить системный Groovy скрипт в качестве первого действия сборки. Затем вы можете получить доступ к выходному параметру в качестве переменной окружения в оболочке Windows, например. ECHO %OUTPARAM%

2

Это может быть достигнуто с помощью активного модуля выбора, найти ниже ссылку и изображение для вашей справки

ссылка Plugin: https://wiki.jenkins-ci.org/display/JENKINS/Active+Choices+Plugin

enter image description here

Другой метод без каких-либо плагинов

Использование сценария оболочки может быть достигнуто

Добавьте шаг сборки в сценарий оболочки и добавьте нижеприведенный скрипт, который вернет ваши значения. Допустим, имя выпадающий является В параметре «окр»

if [ $env == "DEV" ] 
then 
    url = "Development http://dev.com 1" 
elif [ $env == "QA" ] 
then 
    url = "QA http://qa.com 2" 
elif [ $env == "PROD" ] 
then 
    url = "Production http://prod.com 3" 
fi 

переменной $ URL будет иметь ожидаемое значение, которое может быть использовано в следующей сборке шаги

Shell Script Reference: http://www.tutorialspoint.com/unix/if-elif-statement.htm