This is an automated email from the ASF dual-hosted git repository.

rantunes pushed a commit to branch main
in repository 
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-pipelines.git


The following commit(s) were added to refs/heads/main by this push:
     new 92c4018b Publish kogito-ci-build image in dockerhub Fix weekly Jenkins 
job (#1208)
92c4018b is described below

commit 92c4018bd8e857d1b431be873c115da058bfe50b
Author: Rodrigo Antunes <[email protected]>
AuthorDate: Wed Jun 19 11:37:12 2024 -0300

    Publish kogito-ci-build image in dockerhub Fix weekly Jenkins job (#1208)
---
 .ci/jenkins/Jenkinsfile.build-kogito-ci-image      |  6 +++---
 .../test/vars/CloudSpec.groovy                     | 25 ++++++++++++----------
 .../vars/cloud.groovy                              | 10 ++++++---
 3 files changed, 24 insertions(+), 17 deletions(-)

diff --git a/.ci/jenkins/Jenkinsfile.build-kogito-ci-image 
b/.ci/jenkins/Jenkinsfile.build-kogito-ci-image
index 8bd68cc3..3f42e212 100644
--- a/.ci/jenkins/Jenkinsfile.build-kogito-ci-image
+++ b/.ci/jenkins/Jenkinsfile.build-kogito-ci-image
@@ -12,7 +12,7 @@ pipeline {
     environment {
         DOCKER_CONFIG = "${WORKSPACE}/.docker"
 
-        IMAGE_NAME = 'quay.io/kiegroup/kogito-ci-build'
+        IMAGE_NAME = 'docker.io/apache/incubator-kie-kogito-ci-build'
         IMAGE_TAG = "${BRANCH_NAME}-build-${BUILD_NUMBER}"
         IMAGE_NAME_TAG = "${env.IMAGE_NAME}:${env.IMAGE_TAG}"
     }
@@ -29,7 +29,7 @@ pipeline {
 
                     currentBuild.displayName = env.IMAGE_TAG
 
-                    cloud.loginContainerRegistry('quay.io', 
'quay_kiegroup_registry_token')
+                    cloud.loginContainerRegistry('docker.io', 
'DOCKERHUB_USER', 'DOCKERHUB_TOKEN')
 
                     dir('kogito-pipelines') {
                         deleteDir()
@@ -54,7 +54,7 @@ pipeline {
                 always {
                     script {
                         sh "rm -rf ${DOCKER_CONFIG}"
-                        sh 'docker logout quay.io'
+                        sh 'docker logout docker.io'
                     }
                 }
             }
diff --git a/jenkins-pipeline-shared-libraries/test/vars/CloudSpec.groovy 
b/jenkins-pipeline-shared-libraries/test/vars/CloudSpec.groovy
index c23df847..82c1afb0 100644
--- a/jenkins-pipeline-shared-libraries/test/vars/CloudSpec.groovy
+++ b/jenkins-pipeline-shared-libraries/test/vars/CloudSpec.groovy
@@ -818,25 +818,29 @@ http = false
     def "[cloud.groovy] loginContainerRegistry default"() {
         setup:
         groovyScript.getBinding().setVariable("REGISTRY_USER", 'user')
-        groovyScript.getBinding().setVariable("REGISTRY_PWD", 'password')
+        groovyScript.getBinding().setVariable("REGISTRY_TOKEN", 'password')
         when:
-        groovyScript.loginContainerRegistry('REGISTRY', 'REGISTRY_CREDS_ID')
+        groovyScript.loginContainerRegistry('REGISTRY', 
'REGISTRY_USER_CREDS_ID', 'REGISTRY_TOKEN_CREDS_ID')
         then:
-        1 * getPipelineMock('usernamePassword.call')([credentialsId: 
'REGISTRY_CREDS_ID', usernameVariable: 'REGISTRY_USER', passwordVariable: 
'REGISTRY_PWD']) >> 'userNamePassword'
-        1 * getPipelineMock("withCredentials")(['userNamePassword'], _ as 
Closure)
-        1 * getPipelineMock("sh")("set +x && docker login -u user -p password  
REGISTRY")
+        1 * getPipelineMock('string.call')([credentialsId: 
'REGISTRY_USER_CREDS_ID', variable: 'REGISTRY_USER']) >> 'user'
+        1 * getPipelineMock("withCredentials")(['user'], _ as Closure)
+        1 * getPipelineMock('string.call')([credentialsId: 
'REGISTRY_TOKEN_CREDS_ID', variable: 'REGISTRY_TOKEN']) >> 'token'
+        1 * getPipelineMock("withCredentials")(['token'], _ as Closure)
+        1 * getPipelineMock("sh")("echo \"password\" | docker login -u 
\"user\" --password-stdin  REGISTRY")
     }
 
     def "[cloud.groovy] loginContainerRegistry with container engine and 
options"() {
         setup:
         groovyScript.getBinding().setVariable("REGISTRY_USER", 'user')
-        groovyScript.getBinding().setVariable("REGISTRY_PWD", 'password')
+        groovyScript.getBinding().setVariable("REGISTRY_TOKEN", 'password')
         when:
-        groovyScript.loginContainerRegistry('REGISTRY', 'REGISTRY_CREDS_ID', 
'podman', '--tls-verify=false')
+        groovyScript.loginContainerRegistry('REGISTRY', 
'REGISTRY_USER_CREDS_ID', 'REGISTRY_TOKEN_CREDS_ID', 'podman', 
'--tls-verify=false')
         then:
-        1 * getPipelineMock('usernamePassword.call')([credentialsId: 
'REGISTRY_CREDS_ID', usernameVariable: 'REGISTRY_USER', passwordVariable: 
'REGISTRY_PWD']) >> 'userNamePassword'
-        1 * getPipelineMock("withCredentials")(['userNamePassword'], _ as 
Closure)
-        1 * getPipelineMock("sh")("set +x && podman login -u user -p password 
--tls-verify=false REGISTRY")
+        1 * getPipelineMock('string.call')([credentialsId: 
'REGISTRY_USER_CREDS_ID', variable: 'REGISTRY_USER']) >> 'user'
+        1 * getPipelineMock("withCredentials")(['user'], _ as Closure)
+        1 * getPipelineMock('string.call')([credentialsId: 
'REGISTRY_TOKEN_CREDS_ID', variable: 'REGISTRY_TOKEN']) >> 'token'
+        1 * getPipelineMock("withCredentials")(['token'], _ as Closure)
+        1 * getPipelineMock("sh")("echo \"password\" | podman login -u 
\"user\" --password-stdin --tls-verify=false REGISTRY")
     }
 
     /////////////////////////////////////////////////////////////////////
@@ -951,4 +955,3 @@ http = false
         1 * getPipelineMock('sh')([script: "curl -H 'Content-type: 
application/json' -H 'Authorization: Bearer quaytoken' -X PUT --data-binary 
'@description.json' https://quay.io/api/v1/repository/namespace/repository";])
     }
 }
-
diff --git a/jenkins-pipeline-shared-libraries/vars/cloud.groovy 
b/jenkins-pipeline-shared-libraries/vars/cloud.groovy
index e6dc8c33..a690814d 100644
--- a/jenkins-pipeline-shared-libraries/vars/cloud.groovy
+++ b/jenkins-pipeline-shared-libraries/vars/cloud.groovy
@@ -82,9 +82,13 @@ String getOpenShiftRegistryURL() {
 /*
 * Login to a container registry
 */
-void loginContainerRegistry(String registry, String credsId, String 
containerEngine = 'docker', String containerEngineTlsOptions = '') {
-    withCredentials([usernamePassword(credentialsId: credsId, 
usernameVariable: 'REGISTRY_USER', passwordVariable: 'REGISTRY_PWD')]) {
-        sh "set +x && ${containerEngine} login -u ${REGISTRY_USER} -p 
${REGISTRY_PWD} ${containerEngineTlsOptions} ${registry}"
+void loginContainerRegistry(String registry, String userCredsId, String 
tokenCredsId, String containerEngine = 'docker', String 
containerEngineTlsOptions = '') {
+    withCredentials([string(credentialsId: userCredsId, variable: 
'REGISTRY_USER')]) {
+        withCredentials([string(credentialsId: tokenCredsId, variable: 
'REGISTRY_TOKEN')]) {
+            sh """
+            echo "${REGISTRY_TOKEN}" | ${containerEngine} login -u 
"${REGISTRY_USER}" --password-stdin ${containerEngineTlsOptions} ${registry}
+            """.trim()
+        }
     }
 }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to