Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-22960

ENOENT while trying to consume artifacts from a build (build is complete but not finalized)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • build-flow-plugin
    • None
    • centos 6.4 64bit
      jenkins LTS
      build-flow 0.10

      ------ snip ------
      Schedule job Core_Builds ? core.builder
      Build Core_Builds ? core.builder #28188 started
      Core_Builds ? core.builder #28188 completed
      Copying artifacts from Core_Builds/core.builder #28188.
      ERROR: Failed to run DSL Script
      hudson.util.IOException2: hudson.os.PosixException: native error calling stat: No such file or directory /jenkins_data/workspace/Core_Builds/core.builder/build/dist/release/bulletin-550.xml ENOENT
      at hudson.FilePath.copyRecursiveTo(FilePath.java:1994)
      at jenkins.model.StandardArtifactManager.archive(StandardArtifactManager.java:57)
      at jenkins.model.StandardArtifactManager$archive.call(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
      at jenkins.model.StandardArtifactManager$archive.call(Unknown Source)
      at org.jenkinsci.plugins.buildflow.toolbox.BuildFlowToolboxDSL.slurpArtifacts(BuildFlowToolboxDSL.groovy:46)
      at org.jenkinsci.plugins.buildflow.toolbox.BuildFlowToolboxDSL$slurpArtifacts.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 Script1.run(Script1.groovy:6)
      at Script1$run.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:112)
      at com.cloudbees.plugins.flow.FlowDSL.executeFlowScript(FlowDSL.groovy:82)
      at com.cloudbees.plugins.flow.FlowRun$RunnerImpl.doRun(FlowRun.java:154)
      at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:566)
      at hudson.model.Run.execute(Run.java:1665)
      at hudson.model.Run.run(Run.java:1612)
      at com.cloudbees.plugins.flow.FlowRun.run(FlowRun.java:133)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:246)
      at hudson.model.OneOffExecutor.run(OneOffExecutor.java:66)
      Caused by: java.util.concurrent.ExecutionException: hudson.os.PosixException: native error calling stat: No such file or directory /jenkins_data/workspace/Core_Builds/core.builder/build/dist/release/bulletin-550.xml ENOENT
      at hudson.remoting.Channel$3.adapt(Channel.java:755)
      at hudson.remoting.Channel$3.adapt(Channel.java:750)
      at hudson.remoting.FutureAdapter.get(FutureAdapter.java:55)
      at hudson.FilePath.copyRecursiveTo(FilePath.java:1992)
      ... 23 more

      ------ snip ------

      Here is my job's DSL:
      ------ snip ------
      // build core.builder with same params.
      child = build(params, "core.builder")
      // save artifacts
      toolbox = extension.'build-flow-toolbox'
      toolbox.slurpArtifacts(child)
      ------ snip ------

      Here is what I'm guessing is happening.

      1. build child is started
      2. waitForCompletion()
      3. build child completes (onCompleted() fires)
      4. slurpArtifacts()
      5. build child gets finalized (onFinalized() fires)

      Step 4 fails because artifacts are not on disk.

            ndeloof Nicolas De Loof
            dnozay Damien Nozay
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: