email-ext - Override default - groovy-html.template

조회수 18회
읽지 않은 첫 메시지로 건너뛰기

inpala

읽지 않음,
2024. 4. 18. 오후 1:40:184월 18일
받는사람 jenkins...@googlegroups.com

I am trying to find a way to override the default groovy-html.template for email-ext.

The main reason is because we have several declarative pipelines that use a post action for catching build failures as such:

```
                emailext attachLog: true, body: '''${SCRIPT, template="groovy-html.template"}''',
                subject: '[ITCO] Failure: ${JOB_NAME}',
                to: 'ema...@domain.com',
                mimeType: 'text/html'

```

I tried placing the exact same name of the template groovy-html.template in ${JENKINS_HOME}\email-templates but it doesn't look like it gets used.

Outside of naming this template to something else, does anyone have any ideas?

Thanks

Zach

christop...@googlemail.com

읽지 않음,
2024. 4. 19. 오전 2:34:514월 19일
받는사람 Jenkins Users
Hi,


Oh, email-ext, one of my current favorite topics....
I am calling it a little differently and that's working (for me it's jelly instead of groovy but groovy worked before also):

def mailbody = '${JELLY_SCRIPT, template="template.jelly"}'
def mailsubject = 'Jenkins Build ' + currentBuild.fullDisplayName + ' finished: ' + currentBuild.currentResult
emailext attachLog: false, body: mailbody, recipientProviders: [culprits(), brokenTestsSuspects(), brokenBuildSuspects(), upstreamDevelopers()], subject: mailsubject

Anyone familiar with that problem:
"JellyException: Could not parse Jelly script : null"?

I found several solutions to support developing the jelly script:
- the email-ext template-testing link in the job page: not working with scripted pipeline
- a couple lines of groovy script for the script console to trigger new email execution from a finished job: not working due to syntax problems and obviously made for a lot older API
- a lot of published jelly-script snippets to add output from the one and other plugin: a lot of syntax errors everywhere

What's the latest best way to develop this stuff?
Is there any way to trigger exeuction based on an existing job?
Any way to get that origniating parser exception to find the real issue?

BR,
Christoph
전체답장
작성자에게 답글
전달
새 메시지 0개