Closed melodous closed 9 years ago
Is there any kind of exception associated with the SEVERE message?
I just tested with Jenkins 1.615 and Seed 0.14.0, and my hook (on GitHub) fired the creation of the branch.
Could it be the difference in the Jenkins version?
Any stack trace could help now :)
When you say that the hooks suddenly stopped working, can you relate this to any event? Jenkins upgrade? Seed upgrade? Other?
Yes it has a BRANCH parameter, and there isn't any kind of exception :(. This also happens with UPDATE event, for example I can run the job manually:
INFO: insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build #1 main build action completed: SUCCESS
But It fails on new event:
Sep 02, 2015 4:03:28 PM java_util_logging_Logger$info call INFO: Incoming POST Sep 02, 2015 4:03:28 PM net.nemerosa.seed.triggering.SeedServiceImpl post INFO: Event: project=insurancetelematics/insurancetelematics-drivies-landing, branch=testing, type=COMMIT Sep 02, 2015 4:03:28 PM net.nemerosa.seed.triggering.JenkinsSeedLauncher launch INFO: Launching job at insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build with parameters {COMMIT=578fc6cfc767c7080628794dfd6f8e152e771908} Sep 02, 2015 4:03:28 PM java_util_logging_Logger$severe call SEVERE: Cannot find job in path with name insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build Sep 02, 2015 4:08:42 PM java_util_logging_Logger$info call
I don't know when or what triggered de problem ... holidays you know :) I'm going to check when we update the jenkins.
I've seen that the exception might not lead to the stack trace being printed. I will release in a few minutes a 0.14.1 which contains more traces. Will you be able to install it and test?
Is there any way of add verbose logging to seed plugin?
See my previous comment ;)
Of course :)
0.14.1 has been published. It might take some time before it's visible in the Jenkins repository and then in your local updates.
OK, thank you. I'll say you something shortly.
The stack trace with 0.14.1:
Sep 03, 2015 3:49:13 AM java_util_logging_Logger$info call INFO: Incoming POST Sep 03, 2015 3:49:14 AM net.nemerosa.seed.triggering.SeedServiceImpl post INFO: Event: project=insurancetelematics/insurancetelematics-drivies-landing, branch=testing, type=COMMIT Sep 03, 2015 3:49:14 AM net.nemerosa.seed.triggering.JenkinsSeedLauncher launch INFO: Launching job at insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build with parameters {COMMIT=ceafad82ce67baebb3bde02f56e165553efc69f8} Sep 03, 2015 3:49:14 AM java_util_logging_Logger$log call SEVERE: Cannot find job in context [] with path [insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build] net.nemerosa.seed.config.CannotFindJobException: Cannot find job in context [] with path [insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing/insurancetelematics-drivies-landing-testing-build] at net.nemerosa.seed.triggering.JenkinsSeedLauncher.findItem(JenkinsSeedLauncher.java:107) at net.nemerosa.seed.triggering.JenkinsSeedLauncher.findItem(JenkinsSeedLauncher.java:96) at net.nemerosa.seed.triggering.JenkinsSeedLauncher.findJob(JenkinsSeedLauncher.java:87) at net.nemerosa.seed.triggering.JenkinsSeedLauncher.launch(JenkinsSeedLauncher.java:27) at net.nemerosa.seed.config.SeedBranchStrategy.commit(SeedBranchStrategy.java:88) at net.nemerosa.seed.config.SeedBranchStrategy.post(SeedBranchStrategy.java:61) at net.nemerosa.seed.triggering.SeedServiceImpl.post(SeedServiceImpl.java:49) at net.nemerosa.seed.triggering.SeedService$post.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) at net.nemerosa.seed.triggering.connector.AbstractEndPoint.post(AbstractEndPoint.groovy:130) 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:497) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:272) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) at net.nemerosa.seed.triggering.connector.AbstractEndPoint.doDynamic(AbstractEndPoint.groovy:69) 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:497) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46) at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96) at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:391) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) at org.kohsuke.stapler.Stapler.service(Stapler.java:238) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:123) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) 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:135) 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:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) 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)
Thanks Raul.
It seems that the insurancetelematics-drivies-landing
root cannot be found or it not a folder. I assume though it's not the case and that this is a folder.
Do you any permission management in your jobs and folders?
I've seen the code runs with impersonating SYSTEM
only for the delete
event - but it should be the case for all kinds of events, since in a protected system, the hook must have the rights to perform its actions. What I do not get is why it works in my own systems.
I'll correct this.
Morning Damien, you did it, the problem was triggered when we activated the auth. I give read perms to anonymous user and now all is working, thank you so much :). And congrats for your work, the pack seed plus ontrack is awesome.
Thanks Raul. The feedback is always welcome. You'll have soon a 0.14.2 version that should fix your issues.
Hi Raul. Version 0.14.2 is available, with a fix for the ACL support. Can you please test it? Thanks.
Ok, I'll try and say you something.
Hi Damien, without explicit read permissions to anonymous user it's still fail:
Sep 04, 2015 10:27:58 AM net.nemerosa.seed.triggering.SeedServiceImpl post INFO: Event: project=insurancetelematics/insurancetelematics-drivies-landing, branch=testing, type=DELETION Sep 04, 2015 10:27:58 AM java_util_logging_Logger$log call SEVERE: Cannot find job in context [] with path [insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing] net.nemerosa.seed.config.CannotFindJobException: Cannot find job in context [] with path [insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-testing] at net.nemerosa.seed.triggering.JenkinsSeedLauncher.findItem(JenkinsSeedLauncher.java:111) at net.nemerosa.seed.triggering.JenkinsSeedLauncher.findItem(JenkinsSeedLauncher.java:100) at net.nemerosa.seed.triggering.JenkinsSeedLauncher.delete(JenkinsSeedLauncher.java:72) at net.nemerosa.seed.config.SeedBranchStrategy.delete(SeedBranchStrategy.java:134) at net.nemerosa.seed.config.SeedBranchStrategy.post(SeedBranchStrategy.java:55) at net.nemerosa.seed.triggering.SeedServiceImpl.post(SeedServiceImpl.java:49) at net.nemerosa.seed.triggering.SeedService$post.call(Unknown Source) at net.nemerosa.seed.triggering.connector.AbstractEndPoint.post(AbstractEndPoint.groovy:130) 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:497) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:272) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) at net.nemerosa.seed.triggering.connector.AbstractEndPoint.doDynamic(AbstractEndPoint.groovy:69) 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:497) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46) at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96) at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:391) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) at org.kohsuke.stapler.Stapler.service(Stapler.java:238) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:123) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) 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:135) 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:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) 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)
I see the problem. I will correct soon. Thanks very much for testing!
Hi Raul, version 0.14.3 is published, with a fix for this problem. I'm waiting for your feedback before closing the issue.
Hi Raul, had you the possibility to test?
Hi Damien, I just test it and yes, with 0.14.3 all three events delete, create and update are working without explicit permissions.
Thanks Raul. Closing the ticket now. Enjoy!
Hi Damien,
We have been working with seed plugging for some time but suddenly the webhooks stopped working (sadly I can't be sure what triggered the problem). Seed receive the create, delete and update events but responds with "{"status":"ERROR","message":"Cannot find job in path with name insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-seed"}". Jenkins writes on logs:
INFO: Launching job at insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-seed with parameters {BRANCH=testing} SEVERE: Cannot find job in path with name insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-seed
But I can run the job manually successfully:
INFO: insurancetelematics-drivies-landing/insurancetelematics-drivies-landing-seed #1 main build action completed: SUCCESS
We are using Jenkins 1.620 and seed 0.12.0 or 0.14.0.