Jenkins pipeline manual step permission

Avner picture Avner · Aug 2, 2017 · Viewed 8.6k times · Source

In our existing CD pipeline there is a manual step to push from test to production. Furthermore only certain persons can authorise this. We control this through Jenkins freestyle jobs in views with certain users having permissions to different views.

Now we are thinking about using Jenkins pipelines. There is an input step for a user to manually approve the go ahead to the next stage.

Is there a way to control who can perform the manual input? Alternatively, is there an API for progressing the pipeline, in which case we could build the tooling to let relevant users have permission.

Research

  • This SO post suggests it's not possible to do the API call.
  • This Jenkins issue tells me there is no ability to resume a pipeline that is stopped because of a failure

So far it's looking like a resounding "NO" to authorisation of manual step and progressing via API. Any other ideas appreciated.

Answer

Kdawg picture Kdawg · Aug 2, 2017

From the documentation that you linked to, there's a submitter parameter where you can specify the allowed users/external groups allowed to respond to the input, which sounds like it should be what you're looking for.

submitter (optional)

User IDs and/or external group names of person or people permitted to respond to the input, separated by ','. If you configure "alice, bob", will match with "alice" but not with "bob". You need to remove all the white spaces.