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

After cleaning approved script list, the previously approved scripts do not reappear

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • * Jenkins 1.651.3
      * Envinject Plugin 2.0
      * Script Security Plugin 1.27

      Use case:
       

      1. We have a job containing a script that needs to be approved using the In-process Script Approval screen.
      2. We approve the script and we are able to execute the job without further problems.
      3. If we clear the approvals using the Script approval screen and we try to run the job that used it, it will fail (as expected)
      4. But we are not able to see the previously approved script among the pending scripts.
        1. If the job is in the Jenkins root, you can make the script appear again among the pending for approval script list if you go to manage Jenkins and click reload configuration from disk.
        2. If the job is inside a folder, the script will not appear as pending unless you restart Jenkins.

       
      It does not seem an expected behavior.
       
      For the test, we have been using:

      • Jenkins 1.651.3
      • Envinject Plugin 2.0 
      • Script Security Plugin 1.27
      • Used a freestyle job, that includes a boolean parameter defined by a groovy script:

               if (BOOLEAN_PARAM=="false") {
                  def map = [KEY: true]
                  return map
              }
       
      The job then uses the param in a very simple way:
       
          echo "Hello World."
          echo “Parameter Passed = $BOOLEAN_PARAM"
          echo "KEY = $KEY"

          [JENKINS-43722] After cleaning approved script list, the previously approved scripts do not reappear

          Manuel Cardenas created issue -
          Manuel Cardenas made changes -
          Description Original: Use case:
           
           # We have a job containing a script that needs to be approved using the Script approval screen.
           # We approve the script and we are able to execute the job without further problems.
           # If we clear the approvals using the Script approval screen and we try to run the job that used it, it will fail (as expected)
           # But we are not able to see the previously approved script among the pending scripts.
           #
           ## If the job is in the Jenkins root, you can make the script appear again among the pending for approval script list if you go to manage Jenkins and click reload configuration from disk.
           ## If the job is inside a folder, the script will not appear as pending unless you restart Jenkins.

           
          It does not seem an expected behavior.
           
          For the test, we have been using:
           * Jenkins 1.651.3
           * Envinject Plugin 2.0 
           * Script Security Plugin 1.27
           * Used a freestyle job, that includes a boolean parameter defined by a groovy script:

                   if (BOOLEAN_PARAM=="false") \{
                      def map = [KEY: true]
                      return map
                  }
           
          The job then uses the param in a very simple way:
           
              echo "Hello World."
              echo “Parameter Passed = $BOOLEAN_PARAM"
              echo "KEY = $KEY"
          New: Use case:
            
           # We have a job containing a script that needs to be approved using the In-process Script Approval screen.
           # We approve the script and we are able to execute the job without further problems.
           # If we clear the approvals using the Script approval screen and we try to run the job that used it, it will fail (as expected)
           # But we are not able to see the previously approved script among the pending scripts.
           #
           ## If the job is in the Jenkins root, you can make the script appear again among the pending for approval script list if you go to manage Jenkins and click reload configuration from disk.
           ## If the job is inside a folder, the script will not appear as pending unless you restart Jenkins.

           
           It does not seem an expected behavior.
            
           For the test, we have been using:
           * Jenkins 1.651.3
           * Envinject Plugin 2.0 
           * Script Security Plugin 1.27
           * Used a freestyle job, that includes a boolean parameter defined by a groovy script:

                   if (BOOLEAN_PARAM=="false") \{
                       def map = [KEY: true]
                       return map
                   }
            
           The job then uses the param in a very simple way:
            
               echo "Hello World."
               echo “Parameter Passed = $BOOLEAN_PARAM"
               echo "KEY = $KEY"
          Oleg Nenashev made changes -
          Assignee Original: Oleg Nenashev [ oleg_nenashev ]
          CloudBees Inc. made changes -
          Remote Link New: This issue links to "CloudBees Internal CD-190 (Web Link)" [ 19018 ]

            Unassigned Unassigned
            mcardenasblanco Manuel Cardenas
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated: