-
Epic
-
Resolution: Unresolved
-
Major
-
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.
- oleg_nenashev: Not sure if it is doable without new core APIs
- is duplicated by
-
JENKINS-37413 Custom tools plugin is not compatiable with new pipeline plugin
- Closed
- relates to
-
JENKINS-44690 Most Important Pipeline compatibility
- Resolved