В пределах vars/myDeliveryPipeline.groovy
у меня есть шаблон для декларативного конвейера:
def call(Map pipelineParams) {
pipeline {
agent any
stages {
stage('checkout git') {
steps {
git branch: pipelineParams.branch, credentialsId: 'GitCredentials', url: pipelineParams.scmUrl
}
}
stage('build') {
steps {
sh 'mvn clean package -DskipTests=true'
}
}
stage ('test') {
steps {
parallel (
"unit tests": { sh 'mvn test' },
"integration tests": { sh 'mvn integration-test' }
)
}
}
}
}
}
Изнутри Jenkinsfile
я создаю декларативный конвейер через
myDeliveryPipeline(branch: 'master', scmUrl: 'ssh://git@myScmServer.com/repos/myRepo.git',
serverPort: '8080', server: 'dev-myproject.mycompany.com')
Как мне указать директиву parameters { ... }
в Jenkinsfile
и распространить эти параметры на myDeliveryPipeline
?
Будет ли создание конвейера в Jenkinsfile
, который принимает параметры, а затем создание первого этапа myDeliveryPipeline
, идиоматическим решением?