Les commentaires sont-ils possibles dans un Jenkinsfile? Si oui, quelle est la syntaxe?
J'utilise la syntaxe déclarative du pipeline.
Je souhaite commenter la section «post» ci-dessous jusqu'à ce que mon serveur SMTP fonctionne.
pipeline {
agent { label 'docker-build-slave' }
environment {
IMAGE = 'registry.gitlab.com/XXXXX/bible-server'
DOCKER_REGISTRY_CREDENTIALS = credentials('DOCKER_REGISTRY_CREDENTIALS')
}
options {
timeout(10)
}
stages {
stage('Test') {
steps {
sh 'yarn'
sh 'npm test'
}
}
stage('Build') {
when {
branch '*/master'
}
steps {
sh 'docker login -u ${DOCKER_REGISTRY_CREDENTIALS_USR} -p ${DOCKER_REGISTRY_CREDENTIALS_PSW} registry.gitlab.com'
sh 'docker build -t ${IMAGE}:${BRANCH_NAME} .'
sh 'docker push ${IMAGE}:${BRANCH_NAME}'
}
}
stage('Deploy') {
when {
branch '*/master'
}
steps {
echo 'Deploying ..'
}
}
}
post {
success {
mail to: "[email protected]", subject:"SUCCESS: ${currentBuild.fullDisplayName}", body: "Yay, we passed."
}
failure {
mail to: "[email protected]", subject:"FAILURE: ${currentBuild.fullDisplayName}", body: "Boo, we failed."
}
}
}
jenkins
groovy
comments
jenkins-pipeline
danday74
la source
la source
Réponses:
Le Jenkinsfile est écrit en groovy qui utilise la forme Java (et C) des commentaires:
la source
pipeline { ... stage('Set Tagging') { steps { sh ''' echo "env.m_time='$m_time'" > ${params_file} echo "env.m_comp_tag='${BRANCH_NAME}_${m_time}_${BUILD_NUMBER}'" >> ${params_file} /* echo "env.docker_ws='/usr/local/lib/node_modules/${repo}'" >> ${params_file} */ ''' <
entraîne une erreur d'autorisations d'erreur / bashsh
section, vous devez utiliser le caractère de commentaire du shell:#
Vous pouvez utiliser un bloc (/ *** /) ou un commentaire sur une seule ligne (//) pour chaque ligne. Vous devez utiliser "#" dans la commande sh.
Bloquer le commentaire
Une seule ligne
Commentaire dans la commande 'sh'
la source
Les commentaires fonctionnent correctement dans toutes les formes Java / Groovy habituelles, mais vous ne pouvez pas actuellement utiliser
groovydoc
pour traiter votreJenkinsfile
( ).Tout d'abord,
groovydoc
s'étouffe sur les fichiers sans extensions avec la merveilleuse erreur... et deuxièmement, pour autant que je sache, les commentaires de style Javadoc au début d'un
groovy
script sont ignorés. Ainsi, même si vous copiez / renommez votreJenkinsfile
enJenkinsfile.groovy
, vous n'obtiendrez pas beaucoup de résultats utiles.Je veux pouvoir utiliser un
commentaire au début de mon Jenkinsfile. Pas de chance (encore).
groovydoc
va traiter les classes et méthodes définies dans votreJenkinsfile
si vous passez-private
à la commande, cependant.la source
La documentation officielle de Jenkins ne mentionne que des commandes sur une seule ligne comme les suivantes:
et ( voir )
La syntaxe du Jenkinsfile est basée sur Groovy , il est donc également possible d'utiliser la syntaxe groovy pour les commentaires . Citation:
ou
la source