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

Blue Ocean plugin can't handle two password parameter in declarative pipeline

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • blueocean-plugin
    • Jenkins Docker-Container (Java 11)
      Jenkins Version: 2.368
      Blue Ocean version: 1.25.7

      Hi,

      I'm developing the build-process-structure in my company and I encountered the following problem:

      When I declare two password parameters in one declarative pipeline-script and try to run this pipeline in the Blue Ocean GUI without any input, using only the default values, the pipeline won't start, when I press "Run".

      The first password input-field has somewhat of a placeholder string by default, the second password input field is empty by default. It looks something like this:

      Upload_Password: ************
      Release_Password: 

      When I type something into the second password's input-field, the pipeline runs.

      It seems like Blue Ocean expects at least one character to be in the input-field of the second password parameter to run the whole pipeline.
      If i delete the placeholder string from the first password's input-field and put a charater into the second password's input-field, the pipeline will still run

      Therefore I would narrow down the problem towards the second password's input-field, which is empty by default and seems to require at least one character as input-value to even start the pipeline.

      Maybe there can be a fix, where the second password parameter's input-value is also a placeholder-string by default, so the pipeline will be runnable from the Blue Ocean GUI.

      When I use the general Jenkins UI, i can always run the pipeline. This issue only affects the Blue Ocean UI.

      Here is a minimal pipeline script to recreate the issue:

      pipeline {
          agent none
          options {
              disableConcurrentBuilds()
              buildDiscarder(logRotator(numToKeepStr: '1'))
          }
          parameters {
              password(name: 'Upload_Password', description: '')
              password(name: 'Release_Password', description: '')
              
          }
          stages {
              stage('Test something') {
                  agent {
                      node {
                          label 'master'
                      }
                  }
                  steps {
                      echo "HELLO"
                  }
              }
          }
      } 

            Unassigned Unassigned
            fakoelobster Fabian König
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: