• Icon: New Feature New Feature
    • Resolution: Fixed
    • Icon: Critical Critical
    • pipeline

      Would be useful to have the equivalent of a SIGKILL for a WorkflowRun: immediately terminate the FlowExecution (with ABORTED), throw away all threads, and mark all StepContext as invalid. Would help in case regular interruption fails for whatever reason.

          [JENKINS-25550] Hard kill

          Jesse Glick added a comment -

          Workaround: append doDelete to the build URL and click the button.

          Jesse Glick added a comment - Workaround: append doDelete to the build URL and click the button.

          Christoph Vogtländer added a comment - - edited

          I'm not able to stop the build using the workaround:

          java.io.IOException: D:\Jenkins\jobs\job\builds\2015-04-05_00-41-16 is in use
          	at hudson.model.Run.delete(Run.java:1523)
          	at hudson.model.Run.doDoDelete(Run.java:2193)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          	at java.lang.reflect.Method.invoke(Unknown Source)
          	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$1.doDispatch(MetaClass.java:121)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
          	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$6.doDispatch(MetaClass.java:249)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	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:96)
          	at jenkins.metrics.impl.MetricsFilter.doFilter(MetricsFilter.java:117)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
          	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
          	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
          	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
          	at com.marvelution.jenkins.plugins.jira.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:51)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
          	at com.marvelution.jenkins.plugins.jira.filter.OAuthFilter.doFilter(OAuthFilter.java:87)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
          	at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          	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: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:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:168)
          	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.headerComplete(AbstractHttpConnection.java:949)
          	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1011)
          	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
          	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
          	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(Unknown Source)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          	at java.lang.Thread.run(Unknown Source)
          

          Christoph Vogtländer added a comment - - edited I'm not able to stop the build using the workaround: java.io.IOException: D:\Jenkins\jobs\job\builds\2015-04-05_00-41-16 is in use at hudson.model.Run.delete(Run.java:1523) at hudson.model.Run.doDoDelete(Run.java:2193) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) 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$1.doDispatch(MetaClass.java:121) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) 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$6.doDispatch(MetaClass.java:249) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) 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:96) at jenkins.metrics.impl.MetricsFilter.doFilter(MetricsFilter.java:117) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176) at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92) at com.marvelution.jenkins.plugins.jira.filter.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:51) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at com.marvelution.jenkins.plugins.jira.filter.OAuthFilter.doFilter(OAuthFilter.java:87) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) 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: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:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:168) 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.headerComplete(AbstractHttpConnection.java:949) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1011) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) 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(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang. Thread .run(Unknown Source)

          Jesse Glick added a comment -

          Well I never tested the workaround on Windows; then you run into file locking issues. Not clear from the stack trace which file in the build directory is in use (the File Leak Detector plugin would be able to say). Extreme workaround would be to delete the named directory while Jenkins is not running.

          Jesse Glick added a comment - Well I never tested the workaround on Windows; then you run into file locking issues. Not clear from the stack trace which file in the build directory is in use (the File Leak Detector plugin would be able to say). Extreme workaround would be to delete the named directory while Jenkins is not running.

          kishorerp added a comment -

          Can we please have a timeline by which this issue would be fixed.
          We cannot afford end users or anyone for that matter to manually kill a job by doing some changes to files in jenkins server.
          Context?
          https://groups.google.com/forum/#!topic/jenkinsci-dev/k4VLUAVfFjA

          kishorerp added a comment - Can we please have a timeline by which this issue would be fixed. We cannot afford end users or anyone for that matter to manually kill a job by doing some changes to files in jenkins server. Context? https://groups.google.com/forum/#!topic/jenkinsci-dev/k4VLUAVfFjA

          Jesse Glick added a comment -

          Another possible workaround (unconfirmed): from script console,

          Jenkins.instance.getItemByFullName('my/job').getBuildByNumber(123).finish(Result.ABORTED)
          

          Jesse Glick added a comment - Another possible workaround (unconfirmed): from script console, Jenkins.instance.getItemByFullName( 'my/job' ).getBuildByNumber(123).finish(Result.ABORTED)

          jglick The workaround works. You need to specify a throwable for the finish method.

          Jenkins.instance.getItemByFullName("jobName").getBuildByNumber(9).finish(hudson.model.Result.ABORTED, new java.io.IOException("Aborting build");
          

          This will free up the executor on the master/slave machine and new builds can run on the machine, but the build shows up as still executing in the jobs page.

          Steven Christou added a comment - jglick The workaround works. You need to specify a throwable for the finish method. Jenkins.instance.getItemByFullName("jobName").getBuildByNumber(9).finish(hudson.model.Result.ABORTED, new java.io.IOException("Aborting build"); This will free up the executor on the master/slave machine and new builds can run on the machine, but the build shows up as still executing in the jobs page.

          Code changed in jenkins
          User: Jesse Glick
          Path:
          CHANGES.md
          aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunTest.java
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-plugin/60a0db70e7747d212632854deca1efb5e081cd8b
          Log:
          [FIXED JENKINS-25550] Hard kill.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: CHANGES.md aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunTest.java job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-plugin/60a0db70e7747d212632854deca1efb5e081cd8b Log: [FIXED JENKINS-25550] Hard kill.

          Code changed in jenkins
          User: Jesse Glick
          Path:
          CHANGES.md
          aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunRestartTest.java
          aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/SynchronousNonBlockingStepTest.java
          aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/durable_task/ShellStepTest.java
          api/src/main/java/org/jenkinsci/plugins/workflow/actions/ErrorAction.java
          durable-task-step/src/main/java/org/jenkinsci/plugins/workflow/steps/durable_task/DurableTaskStep.java
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          step-api/src/main/java/org/jenkinsci/plugins/workflow/steps/AbstractSynchronousNonBlockingStepExecution.java
          support/src/main/java/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution.java
          support/src/main/resources/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution/PlaceholderTask/PlaceholderExecutable/executorCell.jelly
          http://jenkins-ci.org/commit/workflow-plugin/5aca627c9f3c1d58c38c2ac765d4b430044e4433
          Log:
          Merge pull request #141 from jglick/kill-JENKINS-25550

          JENKINS-25550 Hard kill

          Compare: https://github.com/jenkinsci/workflow-plugin/compare/7eb7a8a5e6c4...5aca627c9f3c

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: CHANGES.md aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunRestartTest.java aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/SynchronousNonBlockingStepTest.java aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/durable_task/ShellStepTest.java api/src/main/java/org/jenkinsci/plugins/workflow/actions/ErrorAction.java durable-task-step/src/main/java/org/jenkinsci/plugins/workflow/steps/durable_task/DurableTaskStep.java job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java step-api/src/main/java/org/jenkinsci/plugins/workflow/steps/AbstractSynchronousNonBlockingStepExecution.java support/src/main/java/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution.java support/src/main/resources/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution/PlaceholderTask/PlaceholderExecutable/executorCell.jelly http://jenkins-ci.org/commit/workflow-plugin/5aca627c9f3c1d58c38c2ac765d4b430044e4433 Log: Merge pull request #141 from jglick/kill- JENKINS-25550 JENKINS-25550 Hard kill Compare: https://github.com/jenkinsci/workflow-plugin/compare/7eb7a8a5e6c4...5aca627c9f3c

          For reference, http://echelog.com/logs/browse/jenkins/1447369200

          [22:12:05] <josb> jglick: I can click on the little red x all I want, but all it does is add "Aborted by anonymous" to the console output for the job
          [22:12:40] <jglick> josb: after 15s it should offer another link to the end of the log
          [22:13:08] <jglick> if you click that and the flow still runs for *another* 15s, you get a final link
          

          I can confirm it worked for us.

          Baptiste Mathus added a comment - For reference, http://echelog.com/logs/browse/jenkins/1447369200 [22:12:05] <josb> jglick: I can click on the little red x all I want, but all it does is add "Aborted by anonymous" to the console output for the job [22:12:40] <jglick> josb: after 15s it should offer another link to the end of the log [22:13:08] <jglick> if you click that and the flow still runs for *another* 15s, you get a final link I can confirm it worked for us.

          Jesse Glick added a comment -

          For discoverability, need to show some indication in the log that there is a countdown.

          Jesse Glick added a comment - For discoverability, need to show some indication in the log that there is a countdown.

          jglick just pushed https://github.com/jenkinsci/workflow-plugin/pull/254 to try clarify it's actually an actionable link.

          Baptiste Mathus added a comment - jglick just pushed https://github.com/jenkinsci/workflow-plugin/pull/254 to try clarify it's actually an actionable link.

          Code changed in jenkins
          User: Baptiste Mathus
          Path:
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-plugin/fb2df1447467a940d0b60eaeca6ba102f594d7d6
          Log:
          JENKINS-25550 Make it clearer it's a clickable link

          Might seem obvious but I've already had many people not clicking on
          the link thinking this was only something informational.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Baptiste Mathus Path: job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-plugin/fb2df1447467a940d0b60eaeca6ba102f594d7d6 Log: JENKINS-25550 Make it clearer it's a clickable link Might seem obvious but I've already had many people not clicking on the link thinking this was only something informational.

          Code changed in jenkins
          User: Jesse Glick
          Path:
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-plugin/13a467c07203b6fd5babc3e037ee964174f2529e
          Log:
          Merge pull request #254 from batmat/clarify-clickability

          JENKINS-25550 Make it clearer it's a clickable link

          Compare: https://github.com/jenkinsci/workflow-plugin/compare/4f09332339c1...13a467c07203

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-plugin/13a467c07203b6fd5babc3e037ee964174f2529e Log: Merge pull request #254 from batmat/clarify-clickability JENKINS-25550 Make it clearer it's a clickable link Compare: https://github.com/jenkinsci/workflow-plugin/compare/4f09332339c1...13a467c07203

          Andrew Bayer added a comment -

          What more does this need to be closed?

          Andrew Bayer added a comment - What more does this need to be closed?

          abayer not sure what you mean: FWICT issues are generally not closed at least here (and I don't remember doing so in my components, btw).
          This issue is marked resolved already. So basically at the "final" state .

          Baptiste Mathus added a comment - abayer not sure what you mean: FWICT issues are generally not closed at least here (and I don't remember doing so in my components, btw). This issue is marked resolved already. So basically at the "final" state .

          Andrew Bayer added a comment -

          Augh, I buggered my filter and saw this as still open. Ignore me! =)

          Andrew Bayer added a comment - Augh, I buggered my filter and saw this as still open. Ignore me! =)

          Code changed in jenkins
          User: Jesse Glick
          Path:
          http://jenkins-ci.org/commit/workflow-support-plugin/d5480571368968e616fabf38455b333f3267cf35
          Log:
          Merge pull request #141 from jglick/kill-JENKINS-25550

          JENKINS-25550 Hard kill
          Originally-Committed-As: 5aca627c9f3c1d58c38c2ac765d4b430044e4433

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: http://jenkins-ci.org/commit/workflow-support-plugin/d5480571368968e616fabf38455b333f3267cf35 Log: Merge pull request #141 from jglick/kill- JENKINS-25550 JENKINS-25550 Hard kill Originally-Committed-As: 5aca627c9f3c1d58c38c2ac765d4b430044e4433

          Code changed in jenkins
          User: Jesse Glick
          Path:
          aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunTest.java
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-job-plugin/0e97bc55351122e2828572a755450863f74a343c
          Log:
          [FIXED JENKINS-25550] Hard kill.
          Originally-Committed-As: 60a0db70e7747d212632854deca1efb5e081cd8b

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowRunTest.java job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-job-plugin/0e97bc55351122e2828572a755450863f74a343c Log: [FIXED JENKINS-25550] Hard kill. Originally-Committed-As: 60a0db70e7747d212632854deca1efb5e081cd8b

          Code changed in jenkins
          User: Baptiste Mathus
          Path:
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-job-plugin/6be3f4df12bc23ce18b91c3ed00552b3b466ea5f
          Log:
          JENKINS-25550 Make it clearer it's a clickable link

          Might seem obvious but I've already had many people not clicking on
          the link thinking this was only something informational.

          Originally-Committed-As: fb2df1447467a940d0b60eaeca6ba102f594d7d6

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Baptiste Mathus Path: job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-job-plugin/6be3f4df12bc23ce18b91c3ed00552b3b466ea5f Log: JENKINS-25550 Make it clearer it's a clickable link Might seem obvious but I've already had many people not clicking on the link thinking this was only something informational. Originally-Committed-As: fb2df1447467a940d0b60eaeca6ba102f594d7d6

          Code changed in jenkins
          User: Jesse Glick
          Path:
          job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
          http://jenkins-ci.org/commit/workflow-job-plugin/43d73fbafd74fd91529f5e5cc28cb627f0af2ee9
          Log:
          Merge pull request #254 from batmat/clarify-clickability

          JENKINS-25550 Make it clearer it's a clickable link
          Originally-Committed-As: 13a467c07203b6fd5babc3e037ee964174f2529e

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-job-plugin/43d73fbafd74fd91529f5e5cc28cb627f0af2ee9 Log: Merge pull request #254 from batmat/clarify-clickability JENKINS-25550 Make it clearer it's a clickable link Originally-Committed-As: 13a467c07203b6fd5babc3e037ee964174f2529e

            kohsuke Kohsuke Kawaguchi
            jglick Jesse Glick
            Votes:
            12 Vote for this issue
            Watchers:
            31 Start watching this issue

              Created:
              Updated:
              Resolved: