• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core
    • None
    • Platform: All, OS: All

      I found to my annoyance than when running a project which uses a shell command,
      Hudson creates a hudson*sh file in the project workspace. This is not polite;
      the user expects that the workspace contains just the checkout and build
      products. Stray files can confuse scripts.

      Shell/BatchFile call FilePath.createTempFile. At first I thought to just delete
      this method and change e.g. Shell to say

      File script = null;
      // ...
      script = File.createTempFile("hudson","sh");
      script.deleteOnExit();
      Writer w = new FileWriter(script);
      // ...

      But then I noticed the line

      String[] cmd = new String[]

      { DESCRIPTOR.getShell(),"-xe",script.getRemote()}

      ;

      I have never used slaves and so I do not know the significance of the remote
      path here. Surely the hudson*sh file is not used from other machines? Can this
      simply be written (with File script) as

      String[] cmd = new String[]

      { DESCRIPTOR.getShell(),"-xe",script.getAbsolutePath()}

      ;

      without breaking remote builds?

          [JENKINS-183] Shell scripts add temp file to workspace

          Jesse Glick created issue -
          Kohsuke Kawaguchi made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]
          Andrew Bayer made changes -
          Status Original: Resolved [ 5 ] New: Closed [ 6 ]
          Jenkins IRC Bot made changes -
          Component/s New: core [ 15593 ]
          Component/s Original: www [ 15484 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 130256 ] New: JNJira + In-Review [ 199649 ]

            Unassigned Unassigned
            jglick Jesse Glick
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: