Just to add to that:

If I do within groovy brackets %> <% 

I get the following exception:
Exception raised during template rendering: 
org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to 
hudson.model.AbstractBuild java.lang.ClassCastException: 
org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to 
hudson.model.AbstractBuild at 
hudson.plugins.emailext.plugins.content.EmailExtScript.methodMissing(EmailExtScript.java:69)
 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 
at java.lang.reflect.Method.invoke(Method.java:498) at 
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) at 
groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:944) at 
groovy.lang.MetaClassImpl.invokePropertyOrMissing(MetaClassImpl.java:1267) 
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1220) at 
groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1027) at 
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:69)
 
at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:52)
 
at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:154)
 
at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:166)
 
at SimpleTemplateScript111.run(SimpleTemplateScript111.groovy:31) at 
groovy.text.SimpleTemplateEngine$SimpleTemplate$1.writeTo(SimpleTemplateEngine.java:168)
 
at 
groovy.text.SimpleTemplateEngine$SimpleTemplate$1.toString(SimpleTemplateEngine.java:180)
 
at 
hudson.plugins.emailext.plugins.content.ScriptContent.renderTemplate(ScriptContent.java:151)
 
at 
hudson.plugins.emailext.plugins.content.ScriptContent.evaluate(ScriptContent.java:82)
 
at 
org.jenkinsci.plugins.tokenmacro.DataBoundTokenMacro.evaluate(DataBoundTokenMacro.java:208)
 
at org.jenkinsci.plugins.tokenmacro.Parser.processToken(Parser.java:308) at 
org.jenkinsci.plugins.tokenmacro.Action$KiHW1UeqOdqAwZul.run(Unknown 
Source) at 
org.parboiled.matchers.ActionMatcher.match(ActionMatcher.java:96) at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.matchers.SequenceMatcher.match(SequenceMatcher.java:46) at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.matchers.FirstOfMatcher.match(FirstOfMatcher.java:41) at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.matchers.FirstOfMatcher.match(FirstOfMatcher.java:41) at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.matchers.ZeroOrMoreMatcher.match(ZeroOrMoreMatcher.java:39) 
at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.matchers.SequenceMatcher.match(SequenceMatcher.java:46) at 
org.parboiled.parserunners.BasicParseRunner.match(BasicParseRunner.java:77) 
at org.parboiled.MatcherContext.runMatcher(MatcherContext.java:351) at 
org.parboiled.parserunners.BasicParseRunner.run(BasicParseRunner.java:72) 
at 
org.parboiled.parserunners.ReportingParseRunner.runBasicMatch(ReportingParseRunner.java:86)
 
at 
org.parboiled.parserunners.ReportingParseRunner.run(ReportingParseRunner.java:66)
 
at 
org.parboiled.parserunners.AbstractParseRunner.run(AbstractParseRunner.java:81) 
at 
org.parboiled.parserunners.AbstractParseRunner.run(AbstractParseRunner.java:76) 
at org.jenkinsci.plugins.tokenmacro.Parser.process(Parser.java:68) at 
org.jenkinsci.plugins.tokenmacro.TokenMacro.expand(TokenMacro.java:204) at 
org.jenkinsci.plugins.tokenmacro.TokenMacro.expandAll(TokenMacro.java:234) 
at 
hudson.plugins.emailext.plugins.ContentBuilder.transformText(ContentBuilder.java:80)
 
at 
hudson.plugins.emailext.ExtendedEmailPublisher.addContent(ExtendedEmailPublisher.java:852)
 
at 
hudson.plugins.emailext.ExtendedEmailPublisher.createMail(ExtendedEmailPublisher.java:731)
 
at 
hudson.plugins.emailext.ExtendedEmailPublisher.sendMail(ExtendedEmailPublisher.java:445)
 
at 
hudson.plugins.emailext.EmailExtStep$EmailExtStepExecution.run(EmailExtStep.java:184)
 
