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

Decorated Launcher Does Not Maintain "isUnix" for RemoteLauncher

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Component/s: core
    • Environment:
      Reproducible with Windows master, Linux slaves
    • Similar Issues:

      Description

      RemoteLauncher's isUnix attribute is supplied on construction for slaves. However, when the RemoteLauncher is passed through decorateByEnv, because the anonymous class created in this method does not override isUnix, it delegates back to the base Launcher's File.pathSeparatorChar==':' check. The value for the slave passed into RemoteLauncher on construction is lost. A similar problem occurs with decorateByPrefix.

      This will cause a problem if any downstream logic depends on the Launcher's isUnix value for a process launched on a slave with a different isUnix value than the master. For example, with a Windows master and a Linux slave, the wrong file path separator is selected in a regex on the history output, and so the SCM polling does not accurately pick up changes.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                tslantz Timothy Lantz
                Reporter:
                tslantz Timothy Lantz
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: