jenkinsci / jenkins.rb

Deprecated, see https://www.jenkins.io/jep/7
394 stars 83 forks source link

ruby-runtime 0.13 and rbenv 0.0.17 are not compatible for jobdsl #123

Open JIppolito opened 6 years ago

JIppolito commented 6 years ago

So when i attempted to run the gradle test I got an error with the following combinations. When I rolled back the ruby-runtime to 0.12 it passed all the jobdsl tests.

The set up fro the gradle test is based on this: https://github.com/sheehan/job-dsl-gradle-example

code: wrappers { rbenv('2.4.0') { ignoreLocalVersion() gems('bundler', 'rake', 'activesupport', 'fileutils') } }

rbenv: 0.0.17 ruby-runtime: 0.13 jobDslVersion=1.70 jenkinsVersion=2.138

Add both plugin dependencies in the build.gradle file: testPlugins 'org.jenkins-ci.plugins:ruby-runtime:0.13' testPlugins 'org.jenkins-ci.ruby-plugins:rbenv:0.0.17'

Error when I run the jobdsl test: com.mycompany.jobdsl.JobScriptsSpec > test script "microservices.groovy" FAILED 16:41:45 Expected no exception to be thrown, but got 'java.lang.ClassCastException' 16:41:45 at spock.lang.Specification.noExceptionThrown(Specification.java:118) 16:41:45 at com.mycompany.jobdsl.JobScriptsSpec.test script "#file.name"(JobScriptsSpec.groovy:52) 16:41:45 16:41:45 Caused by: 16:41:45 java.lang.ClassCastException: java.lang.Object cannot be cast to hudson.model.Describable 16:41:45 at hudson.model.Descriptor.toMap(Descriptor.java:986) 16:41:45 at hudson.util.DescribableList.toMap(DescribableList.java:151) 16:41:45 at hudson.model.Project.getBuildWrappers(Project.java:148) 16:41:45 at hudson.model.Project.createTransientActions(Project.java:252) 16:41:45 at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:731) 16:41:45 at hudson.model.AbstractProject.onLoad(AbstractProject.java:323) 16:41:45 at hudson.model.Project.onLoad(Project.java:97) 16:41:45 at hudson.model.Items.load(Items.java:372) 16:41:45 at hudson.model.ItemGroupMixIn$4.call(ItemGroupMixIn.java:280) 16:41:45 at hudson.model.ItemGroupMixIn$4.call(ItemGroupMixIn.java:278) 16:41:45 at hudson.model.Items.whileUpdatingByXml(Items.java:135) 16:41:45 at hudson.model.ItemGroupMixIn.createProjectFromXML(ItemGroupMixIn.java:278) 16:41:45 at jenkins.model.Jenkins.createProjectFromXML(Jenkins.java:3873) 16:41:45 at javaposse.jobdsl.plugin.JenkinsJobManagement.createNewItem(JenkinsJobManagement.java:502) 16:41:45 at javaposse.jobdsl.plugin.JenkinsJobManagement.createOrUpdateConfig(JenkinsJobManagement.java:136) 16:41:45 at javaposse.jobdsl.dsl.AbstractDslScriptLoader.extractGeneratedJobs_closure4(AbstractDslScriptLoader.groovy:194) 16:41:45 at groovy.lang.Closure.call(Closure.java:414) 16:41:45 at groovy.lang.Closure.call(Closure.java:430) 16:41:45 at javaposse.jobdsl.dsl.AbstractDslScriptLoader.extractGeneratedJobs(AbstractDslScriptLoader.groovy:187) 16:41:45 at javaposse.jobdsl.dsl.AbstractDslScriptLoader.extractGeneratedItems(AbstractDslScriptLoader.groovy:174) 16:41:45 at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScripts_closure1(AbstractDslScriptLoader.groovy:61) 16:41:45 at groovy.lang.Closure.call(Closure.java:414) 16:41:45 at groovy.lang.Closure.call(Closure.java:430) 16:41:45 at javaposse.jobdsl.dsl.AbstractDslScriptLoader.runScripts(AbstractDslScriptLoader.groovy:46) 16:41:45 at com.mycompany.jobdsl.JobScriptsSpec.test script "#file.name"(JobScriptsSpec.groovy:46)