at 
hudson.plugins.emailext.EmailExtStep$EmailExtStepExecution.run(EmailExtStep.java:129)
 
at 
org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:47)
 
at hudson.security.ACL.impersonate(ACL.java:260) at 
org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:44)
 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
at java.util.concurrent.FutureTask.run(FutureTask.java:266) at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
at java.lang.Thread.run(Thread.java:748)

But without groovy brackets it just renders the text 
"BUILD_LOG_REGEX(regex:".*GIT 
COMMIT HASH = (.*)", showTruncatedLines:false, substText:"$1")"


On Friday, October 5, 2018 at 4:44:56 PM UTC-4, [email protected] wrote:
>
> Thanks for your fast reply! Couple of questions...
>
> 1) Should I be putting that in Groovy brackets %> <%?
> 2) Am i supposed to escape the $ sign in the subsText clause?
>
> I'm trying to get it to work but I'm getting exceptions...
>
> Thanks!
>
> On Friday, October 5, 2018 at 3:38:39 PM UTC-4, slide wrote:
>>
>> The general way to look at it is to turn the token syntax into what looks 
>> like a method call:
>>
>> ${BUILD_LOG_REGEX, regex=".*GIT COMMIT HASH = (.*)", 
>> showTruncatedLines=false, substText="$1"} 
>>
>> Becomes:
>>
>> BUILD_LOG_REGEX(regex:".*GIT COMMIT HASH = (.*)", 
>> showTruncatedLines:false, substText:"$1")
>>
>>
>>
>> On Fri, Oct 5, 2018 at 12:25 PM <[email protected]> wrote:
>>
>>> I know it's been a few years :) but I have a similar question...
>>>
>>> How would I use the following Token Macro in a groovy template:
>>>
>>> Git Commit:  ${BUILD_LOG_REGEX, regex=".*GIT COMMIT HASH = (.*)", 
>>> showTruncatedLines=false, substText="$1"}
>>>
>>> It works in a regular template but not groovy...
>>>
>>> Thanks!
>>>
>>> On Wednesday, July 17, 2013 at 12:18:40 PM UTC-4, slide wrote:
>>>>
>>>> One more thing, the email template testing should also work for Jelly 
>>>> templates, but I HIGHLY recommend using Groovy templates, they are MUCH 
>>>> better. I wish Jelly would die a horrible death after the amount of time 
>>>> I've put in to debugging templates :-)
>>>>
>>>>
>>>> On Wed, Jul 17, 2013 at 9:07 AM, Michael Bukosky <[email protected]> 
>>>> wrote:
>>>>
>>>>> wow that was a simple fix. I have been racking my brain over this for 
>>>>> the past few days. Thanks so much for all your help.
>>>>>
>>>>> For reference here is my final snippet
>>>>>
>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" 
>>>>>> size="2"><strong>Cause</strong></font></dt>
>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>> size="2">${build.causes}</font></dd>
>>>>>>
>>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" size="2"><strong>Build 
>>>>>> log extract</strong></font></dt>
>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>> size="2">${BUILD_LOG_REGEX(matchedLineHtmlStyle:true)}</font></dd>
>>>>>>
>>>>>>
>>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" 
>>>>>> size="2"><strong>Failed Tests</strong></font></dt>
>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>> size="2">${FAILED_TESTS()}</font></dd>
>>>>>
>>>>>
>>>>> Mike 
>>>>>
>>>>> On Wednesday, July 17, 2013 11:56:30 AM UTC-4, slide wrote:
>>>>>
>>>>>> Sorry, one typo in my email, it should be 
>>>>>> ${BUILD_LOG_REGEX(matchedLineHtmlStyle: 
>>>>>> true)}. matchedLineHtmlStyle is not a boolean though, so I'm not sure 
>>>>>> why 
>>>>>> you are using "true" as the value.
>>>>>>
>>>>>>
>>>>>> On Wed, Jul 17, 2013 at 8:55 AM, Slide <[email protected]> wrote:
>>>>>>
>>>>>>> When using macros in a groovy template, you need to use 
>>>>>>> ${BUILD_LOG_REGEX(matchedLineHtmlStyle=true)} and 
>>>>>>> ${FAILED_TESTS()}. Please give that a try. I should also be releasing a 
>>>>>>> new 
>>>>>>> version of email-ext soon, just have some final testing to do.
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Jul 17, 2013 at 8:45 AM, Michael Bukosky <[email protected]> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I am currently trying to write a custom build/failure email for the 
>>>>>>>> Jenkins - Email-ext plugin. I decided to write the email as a groovy 
>>>>>>>> template because of the useful 'Email Template Testing' feature in 
>>>>>>>> Email-ext. I would like to use a combination of groovy script and the 
>>>>>>>> built 
>>>>>>>> in Token Macros. I am having a difficult time trying to figure out if 
>>>>>>>> I am 
>>>>>>>> doing this incorrectly or if it simply is not supported. Here is a 
>>>>>>>> simple 
>>>>>>>> code snippet
>>>>>>>>
>>>>>>>> ... <truncated>
>>>>>>>>
>>>>>>>>  
>>>>>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" 
>>>>>>>>> size="2"><strong>Cause</strong></font></dt>
>>>>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>>>>> size="2">${build.causes}</font></dd>
>>>>>>>>>
>>>>>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" 
>>>>>>>>> size="2"><strong>Build log extract</strong></font></dt>
>>>>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>>>>> size="2">${BUILD_LOG_REGEX, matchedLineHtmlStyle=true}</
>>>>>>>>> font></dd> 
>>>>>>>>
>>>>>>>>
>>>>>>>>> <dt><font color="#FFFFFF" face="Calibri,Arial" 
>>>>>>>>> size="2"><strong>Failed Tests</strong></font></dt>
>>>>>>>>
>>>>>>>> <dd><font color="#141414" face="Calibri,Arial" 
>>>>>>>>> size="2">${FAILED_TESTS}</font></dd> 
>>>>>>>>
>>>>>>>>
>>>>>>>>> ...<truncated>
>>>>>>>>
>>>>>>>>
>>>>>>>> After much goggling, I found a few links that support my theory 
>>>>>>>> that these features are not supported yet.
>>>>>>>>
>>>>>>>> Token Macro - https://github.com/jenkinsci/token-macro-plugin/
>>>>>>>> commit/d3995df361ab9a3aed09f57da0cb6d0fdc67cbfb
>>>>>>>> Token Macros via groovy (2.30.3-SNAPSHOT) - https://
>>>>>>>> github.com/jenkinsci/email-ext-plugin/commit/
>>>>>>>> f168dd561922254652f78f254b1bdfb8152860a8
>>>>>>>>
>>>>>>>> If this is truly the case, I was wondering if it would be possible 
>>>>>>>> to use and test the snapshop release. I am a newer user to Jenkins and 
>>>>>>>> have 
>>>>>>>> not used a snapshot before. Does anyone know how to pull the 
>>>>>>>> (2.30.3-SNAPSHOT) and use it in my local Jenkins?
>>>>>>>>
>>>>>>>> Thanks for all your help.
>>>>>>>>
>>>>>>>> Mike
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>>> Website: http://earl-of-code.com 
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> Website: http://earl-of-code.com 
>>>>>>
>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "Jenkins Users" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>  
>>>>>  
>>>>>
>>>>
>>>>
>>>>
>>>> -- 
>>>> Website: http://earl-of-code.com 
>>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Jenkins Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jenkinsci-users/3d4db1a4-e2e7-42b9-85d9-0fc4760bb1ef%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/jenkinsci-users/3d4db1a4-e2e7-42b9-85d9-0fc4760bb1ef%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/41750d56-8dfb-4284-a638-82bfcaa016bf%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to