ComposedClosure not working with List.each

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      The following Pipeline code does not yield the expected result.

      def xs = ['1', '2', '3']
      def fix = { it + '-webapp' } >> { echo "ha ${it}" }
      echo "${fix('foobar')}" // works
      xs.each { echo "${it}" } // works
      xs.each fix // fails
      

      Results in the following output:

      [Pipeline] echo
      foobar-webapp
      [Pipeline] echo
      1
      [Pipeline] echo
      2
      [Pipeline] echo
      3
      [Pipeline] End of Pipeline
      Finished: SUCCESS
      

      So calling the ComposedClosure works, calling each with a simple Closure works, but calling each with the ComposedClosure does not work.

      The expected result is that calling each with the ComposedClosure yields:

      [Pipeline] echo
      1-webapp
      [Pipeline] echo
      2-webapp
      [Pipeline] echo
      3-webapp
      

            Assignee:
            Unassigned
            Reporter:
            Philipp Moeller
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: