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

Launcher.isUnix uses master OS, not Slave OS

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Incomplete
    • Component/s: core
    • Labels:
      None
    • Environment:
      Platform: All, OS: All
    • Similar Issues:

      Description

      The code in the method Launcher.isUnix uses the jvm function return
      File.pathSeparatorChar==':'; to determine if this Launcher is a unix or a
      windows one. However this is executed on the master ONLY. Thus if the master and
      slave are of different OS types (Linux master and Windows Slave or vice versa)
      then this function will return the incorrect answer. Makes having a single
      master manage both windows and linux/unix slave impossible.

        Attachments

          Issue Links

            Activity

            Hide
            mdonohue mdonohue added a comment -

            Launcher is abstract. RemoteLauncher, a subclass of launcher, overrides the
            method isUnix() and provides the correct response for the remote machine.

            It would be perhaps better to make isUnix abstract as well, and move that
            implementation into LocalLauncher.

            Show
            mdonohue mdonohue added a comment - Launcher is abstract. RemoteLauncher, a subclass of launcher, overrides the method isUnix() and provides the correct response for the remote machine. It would be perhaps better to make isUnix abstract as well, and move that implementation into LocalLauncher.

              People

              • Assignee:
                Unassigned
                Reporter:
                martinfr62 martinfr62
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: