Je suis en train de créer un pipeline Jenkins d'exemple, voici le code.
pipeline {
agent any
stages {
stage('test') {
steps {
sh 'echo hello'
}
}
stage('test1') {
steps {
sh 'echo $TEST'
}
}
stage('test3') {
if (env.BRANCH_NAME == 'master') {
echo 'Je n'exécute que sur la branche master'
} else {
echo 'J'exécute ailleurs'
}
}
}
}
ce pipeline échoue avec les journaux d'erreur suivants
Démarré par l'utilisateur admin
org.codehaus.groovy.control.MultipleCompilationErrorsException: démarrage échoué:
WorkflowScript: 15: Définition de section de stade non valide : "if (env.BRANCH_NAME == 'master') {
echo 'Je n'exécute que sur la branche master'
} else {
echo 'J'exécute ailleurs'
}". Une configuration supplémentaire est requise. @ ligne 15, colonne 9.
stage('test3') {
^
WorkflowScript: 15: Rien à exécuter dans le stade "test3" @ ligne 15, colonne 9.
stage('test3') {
^
Mais quand j'exécute l'exemple suivant à partir de cette URL, cela s'exécute avec succès et affiche la partie else.
node {
stage('Example') {
if (env.BRANCH_NAME == 'master') {
echo 'Je n'exécute que sur la branche master'
} else {
echo 'J'exécute ailleurs'
}
}
}
La seule différence que je peux voir est que dans l'exemple qui fonctionne, il n'y a pas de stages
mais dans mon cas, il y en a.
Qu'est-ce qui ne va pas ici, est-ce que quelqu'un peut suggérer?