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

Ability to mark a SimpleBuildStep as not requiring a workspace context

    Details

    • Similar Issues:

      Description

      Currently SimpleBuildStep expects to be passed a valid FilePath workspace, limiting its use in Pipelines to step appearing inside a node block. This is because BuildStep historically ran in an AbstractBuild which always has a workspace. But there are many build steps, especially Publisher but sometimes also Builder, which do not actually use the workspace (or node) at all, and these are needlessly blocked from being used outside a node block.

      Would be useful to have a SimpleBuildStepDescriptor defining a method which would allow an implementation to declare that the workspace and launcher parameters to perform may be null. CoreStep would then be able to run in any context, passing those parameters only if the StepContext defined them.

      SimpleBuildWrapper could potentially benefit from a similar API. This would have been useful for TimestamperBuildWrapper, avoiding the need for a separate TimestamperStep.

        Attachments

          Activity

          Hide
          jglick Jesse Glick added a comment -

          If SimpleBuildWrapper is updated, then this code should also be expanded to permit such wrappers to be used in Declarative options blocks.

          Show
          jglick Jesse Glick added a comment - If SimpleBuildWrapper is updated, then this code should also be expanded to permit such wrappers to be used in Declarative options blocks.

            People

            • Assignee:
              Unassigned
              Reporter:
              jglick Jesse Glick
            • Votes:
              2 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: