У меня есть переменная среды, представляющая gitrepo, и я использую это репо в своем параметре git:
pipeline {
agent any
options {
buildDiscarder(logRotator(numToKeepStr: '5', artifactNumToKeepStr: '1'))
disableConcurrentBuilds()
}
environment {
GitRepo = 'https://my-repo/repo.git'
}
parameters {
gitParameter branchFilter: 'origin/(.*support.*)', defaultValue: 'develop', name: 'SUPPORTBRANCH', type: 'PT_BRANCH', useRepository: env.GitRepo , sortMode: 'DESCENDING_SMART'
}
...}
Когда я использую env.GitRepo внутри этапов моего конвейера, он работает, но не тогда, когда я использую его в разделе параметров.
Как я могу заставить это работать?
Действительно ли это должна быть переменная среды? Если бы не простое свойство, могло бы помочь. Конечно, вы все равно можете использовать его для определения переменной среды, если это необходимо ...
Я использовал параметр string
только потому, что мне казалось слишком сложным запустить простой пример с использованием плагина gitParameter. Но, конечно, вы можете использовать это свойство также для плагина параметров git.
// simply define the property here...
gitRepo = 'https://my-repo/repo.git'
pipeline {
agent any
environment {
// optional, not used below. Use only if you need to have an environment variable
GitRepo = gitRepo
}
options {
buildDiscarder(logRotator(numToKeepStr: '5', artifactNumToKeepStr: '1'))
disableConcurrentBuilds()
}
parameters {
string defaultValue: gitRepo, description: '', name: 'Test', trim: false
}
stages {
stage ('foo') {
steps {
echo 'Hi'
}
}
}
}