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

Cannot issue STAF command on Slave when Master is a different platform

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • staf-plugin
    • None

      We are launching slaves on unix machines via SSH (using the Jenkins SSH Slaves plugin). The Jenkins master is running on Windows and we have a mix of unix and Windows slaves. For the unix slaves, LD_LIBRARY_PATH and DYLD_LIBRARY_PATH are not set up properly. Looking at the source, the problem is in STAFInstallation.java. The method getLibraryDir() calls Hudson.isWindows() which runs on the master, not on the slave. This is also a problem for getJStafJarFile().

      Error info on Linux (also fails against Mac slave):

      Building remotely on zzz-test-machine in workspace /home/user/workspace/ZZZ-playground
      [ZZZ-playground] $ /usr/local/staf/bin/STAF machine.name ping ping
      /usr/local/staf/bin/STAF: error while loading shared libraries: libSTAF.so: cannot open shared object file: No such file or directory
      FATAL: The return code of the STAF call was 127, not 0
      Build step 'Software Testing Automation Framework (STAF)' marked build as failure
      Finished: FAILURE

            Unassigned Unassigned
            jeksmith John Smith
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: