Currently sh has no meaningful return value, and throws an exception if the exit status is not zero. Would be nice to have an option to have it return the exit code (zero or not) as an integer value:

      def r = sh script: 'someCommand', returnStatus: true
      

      Current workaround:

      sh 'someCommand; echo $? > status'
      def r = readFile('status').trim()
      

      Or to have it return its standard output (akin to shell backticks):

      def lines = sh(script: 'dumpStuff.sh', returnStdout: true).split("\r?\n")
      

      Workaround:

      sh 'dumpStuff.sh > result'
      def lines = readFile('result').split("\r?\n")
      

      Or to have it take something on standard input:

      sh script: 'loadStuff.sh', stdin: someText
      

      Workaround:

      writeFile file: 'input', text: someText
      sh 'loadStuff.sh < input'
      

      Probably requires some API changes in durable-task.

          [JENKINS-26133] Shell script taking/returning output/status

          Jesse Glick created issue -
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-26812 [ JENKINS-26812 ]
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-28302 [ JENKINS-28302 ]
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-29877 [ JENKINS-29877 ]
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-27152 [ JENKINS-27152 ]
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-33173 [ JENKINS-33173 ]
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-34331 [ JENKINS-34331 ]
          Jesse Glick made changes -
          Link Original: This issue is related to JENKINS-34331 [ JENKINS-34331 ]
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-34331 [ JENKINS-34331 ]
          Patrick Wolf made changes -
          Labels Original: api New: api followup
          Jesse Glick made changes -
          Epic Link New: JENKINS-35394 [ 171187 ]

            jglick Jesse Glick
            jglick Jesse Glick
            Votes:
            50 Vote for this issue
            Watchers:
            65 Start watching this issue

              Created:
              Updated:
              Resolved: