[JIRA] (JENKINS-58825) Requirements FIle causes exception during config save

0 views
Skip to first unread message

Simon.Richter@hogyros.de (JIRA)

unread,
Aug 6, 2019, 8:38:02 AM8/6/19
to jenkinsc...@googlegroups.com
Simon Richter created an issue
 
Jenkins / Bug JENKINS-58825
Requirements FIle causes exception during config save
Issue Type: Bug Bug
Assignee: Unassigned
Components: chroot-plugin
Created: 2019-08-06 12:37
Priority: Major Major
Reporter: Simon Richter

I'm trying to use the "requirements file" option.

Setting it to a non-empty value causes a test to run whether the file already exists and shows a warning if it doesn't (good). The warning is also shown if the file already exists (bad), and trying to save the configuration leads to an exception (very bad).

Setting the option through editing the job configuration XML and reloading the Jenkins configuration works, and the job correctly uses the contents of the file as additional packages to install (good), but editing the job from the UI is now impossible as saving the configuration fails.

Add Comment Add Comment
 
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)

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

unread,
Sep 4, 2019, 10:44:04 AM9/4/19
to jenkinsc...@googlegroups.com
Alex Earl commented on Bug JENKINS-58825
 
Re: Requirements FIle causes exception during config save

It would be helpful to anyone who wants to look into this to see the stack trace.

Simon.Richter@hogyros.de (JIRA)

unread,
Sep 5, 2019, 4:58:02 AM9/5/19
to jenkinsc...@googlegroups.com

Stack trace:

java.io.FileNotFoundException: File 'src/REQUIREMENTS' does not exist
 at org.apache.commons.io.FileUtils.openInputStream(FileUtils.java:297)
 at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1805)
 at org.apache.commons.io.FileUtils.readFileToString(FileUtils.java:1838)
 at org.jenkinsci.plugins.chroot.builders.ChrootBuilder.<init>(ChrootBuilder.java:92)
 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
 at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
 at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:529)
Caused: java.lang.IllegalArgumentException
 at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:544)
 at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:784)
 at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:83)
 at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:678)
Caused: java.lang.IllegalArgumentException: Failed to instantiate class org.jenkinsci.plugins.chroot.builders.ChrootBuilder from {"chrootName":"debian-buster","clear":false,"loginAsRoot":false,"command":"make","packagesFile":"src/REQUIREMENTS","additionalPackages":"","ignoreExit":false,"noUpdate":false,"forceInstall":false,"stapler-class":"org.jenkinsci.plugins.chroot.builders.ChrootBuilder","$class":"org.jenkinsci.plugins.chroot.builders.ChrootBuilder"}
 at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:681)
 at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:478)
 at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:474)
 at hudson.model.Descriptor.newInstance(Descriptor.java:596)
Caused: java.lang.Error: Failed to instantiate class org.jenkinsci.plugins.chroot.builders.ChrootBuilder from {"chrootName":"debian-buster","clear":false,"loginAsRoot":false,"command":"make","packagesFile":"src/REQUIREMENTS","additionalPackages":"","ignoreExit":false,"noUpdate":false,"forceInstall":false,"stapler-class":"org.jenkinsci.plugins.chroot.builders.ChrootBuilder","$class":"org.jenkinsci.plugins.chroot.builders.ChrootBuilder"}
 at hudson.model.Descriptor.newInstance(Descriptor.java:604)
 at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:1059)
 at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:1021)
 at hudson.util.DescribableList.rebuildHetero(DescribableList.java:208)
 at hudson.model.Project.submit(Project.java:230)
 at hudson.model.Job.doConfigSubmit(Job.java:1348)
 at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:772)
 at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
 at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:396)
 at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:408)
 at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:77)
 at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
 at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:212)
 at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:145)
 at org.kohsuke.stapler.MetaClass$11.doDispatch(MetaClass.java:535)
 at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:747)
Caused: javax.servlet.ServletException
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:797)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:878)
 at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:280)
 at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:747)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:878)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:676)
 at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
 at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:154)
 at org.jenkinsci.plugins.modernstatus.ModernStatusFilter.doFilter(ModernStatusFilter.java:52)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
 at jenkins.telemetry.impl.UserLanguages$AcceptLanguageFilter.doFilter(UserLanguages.java:128)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
 at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:157)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:99)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
 at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
 at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
 at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
 at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90)
 at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
 at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
 at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
 at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
 at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
 at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
 at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
 at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1701)
 at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
 at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
 at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
 at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
 at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1668)
 at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
 at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
 at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
 at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
 at org.eclipse.jetty.server.Server.handle(Server.java:502)
 at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
 at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
 at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
 at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
 at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
 at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
 at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
 at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
 at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
 at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
 at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
 at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
 at java.base/java.lang.Thread.run(Thread.java:834)
Reply all
Reply to author
Forward
0 new messages