Our job have a post build step which to clean up the workspace. When a build is cancelled by Zuul, the post build scripts do not run which leave the workspace on the agent as is consuming needless disk space.
An example build is https://integration.wikimedia.org/ci/job/mwext-node12-rundoc-docker/10357/
```lines=25
<s> [webpack.Progress] 68% building 900/931 modules 31 active /src/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/lodash/_baseIteratee.js
Build was aborted
Aborted by anonymous
Archiving artifacts
[PostBuildScript] - [INFO] Executing post build scripts.
[PostBuildScript] - [INFO] Build does not have any of the results [SUCCESS]. Did not execute build step #0.
[PostBuildScript] - [INFO] Executing post build scripts.
[mwext-node12-rundoc-docker@2] $ /bin/bash -xe /tmp/jenkins18287764908602004871.sh
+ echo 'Clearing /srv/jenkins/workspace/workspace/mwext-node12-rundoc-docker@2/cache'
Clearing /srv/jenkins/workspace/workspace/mwext-node12-rundoc-docker@2/cache
[mwext-node12-rundoc-docker@2] $ /bin/bash /tmp/jenkins7304893211906477564.sh
+ set -o pipefail
++ pwd
+ exec docker run --volume /srv/jenkins/workspace/workspace/mwext-node12-rundoc-docker@2/cache:/cache --security-opt seccomp=unconfined --init --rm --label jenkins.job=mwext-node12-rundoc-docker --label jenkins.build=10357 --env-file /dev/fd/63 docker-registry.wikimedia.org/releng/castor:0.2.4 clear
++ /usr/bin/env
++ egrep -v '^(HOME|SHELL|PATH|LOGNAME|MAIL)='
[PostBuildScript] - [ERROR] An error occured during post-build processing.
org.jenkinsci.plugins.postbuildscript.PostBuildScriptException: java.lang.InterruptedException
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:190)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processScripts(Processor.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:79)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:73)
at org.jenkinsci.plugins.postbuildscript.PostBuildScript.perform(PostBuildScript.java:116)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:806)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:755)
at hudson.model.Build$BuildExecution.post2(Build.java:178)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:699)
at hudson.model.Run.execute(Run.java:1913)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:99)
at hudson.model.Executor.run(Executor.java:432)
Caused by: java.lang.InterruptedException
at java.base/java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:177)
at hudson.remoting.Channel.call(Channel.java:1000)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:286)
at com.sun.proxy.$Proxy91.join(Unknown Source)
at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:1199)
at hudson.tasks.CommandInterpreter.join(CommandInterpreter.java:194)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:144)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:180)
... 13 more
Build step 'Execute scripts' marked build as failure
[PostBuildScript] - [INFO] Executing post build scripts.
[mwext-node12-rundoc-docker@2] $ /bin/bash -xe /tmp/jenkins7460517696265297304.sh
+ set -euxo pipefail
+ docker ps -q --filter label=jenkins.job=mwext-node12-rundoc-docker --filter label=jenkins.build=10357
+ xargs --no-run-if-empty docker stop
FATAL: Unable to delete script file /tmp/jenkins7460517696265297304.sh
java.lang.InterruptedException
at java.base/java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:177)
at hudson.remoting.Channel.call(Channel.java:1000)
at hudson.FilePath.act(FilePath.java:1165)
at hudson.FilePath.act(FilePath.java:1154)
at hudson.FilePath.delete(FilePath.java:1681)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:162)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:180)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processScripts(Processor.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:79)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:73)
at org.jenkinsci.plugins.postbuildscript.PostBuildScript.perform(PostBuildScript.java:116)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:806)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:755)
at hudson.model.Build$BuildExecution.post2(Build.java:178)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:699)
at hudson.model.Run.execute(Run.java:1913)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:99)
at hudson.model.Executor.run(Executor.java:432)
[PostBuildScript] - [ERROR] An error occured during post-build processing.
org.jenkinsci.plugins.postbuildscript.PostBuildScriptException: java.lang.InterruptedException
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:190)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processScripts(Processor.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:79)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:73)
at org.jenkinsci.plugins.postbuildscript.PostBuildScript.perform(PostBuildScript.java:116)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:806)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:755)
at hudson.model.Build$BuildExecution.post2(Build.java:178)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:699)
at hudson.model.Run.execute(Run.java:1913)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:99)
at hudson.model.Executor.run(Executor.java:432)
Caused by: java.lang.InterruptedException
at java.base/java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:177)
at hudson.remoting.Channel.call(Channel.java:1000)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:286)
at com.sun.proxy.$Proxy91.join(Unknown Source)
at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:1199)
at hudson.tasks.CommandInterpreter.join(CommandInterpreter.java:194)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:144)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:180)
... 13 more
Build step 'Execute scripts' marked build as failure
[PostBuildScript] - [INFO] Executing post build scripts.
xargs: docker: terminated by signal 15
[PostBuildScript] - [ERROR] An error occured during post-build processing.
org.jenkinsci.plugins.postbuildscript.PostBuildScriptException: java.lang.InterruptedException
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:190)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processScripts(Processor.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:79)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.process(Processor.java:73)
at org.jenkinsci.plugins.postbuildscript.PostBuildScript.perform(PostBuildScript.java:116)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:806)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:755)
at hudson.model.Build$BuildExecution.post2(Build.java:178)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:699)
at hudson.model.Run.execute(Run.java:1913)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:99)
at hudson.model.Executor.run(Executor.java:432)
Caused by: java.lang.InterruptedException
at java.base/java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:177)
at hudson.remoting.Channel.call(Channel.java:1000)
at hudson.FilePath.act(FilePath.java:1165)
at hudson.FilePath.act(FilePath.java:1154)
at hudson.FilePath.createTextTempFile(FilePath.java:1580)
at hudson.tasks.CommandInterpreter.createScriptFile(CommandInterpreter.java:201)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:119)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:91)
at org.jenkinsci.plugins.postbuildscript.processor.Processor.processBuildSteps(Processor.java:180)
... 13 more
Build step 'Execute scripts' marked build as failure
<s> [webpack.Progress] 67% building 900/932 modules 32 active /src/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/lodash/_assocIndexOf.js
<s> [webpack.Progress] 68% building 901/932 modules 31 active /src/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/lodash/_assocIndexOf.js
<s> [webpack.Progress] 68% building 902/932 modules 30 active /src/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/lodash/_assocIndexOf.js
Finished: ABORTED
```