Have you checked
https://wiki.jenkins-ci.org/display/JENKINS/My+software+builds+on+my+computer+but+not+on+Jenkins#MysoftwarebuildsonmycomputerbutnotonJenkins-Networkdrivemappings%28Windows%29

2012/6/14 Macpaul Lin <macp...@gmail.com>:
> Hi,
> I have another problem - which is almost the same problem of this issue
> about mkdir/open files on remote disk.
> Currently I'm using Jenkins ver. 1.467 with Windows XP 32bit.
> When I want to checkout source code to remote disk whether it is on MAC OS
> or Linux, I'll get mkdir fail.
> I'm very sure java.exe, jenkins.exe, git.exe, p4.exe are executing as my
> account in Windows XP.
> And this account has right to read/write/mkdir/delete the files and
> directories in the remote disk.
> It seems this problem exists a very long time.
>
> Started by user anonymous
> Building in workspace Z:\PC12010025
> java.io.IOException: Failed to mkdirs: Z:\PC12010025
>         at hudson.FilePath.mkdirs(FilePath.java:901)
>         at hudson.model.AbstractProject.checkout(AbstractProject.java:1216)
>         at
> hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:587)
>         at
> hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:476)
>         at hudson.model.Run.run(Run.java:1438)
>         at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
>         at
> hudson.model.ResourceController.execute(ResourceController.java:88)
>         at hudson.model.Executor.run(Executor.java:239)
> Finished: FAILURE
>
> There are other users encountered this problem like
> http://serverfault.com/questions/308774/how-to-make-hudson-write-to-remote-disk
>
> And the relative source code in Jenkins is:
>
>     /**
>
>       * Creates this directory.
>
>      */
>
>     public void mkdirs() throws IOException, InterruptedException {
>
>         if(!act(new FileCallable<Boolean>() {
>
>             public Boolean invoke(File f, VirtualChannel channel) throws
> IOException, InterruptedException {
>
>                 if(f.mkdirs() || f.exists())
>
>                     return true;    // OK
>
>
>                 // following Ant <mkdir> task to avoid possible race
> condition.
>
>                 Thread.sleep(10);
>
>
>                 return f.mkdirs() || f.exists();
>
>             }
>
>         }))
>
>             throw new IOException("Failed to mkdirs: "+remote);
>
>     }
>
>

Reply via email to