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

Lockable resources plugin doesn't assign resource if an env variable is used as label

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      Lockable Resource Plugin Version: 2.3

      I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

       

      pipeline {

      agent

      {   node

      { label 'centos_node' }

      }
      stages {
        stage("Setup") {
          steps {
            script

      {         env.NODE_LABEL = "pre_commit"       }

        }
      }
      stage ("Build") {

        options {
          lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
        }
        steps {
          script {
            sh "echo \"${env.NODELABEL}\""
          }

         }

      }

      }
      }

       

      Console Output :
       
      +refs/heads/master:refs/remotes/origin/master # timeout=10
      Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
      > git config core.sparsecheckout # timeout=10
      > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
      Commit message: "send slack for only master builds"
      > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on codereview1.eng.nutanix.com in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

      {[Pipeline] }

      [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
      Found 0 available resource(s). Waiting for correct amount: 1.
      [Label: null, Quantity: 1] is locked, waiting...
       

       

      A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource as label value is coming as null.

        Attachments

          Activity

          akansht Akansh Tayal created issue -
          akansht Akansh Tayal made changes -
          Field Original Value New Value
          Description Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          stage("Setup") { 

            env.NODE_LABEL = "pre_commit"

          }

          stage ("Build") {

            options {
              lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
            }

            sh "echo \"${env.NODELABEL}\""

          }

          }

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent {
            node \{ label 'centos_node' }
           }
           stages {
            stage("Setup") {
              steps {
                script {
                  env.NODE_LABEL = "pre_commit"
                }
            }
           }
           stage ("Build") {

            options {
              lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
            }
            steps {
              script {
                sh "echo \"${env.NODELABEL}\""
              }

             }

          }

          }
          }

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          akansht Akansh Tayal made changes -
          Description Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent {
            node \{ label 'centos_node' }
           }
           stages {
            stage("Setup") {
              steps {
                script {
                  env.NODE_LABEL = "pre_commit"
                }
            }
           }
           stage ("Build") {

            options {
              lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
            }
            steps {
              script {
                sh "echo \"${env.NODELABEL}\""
              }

             }

          }

          }
          }

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node \\{ label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          Console Output :
           
           +refs/heads/master:refs/remotes/origin/master # timeout=10
          Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
          Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline] {[Pipeline] }[Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
          Found 0 available resource(s). Waiting for correct amount: 1.
          [Label: null, Quantity: 1] is locked, waiting...
           

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          akansht Akansh Tayal made changes -
          Description Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node \\{ label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          Console Output :
           
           +refs/heads/master:refs/remotes/origin/master # timeout=10
          Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
          Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline] {[Pipeline] }[Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
          Found 0 available resource(s). Waiting for correct amount: 1.
          [Label: null, Quantity: 1] is locked, waiting...
           

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node

          { label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          *Console Output :*
            
           +refs/heads/master:refs/remotes/origin/master # timeout=10
           Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
           Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

          {[Pipeline] }

          [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
           Found 0 available resource(s). Waiting for correct amount: 1.
           [Label: null, Quantity: 1] is locked, waiting...
            

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          akansht Akansh Tayal made changes -
          Description Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node

          { label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(label: "${env.NODE_LABEL}", variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          *Console Output :*
            
           +refs/heads/master:refs/remotes/origin/master # timeout=10
           Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
           Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

          {[Pipeline] }

          [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
           Found 0 available resource(s). Waiting for correct amount: 1.
           [Label: null, Quantity: 1] is locked, waiting...
            

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node

          { label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(*label: "${env.NODE_LABEL}"*, variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          *Console Output :*
            
           +refs/heads/master:refs/remotes/origin/master # timeout=10
           Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
           Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

          {[Pipeline] }

          [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
           Found 0 available resource(s). Waiting for correct amount: 1.
           *[Label: null, Quantity: 1] is locked, waiting...*
            

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          akansht Akansh Tayal made changes -
          Description Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node

          { label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(*label: "${env.NODE_LABEL}"*, variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          *Console Output :*
            
           +refs/heads/master:refs/remotes/origin/master # timeout=10
           Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
           Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

          {[Pipeline] }

          [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
           Found 0 available resource(s). Waiting for correct amount: 1.
           *[Label: null, Quantity: 1] is locked, waiting...*
            

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource.
          Lockable Resource Plugin Version: 2.3

          I am trying to use env variable in label field and the resource doesn't get locked. The job gets struck infinitely waiting for the resource even though env variable is set.

           

          pipeline {

          agent

          {   node

          { label 'centos_node' }

          }
           stages {
             stage("Setup") {
               steps {
                 script

          {         env.NODE_LABEL = "pre_commit"       }

            }
           }
           stage ("Build") {

            options {
               lock(*label: "${env.NODE_LABEL}"*, variable: "NODELABEL", quantity: 1)
             }
             steps {
               script {
                 sh "echo \"${env.NODELABEL}\""
               }

             }

          }

          }
           }

           

          *Console Output :*
            
           +refs/heads/master:refs/remotes/origin/master # timeout=10
           Checking out Revision 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 (master)
           > git config core.sparsecheckout # timeout=10
           > git checkout -f 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10
           Commit message: "send slack for only master builds"
           > git rev-list --no-walk 9db4337fd2811d9ebce79f1761ef40a88ec16fb2 # timeout=10[Pipeline] nodeRunning on [codereview1.eng.nutanix.com|http://erdinger.eng.nutanix.com/computer/codereview1.eng.nutanix.com/] in /root/workspace/QA/test_lock[Pipeline] {[Pipeline] stage[Pipeline] { (Setup)[Pipeline] script[Pipeline]

          {[Pipeline] }

          [Pipeline] // script[Pipeline] }[Pipeline] // stage[Pipeline] stage[Pipeline] { (Build)[Pipeline] lockTrying to acquire lock on [Label: null, Quantity: 1]
           Found 0 available resource(s). Waiting for correct amount: 1.
           *[Label: null, Quantity: 1] is locked, waiting...*
            

           

          A lock should get acquired by resource with label 'pre_commit' but it is infinitely waiting for the resource as label value is coming as null.

            People

            • Assignee:
              Unassigned
              Reporter:
              akansht Akansh Tayal
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: