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

Powershell Pipeline Step hangs if capturing Stdout and output is null

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • durable-task-plugin
    • None
    • Jenkins 2.60.3
      Durable Task Plugin 1.14
      Windows Server 2012R2

    Description

      If the Powershell step is configured with 'returnStdout: true' and the script does not produce output, than [IO.File]::WriteAllLines fails when converting the temporaryOutput.txt, this causes the job to hang:

      [jaredtest] Running PowerShell script
      Cannot contact : java.nio.file.NoSuchFileException: D:\Jenkins-Windows\workspace\jaredtest@tmp\durable-4fe85a3b\output.txt
      

      Pipeline script to recreate:

      node{
        def output = powershell(returnStdout: true, script: '')
        echo output
      }
      

      Executing `powershellWrapper.ps1` directly in the workspace results in the following error:

      PS H:\> D:\Jenkins-Windows\workspace\jaredtest@tmp\durable-4fe85a3b\powershellWrapper.ps1
      Exception calling "WriteAllLines" with "2" argument(s): "Value cannot be null.
      Parameter name: contents"
      At D:\Jenkins-Windows\workspace\jaredtest@tmp\durable-4fe85a3b\powershellWrapper.ps1:1 char:585
      + ... utput.txt"; [IO.File]::WriteAllLines("D:\Jenkins-Windows\workspace\ja ...
      +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
          + FullyQualifiedErrorId : ArgumentNullException
      

      Attachments

        Issue Links

          Activity

            People

              gabloe Gabriel Loewen
              jakauppila Jared Kauppila
              Votes:
              4 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: