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

importTowerLogs(true) method of ansibleTower plugin is failing in Job DSL script

XMLWordPrintable

      i am trying to create a job which uses the tower configuration to connect to tower and launch my template there and get the full log printed in console output view of job.

      I am using the following code to deploy the same.

      jobdsl code: 
      """
      job('myansiblejob')
      {
      steps{

      ansibleTower

      {         towerServer('tower')         jobTemplate('sft-setupRepo')         inventory('4')         removeColor(false)         verbose(false)         *importTowerLogs("full")*         towerCredentialsId('aceacd00ff')         extraVars('''servers: '$Server_Name''')         }

          }
      }
      """

      error I am getting

      ERROR: (unknown source) No signature of method: javaposse.jobdsl.plugin.structs.DescribableContext.importTowerLogs() is applicable for argument types: (java.lang.String) values: [true]
      Finished: FAILURE
      I even tried passing boolean value mention Jobdsl API document but it throwed me the following error
      ava.lang.IllegalArgumentException: Could not instantiate {towerServer=tower, jobTemplate=sft-setupRepo, inventory=4, removeColor=false, verbose=false, importTowerLogs=true, towerCredentialsId=aceacd00ff, extraVars=servers: '$Server_Name} for org.jenkinsci.plugins.ansible_tower.AnsibleTower: java.lang.ClassCastException: org.jenkinsci.plugins.ansible_tower.AnsibleTower.importTowerLogs expects class java.lang.String but received class java.lang.Boolean
      at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:340)
      at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:273)
      at org.jenkinsci.plugins.structs.describable.DescribableModel$instantiate$1.call(Unknown Source)
      at javaposse.jobdsl.plugin.structs.DescribableContext.createInstance(DescribableContext.groovy:50)
      at javaposse.jobdsl.plugin.structs.DescribableContext$createInstance.call(Unknown Source)
      at javaposse.jobdsl.plugin.ExtensionPointHelper$DescribableExtension.call(ExtensionPointHelper.groovy:117)
      at javaposse.jobdsl.plugin.JenkinsJobManagement.callExtension(JenkinsJobManagement.java:410)
      at javaposse.jobdsl.dsl.JobManagement$callExtension$1.call(Unknown Source)
      at javaposse.jobdsl.plugin.InterruptibleJobManagement.callExtension(InterruptibleJobManagement.groovy:151)
      at javaposse.jobdsl.dsl.JobManagement$callExtension$1.call(Unknown Source)
      at javaposse.jobdsl.dsl.AbstractExtensibleContext.methodMissing(AbstractExtensibleContext.groovy:17)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:951)
      at groovy.lang.MetaClassImpl.invokePropertyOrMissing(MetaClassImpl.java:1279)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1227)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:822)
      at javaposse.jobdsl.dsl.AbstractContext.invokeMethod(AbstractContext.groovy)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:398)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:340)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:68)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:169)
      at seed_vm_deployment_jobs$_run_closure1$_closure5.doCall(seed_vm_deployment_jobs.groovy:18)
      at seed_vm_deployment_jobs$_run_closure1$_closure5.doCall(seed_vm_deployment_jobs.groovy)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:41)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:56)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
      at javaposse.jobdsl.dsl.ContextHelper.executeInContext(ContextHelper.groovy:16)
      at javaposse.jobdsl.dsl.ContextHelper$executeInContext$0.call(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
      at javaposse.jobdsl.dsl.ContextHelper$executeInContext$0.call(Unknown Source)
      at javaposse.jobdsl.dsl.Project.steps(Project.groovy:259)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:352)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:68)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:169)
      at seed_vm_deployment_jobs$_run_closure1.doCall(seed_vm_deployment_jobs.groovy:17)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at groovy.lang.Closure.call(Closure.java:420)
      at groovy.lang.Closure.call(Closure.java:436)
      at org.codehaus.groovy.runtime.DefaultGroovyMethods.with(DefaultGroovyMethods.java:327)
      at org.codehaus.groovy.runtime.dgm$758.invoke(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoMetaMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:251)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call(PogoMetaMethodSite.java:71)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call(PogoMetaMethodSite.java:76)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128)
      at javaposse.jobdsl.dsl.JobParent.processItem(JobParent.groovy:248)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:210)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:64)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
      at javaposse.jobdsl.dsl.JobParent.freeStyleJob(JobParent.groovy:47)
      at javaposse.jobdsl.dsl.JobParent$freeStyleJob$0.callCurrent(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at javaposse.jobdsl.dsl.JobParent$freeStyleJob$0.callCurrent(Unknown Source)
      at javaposse.jobdsl.dsl.JobParent.job(JobParent.groovy:39)
      at javaposse.jobdsl.dsl.DslFactory$job$0.callCurrent(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:157)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:177)
      at seed_vm_deployment_jobs.run(seed_vm_deployment_jobs.groovy:1)
      at seed_vm_deployment_jobs$run.call(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
      at seed_vm_deployment_folders$run.call(Unknown Source)
      at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScript(AbstractDslScriptLoader.groovy:138)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:210)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
      at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:64)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:169)
      at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScriptEngine(AbstractDslScriptLoader.groovy:108)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:352)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:68)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:177)
      at javaposse.jobdsl.dsl.AbstractDslScriptLoader$_runScripts_closure1.doCall(AbstractDslScriptLoader.groovy:61)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:569)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
      at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
      at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1034)
      at groovy.lang.Closure.call(Closure.java:420)
      at groovy.lang.Closure.call(Closure.java:436)
      at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2125)
      at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2110)
      at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2163)
      at org.codehaus.groovy.runtime.dgm$165.invoke(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:274)
      at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:56)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128)
      at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScripts(AbstractDslScriptLoader.groovy:46)
      at javaposse.jobdsl.plugin.ExecuteDslScripts.perform(ExecuteDslScripts.java:363)
      at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123)
      at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80)
      at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818)
      at hudson.model.Build$BuildExecution.build(Build.java:199)
      at hudson.model.Build$BuildExecution.doRun(Build.java:164)
      at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526)
      at hudson.model.Run.execute(Run.java:1894)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44)
      at hudson.model.ResourceController.execute(ResourceController.java:101)
      at hudson.model.Executor.run(Executor.java:442)
      Caused by: java.lang.ClassCastException: org.jenkinsci.plugins.ansible_tower.AnsibleTower.importTowerLogs expects class java.lang.String but received class java.lang.Boolean
      at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:498)
      at org.jenkinsci.plugins.structs.describable.DescribableModel.buildArguments(DescribableModel.java:415)
      at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:330)
      ... 152 more
      ERROR: Could not instantiate {towerServer=tower, jobTemplate=sft-setupRepo, inventory=4, removeColor=false, verbose=false, importTowerLogs=true, towerCredentialsId=aceacd00ff, extraVars=servers: '$Server_Name} for org.jenkinsci.plugins.ansible_tower.AnsibleTower: java.lang.ClassCastException: org.jenkinsci.plugins.ansible_tower.AnsibleTower.importTowerLogs expects class java.lang.String but received class java.lang.Boolean
      Finished: FAILURE

      Documentation:
      """
      ansibleTower 

      { * [towerServer|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-towerServer](String value) * [jobTemplate|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-jobTemplate](String value) * [towerCredentialsId|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-towerCredentialsId](String value) * [jobType|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-jobType](String value) * [extraVars|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-extraVars](String value) * [jobTags|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-jobTags](String value) * [skipJobTags|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-skipJobTags](String value) * [limit|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-limit](String value) * [inventory|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-inventory](String value) * [credential|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-credential](String value) * [scmBranch|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-scmBranch](String value) * [verbose|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-verbose](Boolean value) * *[importTowerLogs|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-importTowerLogs](Boolean value)* * [removeColor|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-removeColor](Boolean value) * [templateType|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-templateType](String value) * [importWorkflowChildLogs|https://jnkradops-hyd.silabs.com/plugin/job-dsl/api-viewer/index.html#path/javaposse.jobdsl.dsl.helpers.step.StepContext.ansibleTower-importWorkflowChildLogs](Boolean value) }

      """

       

      if I don't give importTowerLogs in my jobdsl script. it is building the job but once executing getting the following error
      ERROR: Build step failed with exception
      java.lang.NullPointerException: Cannot invoke "String.matches(String)" because "importTowerLogs" is null
      at org.jenkinsci.plugins.ansible_tower.AnsibleTowerRunner.runJobTemplate(AnsibleTowerRunner.java:73)
      at org.jenkinsci.plugins.ansible_tower.AnsibleTowerRunner.runJobTemplate(AnsibleTowerRunner.java:32)
      at org.jenkinsci.plugins.ansible_tower.AnsibleTower.perform(AnsibleTower.java:172)
      at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818)
      at hudson.model.Build$BuildExecution.build(Build.java:199)
      at hudson.model.Build$BuildExecution.doRun(Build.java:164)
      at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526)
      at hudson.model.Run.execute(Run.java:1894)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44)
      at hudson.model.ResourceController.execute(ResourceController.java:101)
      at hudson.model.Executor.run(Executor.java:442)
      Build step 'Ansible Tower' marked build as failure
      Finished: FAILURE
      please fix the function for job jobdsl or tell some fix for this.Its a big show stopper for me.

            johnwestcottiv John Westcott
            adamaya Adamaya
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: