У меня есть pipeJob, определенный в Job DSL.
Он запускает конвейер/Jenkinsfile, который проверяется из git.
Я хочу, чтобы люди могли вводить ветку git, из которой можно вытащить Jenkinsfile - (т.е. в stringParam) - или, если они не ввели ветку, по умолчанию использовать ветку, которую я установил в selectionParam ( то есть это будет «разработка» или «мастер»)
Это не работает:
pipelineJob('some-job') {
parameters {
choiceParam('gitCreds', [gitCreds], 'Stash credential')
stringParam('gitUrl', 'https://some-repo.git', 'URL for the Stash repo')
stringParam('gitBranchOverride', '', 'Type in some feature branch here if you wish')
choiceParam('gitBranch', ['develop'], '...otherwise the job should default to a branch here')
}
definition {
cpsScm {
scm {
git {
branch('$gitBranchOverride' ?: '$gitBranch')
extensions {
wipeOutWorkspace()
}
remote {
credentials(gitCreds)
url ('$gitUrl')
}
}
}
}
}
}
Это работает, если я ввожу значение в gitBranchOverride, но если я этого не делаю, кажется, что он перечисляет все ветки и проверяет случайную, т.е. не учитывает значение в gitBranch