Il s'agit probablement d'une erreur utilisateur à 100%, mais je ne peux pas obtenir de travail de pipeline pour utiliser une variable comme nom de canal dans une étape slackSend.
Cela utilise à la fois le plugin Slack et le plugin Build User Vars . J'essaie d'utiliser BUILD_USER_FIRST_NAME
pour identifier le canal vers Slack (c'est-à-dire que celui qui démarre la génération doit être celui qui reçoit le message).
J'en suis à mi-chemin avec cet article sur la façon d'utiliser le plugin utilisateur de génération dans un travail de pipeline, mais le remplacement de la variable me fait trébucher.
La partie pertinente du travail ressemble à ceci;
stage ('message') {
wrap([$class: 'BuildUser']) {
sh "printf '%s' ${BUILD_USER_FIRST_NAME} > name.txt"
}
archiveArtifacts artifacts: 'name.txt'
name = readFile('name.txt')
echo "name is $name" //works fine, I get Alex
if ( "$output" != null ) {
slackSend (channel: '@$name', color: '#36A64F', message: "Job succeeded")
} else {
slackSend (channel: '@$name', color: '#36A64F', message: "Job failed")
}
}
J'ai essayé ce qui suit à la place du bit de canal, tous ont échoué avec des Slack post may have failed. Response: Invalid channel specified
erreurs indéterminées .
channel: '@${name}',
channel: '@" + ${name} + "',
channel: '@"${name}"',
Le résultat attendu est qu’il résoudrait channel: '@Alex',
Quelle est la syntaxe appropriée?