Update Jenkinsfile with copilot help
parent
7f5ababc8f
commit
7f76546392
|
@ -55,17 +55,50 @@ pipeline {
|
||||||
post {
|
post {
|
||||||
always {
|
always {
|
||||||
script {
|
script {
|
||||||
def commiterEmail = sh(script: 'git log -1 --pretty=format:%ae', returnStdout: true).trim()
|
def userCause = currentBuild.rawBuild.getCause(hudson.model.Cause$UserIdCause)
|
||||||
mail to: commiterEmail,
|
|
||||||
subject: "Jenkins Job Completed: ${env.JOB_NAME} #${env.BUILD_NUMBER}",
|
if (userCause != null) {
|
||||||
body: """
|
// Si fue lanzado manualmente, obtener el usuario y su correo desde las propiedades de Jenkins
|
||||||
El job '${env.JOB_NAME}' con número de build ${env.BUILD_NUMBER} ha finalizado.
|
def userId = userCause.getUserId()
|
||||||
|
def user = jenkins.model.Jenkins.instance.getUser(userId)
|
||||||
|
def userEmail = user.getProperty(jenkins.plugins.mailer.tasks.Mailer.UserProperty)?.getAddress()
|
||||||
|
|
||||||
|
if (userEmail) {
|
||||||
|
echo "El correo del usuario que lanzó el build manualmente es: ${userEmail}"
|
||||||
|
|
||||||
Estado: ${currentBuild.currentResult}
|
// Enviar correo al usuario que lanzó el build manualmente
|
||||||
|
mail to: "${userEmail}",
|
||||||
Revisa los detalles del build en: ${env.BUILD_URL}
|
subject: "Jenkins Job Completed (Manual): ${env.JOB_NAME} #${env.BUILD_NUMBER}",
|
||||||
"""
|
body: """
|
||||||
attachLog: true
|
El job '${env.JOB_NAME}' con número de build ${env.BUILD_NUMBER} ha finalizado (ejecutado manualmente).
|
||||||
|
|
||||||
|
Estado: ${currentBuild.currentResult}
|
||||||
|
|
||||||
|
Revisa los detalles del build en: ${env.BUILD_URL}
|
||||||
|
"""
|
||||||
|
} else {
|
||||||
|
echo "No se pudo encontrar un correo electrónico para el usuario: ${userId}"
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Si fue lanzado automáticamente, obtener el correo del committer
|
||||||
|
def committerEmail = sh(
|
||||||
|
script: 'git log -1 --pretty=format:"%ae"',
|
||||||
|
returnStdout: true
|
||||||
|
).trim()
|
||||||
|
|
||||||
|
echo "El build fue lanzado automáticamente. Correo del committer: ${committerEmail}"
|
||||||
|
|
||||||
|
// Enviar correo al committer
|
||||||
|
mail to: "${committerEmail}",
|
||||||
|
subject: "Jenkins Job Completed (Automático): ${env.JOB_NAME} #${env.BUILD_NUMBER}",
|
||||||
|
body: """
|
||||||
|
El job '${env.JOB_NAME}' con número de build ${env.BUILD_NUMBER} ha finalizado (ejecutado automáticamente).
|
||||||
|
|
||||||
|
Estado: ${currentBuild.currentResult}
|
||||||
|
|
||||||
|
Revisa los detalles del build en: ${env.BUILD_URL}
|
||||||
|
"""
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue