• Custom Tools Compatibility

      Add support for workflow

      Acceptance criteria from the plugin maintainer (oleg_nenashev

      • UsedCustomToolsAction RunAction2, which tracks the list of required tools
      • "Install custom tool" simple build step, which adds the tool to the scope of the task (AbstractProject or Pipeline's node() scope). Stores data in UsedCustomToolsAction. Pipeline alias - e.g. customTool()
      • Ability to contribute environment variables for launched scripts, likely with a new LauncherDecorator method (decorate(Launcher launcher, Job job, Node node) or so) - depends on JENKINS-TODO, can be done in a compatible way
      • Update the DecoratedLauncher implementation and to move it outside the BuildWrapper to the new LauncherDecorator
      • New DecoratedLauncher implementation pulls information about tools from UsedCustomToolsAction and then initializes it, similarly to what it does now with pulling from the Build Wrapper
      • Automatic test(s) for the common use-cases in Pipeline (see the requirements below)
      • Documentation, can be written in a new page within the GitHub repository (Wiki must die soon). This documentation should describe the logic and provide examples.

      Extra requirements:

      • The version engine is supported including the Tool Version parameter. Should be no problems with that, but needs testing
      • The resolution of variables in the step takes other Node and Job environment variables into account

      Nice2have, optional:

      • Some UI, which improves tracking of tool usage in UsedCustomToolsAction - really important for multi-log Pipeline
      • Support definition of tools on the global level (for all node() calls)
      • CustomToolsBuildWrapper is reworked to the SimpleBuildWrapper
        • oleg_nenashev: Not really required if there is a buildStep described above
      • Common tool() step is able to invoke the customTool() logic somehow.

       

          [JENKINS-30680] Make Custom Tools compatible with Pipeline

          Nigel Harniman created issue -
          Patrick Wolf made changes -
          Epic Link New: JENKINS-34657 [ 170293 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 165797 ] New: JNJira + In-Review [ 182148 ]
          Oleg Nenashev made changes -
          Link New: This issue is duplicated by JENKINS-37413 [ JENKINS-37413 ]
          Andrew Bayer made changes -
          Labels Original: workflow New: pipeline workflow
          Andrew Bayer made changes -
          Labels Original: pipeline workflow New: pipeline
          Oleg Nenashev made changes -
          Summary Original: Make CustomToolInstallWrapper compatible with workflow New: Make CustomToolInstallWrapper compatible with Pipeline
          Oleg Nenashev made changes -
          Issue Type Original: Bug [ 1 ] New: New Feature [ 2 ]
          Oleg Nenashev made changes -
          Summary Original: Make CustomToolInstallWrapper compatible with Pipeline New: Make Custom Tools compatible with Pipeline
          Oleg Nenashev made changes -
          Issue Type Original: New Feature [ 2 ] New: Epic [ 10001 ]
          Oleg Nenashev made changes -
          Epic Link Original: JENKINS-34657 [ 170293 ]

            Unassigned Unassigned
            nharniman Nigel Harniman
            Votes:
            21 Vote for this issue
            Watchers:
            32 Start watching this issue

              Created:
              Updated: