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

Docker Pipeline Plugin withRegistry and Authorize Plugin fails to get credentialsId

    • docker-workflow 1.18

      When using the Authorization Project plugin and using "Run as Specific User" or "Run as User Who Triggered Build" authorize strategy and the following pipeline code:

      node {
        // success
        withCredentials([usernameColonPassword(credentialsId: '$CredentialsID', variable: 'USERPASS')]) {
          println "${USERPASS}"
        }
      
        //failure
        docker.withRegistry('$Url:$Port', '$CredentialsID') {
          def dockerImage = docker.image('$dockerImageID)
          dockerImage.push('test')
        }
      }
      

      We get an error at the docker.withRegistry step:

      ERROR: Could not find credentials matching bonjwa-docker-artl
      

      Note that the previous step withCredentials is successful.

          [JENKINS-48437] Docker Pipeline Plugin withRegistry and Authorize Plugin fails to get credentialsId

          James Sweet created issue -
          James Sweet made changes -
          Description Original: When using the Authorization Project plugin and using "Run as Specific User" or "Run as User Who Triggered Build" authorize strategy and the following pipeline code:

          node {
          // success
          withCredentials([usernameColonPassword(credentialsId: '$CredentialsID', variable: 'USERPASS')]) {
          println "${USERPASS}"
          }

          //failure
          docker.withRegistry('$Url:$Port', '$CredentialsID') {
          def dockerImage = docker.image('e0523c97836a')
          dockerImage.push('test')
          }
          }

          We get an error at the docker.withRegistry step:
          ERROR: Could not find credentials matching bonjwa-docker-artl

          Note that the previous step withCredentials is successful.
          New: When using the Authorization Project plugin and using "Run as Specific User" or "Run as User Who Triggered Build" authorize strategy and the following pipeline code:

          node {
          // success
          withCredentials([usernameColonPassword(credentialsId: '$CredentialsID', variable: 'USERPASS')]) {
          println "${USERPASS}"
          }

          //failure
          docker.withRegistry('$Url:$Port', '$CredentialsID') {
          def dockerImage = docker.image('$dockerImageID)
          dockerImage.push('test')
          }
          }

          We get an error at the docker.withRegistry step:
          ERROR: Could not find credentials matching bonjwa-docker-artl

          Note that the previous step withCredentials is successful.
          Allan BURDAJEWICZ made changes -
          Remote Link New: This issue links to "docker-commons PR#68 (Web Link)" [ 20335 ]

          Allan BURDAJEWICZ added a comment - Proposed a PR https://github.com/jenkinsci/docker-commons-plugin/pull/68
          Allan BURDAJEWICZ made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Allan BURDAJEWICZ made changes -
          Assignee New: Allan BURDAJEWICZ [ allan_burdajewicz ]
          Jesse Glick made changes -
          Status Original: In Progress [ 3 ] New: In Review [ 10005 ]
          Jesse Glick made changes -
          Description Original: When using the Authorization Project plugin and using "Run as Specific User" or "Run as User Who Triggered Build" authorize strategy and the following pipeline code:

          node {
          // success
          withCredentials([usernameColonPassword(credentialsId: '$CredentialsID', variable: 'USERPASS')]) {
          println "${USERPASS}"
          }

          //failure
          docker.withRegistry('$Url:$Port', '$CredentialsID') {
          def dockerImage = docker.image('$dockerImageID)
          dockerImage.push('test')
          }
          }

          We get an error at the docker.withRegistry step:
          ERROR: Could not find credentials matching bonjwa-docker-artl

          Note that the previous step withCredentials is successful.
          New: When using the Authorization Project plugin and using "Run as Specific User" or "Run as User Who Triggered Build" authorize strategy and the following pipeline code:

          {code}
          node {
            // success
            withCredentials([usernameColonPassword(credentialsId: '$CredentialsID', variable: 'USERPASS')]) {
              println "${USERPASS}"
            }

            //failure
            docker.withRegistry('$Url:$Port', '$CredentialsID') {
              def dockerImage = docker.image('$dockerImageID)
              dockerImage.push('test')
            }
          }
          {code}

          We get an error at the docker.withRegistry step:

          {code:none}
          ERROR: Could not find credentials matching bonjwa-docker-artl
          {code}

          Note that the previous step {{withCredentials}} is successful.

          Jesse Glick added a comment -

          And where are these credentials defined—global, folder, or user store? What is $CredentialsID supposed to be—that actual syntax, or a placeholder for some constant? Steps to reproduce from scratch?

          Jesse Glick added a comment - And where are these credentials defined—global, folder, or user store? What is $CredentialsID supposed to be—that actual syntax, or a placeholder for some constant? Steps to reproduce from scratch?

          Jon B added a comment -

          I'm seeing this error too but I'm not 100% sure if its the same exact problem or not. In my case, I a using the aws credentials plugin in order to leverage the fact my ec2 hosts have an AWS role assigned to them. I fill out the credential with the correct role and then I save it in the global credential namespace, and then when i try it use it, I get:

          ERROR: Could not find credentials matching JENKINS_SLAVE_AWS_ROLE

          Jon B added a comment - I'm seeing this error too but I'm not 100% sure if its the same exact problem or not. In my case, I a using the aws credentials plugin in order to leverage the fact my ec2 hosts have an AWS role assigned to them. I fill out the credential with the correct role and then I save it in the global credential namespace, and then when i try it use it, I get: ERROR: Could not find credentials matching JENKINS_SLAVE_AWS_ROLE

            allan_burdajewicz Allan BURDAJEWICZ
            jtsweet James Sweet
            Votes:
            3 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: