Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-37610

Sauce Labs Results Publisher throws Exception in Pipeline

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      I'm trying to use the Sauce On Demand Plug in Pipeline. I've been able to get my project to build and run tests using SauceConnect, but I can't get the Sauce-based results publishing step to work.

      There's little to not documentation on this, and what there is seems to apply to the Freestyle job type, not pipeline.

      The Snippet Generator for the publish step generates this output:

      step([$class: 'SauceOnDemandTestPublisher', testDataPublishers: []])
      

      Which throws this exception when run as part of a pipeline:

      java.lang.IllegalArgumentException: argument type mismatch
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:258)
      	at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:372)
      	at org.jenkinsci.plugins.structs.describable.DescribableModel.buildArguments(DescribableModel.java:313)
      	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:257)
      	at org.jenkinsci.plugins.workflow.steps.StepDescriptor.newInstance(StepDescriptor.java:195)
      	at org.jenkinsci.plugins.workflow.cps.DSL.invokeStep(DSL.java:175)
      	at org.jenkinsci.plugins.workflow.cps.DSL.invokeMethod(DSL.java:124)
      	at org.jenkinsci.plugins.workflow.cps.CpsScript.invokeMethod(CpsScript.java:117)
      	at groovy.lang.GroovyObject$invokeMethod.call(Unknown Source)
      	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:151)
      	at org.kohsuke.groovy.sandbox.GroovyInterceptor.onMethodCall(GroovyInterceptor.java:21)
      	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:115)
      	at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:149)
      	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:146)
      	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:123)
      	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:123)
      	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:123)
      	at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:16)
      	at WorkflowScript.run(WorkflowScript:28)
      	at ___cps.transform___(Native Method)
      	at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:48)
      	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.GeneratedMethodAccessor324.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	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(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	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.access$000(CollectionLiteralBlock.java:31)
      	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock.eval(CollectionLiteralBlock.java:26)
      	at com.cloudbees.groovy.cps.Next.step(Next.java:58)
      	at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:154)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$001(SandboxContinuable.java:18)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable$1.call(SandboxContinuable.java:33)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable$1.call(SandboxContinuable.java:30)
      	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:30)
      	at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:164)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:361)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$100(CpsThreadGroup.java:80)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:236)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:226)
      	at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:47)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	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:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      

        Attachments

          Activity

          Hide
          halkeye Gavin Mogan added a comment -

          Liam Newman
          this should now be fixed in 1.160

          https://github.com/saucelabs/jenkins-sauce-ondemand-plugin/blob/master/CHANGELOG.md#jenkins-1160---2017-01-27

          I'll mark it as resolved, reopen if necessary

          Show
          halkeye Gavin Mogan added a comment - Liam Newman this should now be fixed in 1.160 https://github.com/saucelabs/jenkins-sauce-ondemand-plugin/blob/master/CHANGELOG.md#jenkins-1160---2017-01-27 I'll mark it as resolved, reopen if necessary
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Gavin Mogan
          Path:
          pom.xml
          src/main/java/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher.java
          src/main/resources/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher/config.jelly
          src/main/resources/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher/help.html
          http://jenkins-ci.org/commit/sauce-ondemand-plugin/cc61f90fe98e7dfc03c453155d9187befd2a6966
          Log:
          Make parameters for publish sauce labs test results pipeline step optional - JENKINS-37610

          Also make a helper symbol of saucePublisher()

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Gavin Mogan Path: pom.xml src/main/java/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher.java src/main/resources/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher/config.jelly src/main/resources/hudson/plugins/sauce_ondemand/SauceOnDemandTestPublisher/help.html http://jenkins-ci.org/commit/sauce-ondemand-plugin/cc61f90fe98e7dfc03c453155d9187befd2a6966 Log: Make parameters for publish sauce labs test results pipeline step optional - JENKINS-37610 Also make a helper symbol of saucePublisher()
          Hide
          halkeye Gavin Mogan added a comment -

          Okay, I had time today, so did a bit of refactoring. Should be released tomorrow, monday at the latest.

          Also got it to not include that extra field, and made a `saucePublisher` shortcut

          Show
          halkeye Gavin Mogan added a comment - Okay, I had time today, so did a bit of refactoring. Should be released tomorrow, monday at the latest. Also got it to not include that extra field, and made a `saucePublisher` shortcut
          Hide
          mehmetg Mehmet Gerceker added a comment - - edited

          The issue with the pipeline syntax tool is still there:

          http://localhost:8080/jenkins/job/testing/pipeline-syntax/

          It'd be helpful id this was on the Sauce Wiki.

          Show
          mehmetg Mehmet Gerceker added a comment - - edited The issue with the pipeline syntax tool is still there: http://localhost:8080/jenkins/job/testing/pipeline-syntax/ It'd be helpful id this was on the Sauce Wiki.
          Hide
          halkeye Gavin Mogan added a comment -

          My goal is to get those examples all updated an official, they are just not yet

          I'll get it noted as a feature you want.

          Show
          halkeye Gavin Mogan added a comment - My goal is to get those examples all updated an official, they are just not yet I'll get it noted as a feature you want.

            People

            Assignee:
            halkeye Gavin Mogan
            Reporter:
            bitwiseman Liam Newman
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: