#jenkins #jenkins-groovy
#Дженкинс #дженкинс-заводной
Вопрос:
Я новичок в мире jenkins и не уверен, почему он не считывает шаги в моем декларативном конвейере.
Я уверен, что это что-то простое, но, похоже, я не вижу, где ошибка.
import cloud.GitClient
import cloud.SlackClient
def call(body) {
def parameters = [:]
body.resolveStrategy = Closure.DELEGATE_FIRST
body.delegate = parameters
body()
pipeline {
agent {
kubernetes {
cloud parameters['buildCloudId']
}
}
stages {
stage('Inform Build Start') {
steps {
script{
slackClient.warn('Starting build!')
}
}
}
stage('Build Docker Images') {
steps {
checkout scm
container('docker') {
withCredentialsee(usernamePassword(credentialsId: parameters.docker.credentialsId, usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')) {
sh """
echo "$PASSWORD" | docker login -u $USERNAME --password-stdin hub.containers
./build.sh
"""
}
}
}
post {
failure {
script {
slackClient.failed("Docker backend build *FAILED*! <${env.BUILD_URL}console|See log> for details.")
}
}
success {
script {
slackClient.success("Docker backend build *COMPLETED*! <${env.BUILD_URL}console|See log> for details.")
}
}
}
}
}
}
}
В jenkins все отображается зеленым, но журналы показывают, что вообще ничего не запускалось.
Комментарии:
1. Не уверен, сможет ли Jenkins правильно проанализировать файл Jenkins, если вы используете его в функции. Ничто не может завершиться неудачей, если ничего не выполняется, не так ли?
2. Я видел другие декларативные конвейеры, отформатированные аналогичным образом, и они работают просто отлично. Вот почему меня сбивает с толку, почему это не работает.