[JIRA] [build-name-setter-plugin] (JENKINS-31149) Latest version of token-macro-plugin doesn't work with build-name-setter PROPFILE

6 views
Skip to first unread message

erik.lattimore@sonos.com (JIRA)

unread,
Oct 24, 2015, 10:18:04 AM10/24/15
to jenkinsc...@googlegroups.com
Erik Lattimore created an issue
 
Jenkins / Bug JENKINS-31149
Latest version of token-macro-plugin doesn't work with build-name-setter PROPFILE
Issue Type: Bug Bug
Assignee: Kohsuke Kawaguchi
Components: build-name-setter-plugin, token-macro-plugin
Created: 24/Oct/15 2:17 PM
Priority: Minor Minor
Reporter: Erik Lattimore

In some of our jobs, we use the build-name-setter plugin along with property files to set the name of the job based on values generated from the build. After upgrading to the latest version of the token-macro plugin, we are getting exceptions in the build. In our jobs, we have build-name-setter configured as follows:

    <org.jenkinsci.plugins.buildnamesetter.BuildNameSetter plugin="build-name-setter@1.3">
      <template>${PROPFILE,file="debian.properties",property="version"}</template>
    </org.jenkinsci.plugins.buildnamesetter.BuildNameSetter>

However, now when the build runs, we get the following exception:

00:00:39.540 FATAL: Remote call on USLOLBLDV80 failed
00:00:39.541 java.io.IOException: Remote call on USLOLBLDV80 failed
00:00:39.541 	at hudson.remoting.Channel.call(Channel.java:786)
00:00:39.541 	at hudson.FilePath.act(FilePath.java:1073)
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.impl.PropertyFromFileMacro.evaluate(PropertyFromFileMacro.java:42)
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.DataBoundTokenMacro.evaluate(DataBoundTokenMacro.java:190)
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.TokenMacro.expand(TokenMacro.java:190)
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.TokenMacro.expand(TokenMacro.java:162)
00:00:39.541 	at org.jenkinsci.plugins.buildnamesetter.BuildNameSetter.setDisplayName(BuildNameSetter.java:50)
00:00:39.541 	at org.jenkinsci.plugins.buildnamesetter.BuildNameSetter.access$000(BuildNameSetter.java:26)
00:00:39.541 	at org.jenkinsci.plugins.buildnamesetter.BuildNameSetter$1.tearDown(BuildNameSetter.java:42)
00:00:39.541 	at hudson.model.Build$BuildExecution.doRun(Build.java:171)
00:00:39.541 	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:536)
00:00:39.541 	at hudson.model.Run.execute(Run.java:1738)
00:00:39.541 	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
00:00:39.541 	at hudson.model.ResourceController.execute(ResourceController.java:98)
00:00:39.541 	at hudson.model.Executor.run(Executor.java:381)
00:00:39.541 Caused by: java.lang.NoClassDefFoundError: java/nio/charset/StandardCharsets
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.impl.PropertyFromFileMacro$ReadProperty.call(PropertyFromFileMacro.java:62)
00:00:39.541 	at org.jenkinsci.plugins.tokenmacro.impl.PropertyFromFileMacro$ReadProperty.call(PropertyFromFileMacro.java:45)
00:00:39.541 	at hudson.remoting.UserRequest.perform(UserRequest.java:121)
00:00:39.541 	at hudson.remoting.UserRequest.perform(UserRequest.java:49)
00:00:39.541 	at hudson.remoting.Request$2.run(Request.java:326)
00:00:39.541 	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
00:00:39.541 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
00:00:39.541 	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
00:00:39.541 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
00:00:39.541 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
00:00:39.541 	at java.lang.Thread.run(Thread.java:701)
00:00:39.541 	at ......remote call to USLOLBLDV80(Native Method)
00:00:39.541 	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1413)
00:00:39.541 	at hudson.remoting.UserResponse.retrieve(UserRequest.java:221)
00:00:39.541 	at hudson.remoting.Channel.call(Channel.java:778)
00:00:39.541 	... 14 more

If I roll back the plugin, everything works fine. (Also, it seems as though just PROPFILE is the only build-name-setter macro that is broken).

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265)
Atlassian logo

slide.o.mix@gmail.com (JIRA)

unread,
Oct 27, 2015, 9:51:01 AM10/27/15
to jenkinsc...@googlegroups.com
Alex Earl commented on Bug JENKINS-31149
 
Re: Latest version of token-macro-plugin doesn't work with build-name-setter PROPFILE

What version do you roll back to and what version did you upgrade to?

erik.lattimore@sonos.com (JIRA)

unread,
Oct 27, 2015, 10:07:05 AM10/27/15
to jenkinsc...@googlegroups.com
Erik Lattimore updated an issue
 
Change By: Erik Lattimore
Environment: token-macro v1.11, build-name-setter v1.3, Jenkins v1.609.3

erik.lattimore@sonos.com (JIRA)

unread,
Oct 27, 2015, 10:08:05 AM10/27/15
to jenkinsc...@googlegroups.com
Erik Lattimore commented on Bug JENKINS-31149
 
Re: Latest version of token-macro-plugin doesn't work with build-name-setter PROPFILE

I upgraded to version 1.11 of the token-macro plugin and saw the problem. I downgraded back to 1.10 and things work as expected.

slide.o.mix@gmail.com (JIRA)

unread,
Oct 27, 2015, 2:44:02 PM10/27/15
to jenkinsc...@googlegroups.com

erik.lattimore@sonos.com (JIRA)

unread,
Oct 27, 2015, 2:48:01 PM10/27/15
to jenkinsc...@googlegroups.com

The slave is running:

java version "1.6.0_36"
OpenJDK Runtime Environment (IcedTea6 1.13.8) (6b36-1.13.8-0ubuntu1~12.04)
OpenJDK Server VM (build 23.25-b01, mixed mode)

And the master is running the same.

slide.o.mix@gmail.com (JIRA)

unread,
Oct 27, 2015, 2:50:03 PM10/27/15
to jenkinsc...@googlegroups.com

Ok, that seems to be the problem. I believe that java.nio.charset.StandardCharsets was added in 1.7.

slide.o.mix@gmail.com (JIRA)

unread,
Oct 27, 2015, 2:51:04 PM10/27/15
to jenkinsc...@googlegroups.com
Alex Earl edited a comment on Bug JENKINS-31149
Ok, that seems to be the problem. I believe that java.nio.charset.StandardCharsets was added in 1.7.  I'll have to figure out how to fix this.

erik.lattimore@sonos.com (JIRA)

unread,
Oct 27, 2015, 2:54:01 PM10/27/15
to jenkinsc...@googlegroups.com

Ok cool. The latest Jenkins LTS requires Java 1.7 (and all slaves need to be upgraded as well) so I will eventually upgrade. However if there is a way to tag a plugin as requiring a specific Jenkins version, you can just have it depend on the latest LTS and at that point you will know that you are running on at least Java 1.7.

erik.lattimore@sonos.com (JIRA)

unread,
Oct 27, 2015, 2:57:03 PM10/27/15
to jenkinsc...@googlegroups.com
Erik Lattimore edited a comment on Bug JENKINS-31149
Ok cool. The latest Jenkins LTS requires Java 1.7 (and all slaves need to be upgraded as well) so I will eventually upgrade. However if there is a way to tag a plugin as requiring a specific Jenkins version, you can just have it depend on the latest LTS and at that point you will know that you are running on at least Java 1.7.


And then I would say we can just close out this bug because people will see that they shouldn't upgrade until they upgrade their master.

slide.o.mix@gmail.com (JIRA)

unread,
Oct 27, 2015, 3:04:01 PM10/27/15
to jenkinsc...@googlegroups.com

Yeah, apparently the newer version of core that the plugin depends on allows Java 7 stuff, even if the LTS it's based on doesn't REQUIRE Java 7.

slide.o.mix@gmail.com (JIRA)

unread,
Oct 30, 2015, 9:16:04 AM10/30/15
to jenkinsc...@googlegroups.com

slide.o.mix@gmail.com (JIRA)

unread,
Oct 30, 2015, 9:16:04 AM10/30/15
to jenkinsc...@googlegroups.com

slide.o.mix@gmail.com (JIRA)

unread,
Dec 11, 2015, 12:09:02 AM12/11/15
to jenkinsc...@googlegroups.com
Alex Earl resolved as Fixed
 

Changed to Charset.forName.

Change By: Alex Earl
Status: Open Resolved
Resolution: Fixed

slide.o.mix@gmail.com (JIRA)

unread,
Apr 5, 2016, 10:44:02 AM4/5/16
to jenkinsc...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages