In order for your plugin to work in pipeline jobs, you need to implement
SimpleBuildStep in your recorder and then override the perform method that
takes a Run and FilePath instead of an AbstractBuild. You do not need both
overrides, the one that I mentioned first will work for both freestyle and
pipeline jobs. In addition, you can add an @Symbol annotation to your
descriptor and make a shorthand for calling your step instead of having to
use `step()`

On Fri, Feb 8, 2019, 04:27 prasad.pofali via Jenkins Users <
jenkinsci-users@googlegroups.com wrote:

> I am referring a custom Jenkins plugin from here (
> https://github.com/pritic/testExample)
>
> This plugin is working fine with the traditional approach of building
> jenkins jobs.
>
> When I tried to call this plugin using a declarative pipeline, it caused
> an exception. The following is the pipeline code.
>
> import hudson.model.*
> checkout filesystem(clearWorkspace: false, copyHidden: false, path:
> 'C:\\java-junit-sample-master\\java-junit-sample-master')
>
> pipeline {
>     agent any
>     stages {
>         stage('Build and Run Tests') {
>             steps {
> node {
>     step([$class : 'TestExamplePublisher', applications:[name: 'PrasadP']])
> }
>             }
>         }
>     }
> }
>
>
> Below is the exception stacktrace:
>
> [Pipeline] End of Pipeline
>>
>> org.jenkinsci.plugins.workflow.steps.MissingContextVariableException:
>> Required context class hudson.FilePath is missing
>> at
>> org.jenkinsci.plugins.workflow.steps.StepDescriptor.checkContextAvailability(StepDescriptor.java:260)
>> at org.jenkinsci.plugins.workflow.cps.DSL.invokeStep(DSL.java:262)
>> at org.jenkinsci.plugins.workflow.cps.DSL.invokeMethod(DSL.java:178)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsScript.invokeMethod(CpsScript.java:122)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
>> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
>> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1213)
>> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1022)
>> at
>> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:42)
>> at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
>> at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
>> at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:157)
>> at
>> org.kohsuke.groovy.sandbox.GroovyInterceptor.onMethodCall(GroovyInterceptor.java:23)
>> at
>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:155)
>> at
>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:142)
>> at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:155)
>> at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:159)
>> at
>> com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:17)
>> at WorkflowScript.run(WorkflowScript:2)
>> at ___cps.transform___(Native Method)
>> at
>> com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:57)
>> at
>> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:109)
>> at
>> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:82)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at
>> com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
>> at
>> com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:60)
>> at
>> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:109)
>> at
>> com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:82)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at
>> com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
>> at
>> com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.dispatch(CollectionLiteralBlock.java:55)
>> at
>> com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.item(CollectionLiteralBlock.java:45)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at
>> com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
>> at com.cloudbees.groovy.cps.impl.ConstantBlock.eval(ConstantBlock.java:21)
>> at com.cloudbees.groovy.cps.Next.step(Next.java:83)
>> at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:174)
>> at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
>> at
>> org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:122)
>> at
>> org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:261)
>> at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
>> at
>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101(SandboxContinuable.java:34)
>> at
>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.lambda$run0$0(SandboxContinuable.java:59)
>> at
>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
>> at
>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:58)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:182)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:332)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232)
>> at
>> org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
>> at java.util.concurrent.FutureTask.run(Unknown Source)
>> at
>> hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:131)
>> at
>> jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
>> at
>> jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
>> at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
>> at java.util.concurrent.FutureTask.run(Unknown Source)
>> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>> at java.lang.Thread.run(Unknown Source)
>> Finished: FAILURE
>>
>>
>
> I am not able to get the issue. Is the issue with calling plugin or the
> plugin configuraton.
>
> --
> 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 jenkinsci-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jenkinsci-users/c6a7498c-8bf3-4fa6-ab4b-09a96c5c1804%40googlegroups.com
> <https://groups.google.com/d/msgid/jenkinsci-users/c6a7498c-8bf3-4fa6-ab4b-09a96c5c1804%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 jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPiUgVd7hZsYgGg_6xxiy%3DCmKWtBk9KXF6QCGS9EjhJaY2zuNg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to