Uploaded image for project: 'Pentaho Data Integration - Kettle'
  1. Pentaho Data Integration - Kettle
  2. PDI-12176

"Execute a shell script" job fails with "No such file or directory" (when developed on Windows, executed on Linux)

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Severity: Urgent
    • Resolution: Fixed
    • Affects Version/s: 5.0.0 GA (5.0.0 GA Suite Release)
    • Fix Version/s: 6.0.0 GA
    • Component/s: Job Entry
    • Labels:
      None
    • PDI Sub-component:
    • Notice:
      When an issue is open, the "Fix Version/s" field conveys a target, not necessarily a commitment. When an issue is closed, the "Fix Version/s" field conveys the version that the issue was fixed in.
    • Sprint Team:
      Maintenance

      Description

      Environment:

      Windows 7 spoon client
      Ubuntu 12.10 VM running DI Server

      I have a simple job using the shell step which echoes the date into a text file.

      This script is entered directly into the "Script" tab and the "Insert script" box is
      checked. The working directory is set to /tmp/.

      The target text file is on the Ubuntu VM and permissions are set to 777. It is owned
      by the same user that runs the DI server process.

      The same user name owns and runs the spoon process on the Windows machine.

      When trying to do the following the job fails as it can't create or find the temporary
      file:

      • Scheduling from spoon on the windows client when connected to the Ubuntu DI repository
      • Running or scheduling from spoon on the Ubuntu VM directly (whether connected to the DI repository or not)

      2014/04/29 10:49:20 - run shell script - ERROR (version 5.0.5, build 1 from 2014-03-21_17-56-23 by buildguy) :
      Error running shell [] : java.io.IOException: Cannot run program "/tmp/kettle_89b1c08f-cf83-11e3-8d6b-4f1f323c7e0ashell" (in directory "/tmp"): error=2, No such file or directory

      However, if the shebang is removed from the script tab ("#!/bin/bash") the job
      runs successfully in both scenarios.

      If a script is created on the Ubuntu VM (with shebang) and referred to from the step in the
      "Script file name" field then this works fine in all instances.

      The DI Server user account can create files in /tmp/ without any problems. I have tried
      changing the working directory to the DI server owner's home directory as well (with
      permissions set to 777) and the same error occurred.

      See ESR-3763 for the attachments

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                AKarneichyk Alena Karneichyk (Inactive)
                Reporter:
                mburgess Matt Burgess (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 9h
                  9h