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


      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 stuck 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.

            Unassigned Unassigned
            akansht Akansh Tayal
            3 Vote for this issue
            4 Start watching this issue