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

Allow input timeout parameter

XMLWordPrintable

      I have been wondering for ages why is there no `timeout` option in the `input` step? I am aware you can wrap your input in a `timeout() {}`, but that is just impossible when you are using the `input` as part of the stage like so:

       

      pipeline {
          agent any
          stages {
              stage('Example') {
                  input {
                      message "Should we continue?"
                      ok "Yes, we should."
                      submitter "alice,bob"
                      parameters {
                          string(name: 'PERSON', defaultValue: 'Mr Jenkins', description: 'Who should I say hello to?')
                      }
                  }
                  steps {
                      echo "Hello, ${PERSON}, nice to meet you."
                  }
              }
          }
      }

       

      (Taken from https://jenkins.io/blog/2018/04/09/whats-in-declarative/#input)

       

      The possible "workaround" to this would be to create an `input` step in a previous stage which is wrapped in a `timeout` step, but in our case this makes things even more complicated and hard to read. 

      Are there any plans to include an `timeout` parameter for the `input` step? Maybe something like this (or better?):

       

      input { 
        message "Should we continue?" 
        ok "Yes, we should." 
        submitter "alice,bob" 
        timeout: [time: 1234, unit: 'MINUTES']
        parameters { 
          string(
            name: 'PERSON', 
            defaultValue: 'Mr Jenkins', 
            description: 'Who should I say hello to?'
          ) 
        }
      }

       

       

            Unassigned Unassigned
            stodorov Steve Todorov
            Votes:
            3 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: