Ich möchte E-Mail-Benachrichtigungen mit Job DSL anstelle von E-Mail-Ext-Plugin konfigurieren.Job-DSL-Skript für E-Mail-Benachrichtigungen für bestanden/fehlgeschlagen Jenkins bauen?
Antwort
Die DSL bietet nicht die Fähigkeit anderer Plugins, sie stellt lediglich ihre Fähigkeit dem Skript zur Verfügung. Die Plugins müssen noch installiert werden.
sich nach den DSL-API-Dokumentation, DSL hat die Unterstützung für die Jenkins mailer plugin (im Lieferumfang enthalten),
job('example') {
publishers {
mailer('[email protected]', true, true)
}
}
Das ist nicht besonders kundengerecht - Sie können es nicht sagen kann nach jedem verstreichenden bauen E-Mail.
Die email extension plugin wird auch von DSL unterstützt:
job('example') {
publishers {
extendedEmail {
recipientList('[email protected]')
defaultSubject('Oops')
defaultContent('Something broken')
contentType('text/html')
triggers {
beforeBuild()
stillUnstable {
subject('Subject')
content('Body')
sendTo {
developers()
requester()
culprits()
}
}
}
}
}
}
An E-Mail nach jedem unabhängig von ihrem Status bauen, E-Mail-ext verwenden, können Sie die always trigger verwenden (anstelle von stillUnstable Trigger in dem obigen Beispiel)
(. Codebeispiele aus verknüpften Dokumentation aus Gründen der überlebenden Ausfallzeiten kopiert)
ich bin mit der Pipeline/Workflow-DSL und bekam diese Arbeit:
mail from: "",
to: "[email protected]",
subject: """Jenkins ${env.JOB_NAME} [${env.BUILD_NUMBER}]""",
mimeType: "text/html",
body: """Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
<p>Check console output at "<a href='${env.BUILD_URL}'>${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>
<pre>${summary}</pre>"""