diff --git a/build/ci/jenkins/PublishImages.groovy b/build/ci/jenkins/PublishImages.groovy index 8111f23a66..09ee6007dc 100644 --- a/build/ci/jenkins/PublishImages.groovy +++ b/build/ci/jenkins/PublishImages.groovy @@ -27,42 +27,67 @@ pipeline { } stages { - stage('Publish Milvus Images') { - steps { - container('main') { - script { - sh './build/set_docker_mirror.sh' - sh "build/builder.sh /bin/bash -c \"make install\"" + stage('Publish Milvus Images & Build Centos Milvus'){ + parallel { + stage('Publish Milvus Images') { + steps { + container('main') { + script { + sh './build/set_docker_mirror.sh' + sh "build/builder.sh /bin/bash -c \"make install\"" - def date = sh(returnStdout: true, script: 'date +%Y%m%d').trim() - def gitShortCommit = sh(returnStdout: true, script: 'git rev-parse --short HEAD').trim() + def date = sh(returnStdout: true, script: 'date +%Y%m%d').trim() + def gitShortCommit = sh(returnStdout: true, script: 'git rev-parse --short HEAD').trim() - withCredentials([usernamePassword(credentialsId: "${env.DOCKER_CREDENTIALS_ID}", usernameVariable: 'DOCKER_USERNAME', passwordVariable: 'DOCKER_PASSWORD')]) { - sh 'docker login -u ${DOCKER_USERNAME} -p ${DOCKER_PASSWORD}' - sh """ - export MILVUS_IMAGE_REPO="${env.TARGET_REPO}/milvus-dev" - export MILVUS_HARBOR_IMAGE_REPO="${env.HARBOR_REPO}/milvus/milvus" - export MILVUS_IMAGE_TAG="${env.BRANCH_NAME}-${date}-${gitShortCommit}" - build/build_image.sh - docker push \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} - docker tag \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} \${MILVUS_IMAGE_REPO}:${env.BRANCH_NAME}-latest - docker tag \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} \${MILVUS_HARBOR_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} - docker push \${MILVUS_IMAGE_REPO}:${env.BRANCH_NAME}-latest - docker logout - """ - } + withCredentials([usernamePassword(credentialsId: "${env.DOCKER_CREDENTIALS_ID}", usernameVariable: 'DOCKER_USERNAME', passwordVariable: 'DOCKER_PASSWORD')]) { + sh 'docker login -u ${DOCKER_USERNAME} -p ${DOCKER_PASSWORD}' + sh """ + export MILVUS_IMAGE_REPO="${env.TARGET_REPO}/milvus-dev" + export MILVUS_HARBOR_IMAGE_REPO="${env.HARBOR_REPO}/milvus/milvus" + export MILVUS_IMAGE_TAG="${env.BRANCH_NAME}-${date}-${gitShortCommit}" + build/build_image.sh + docker push \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} + docker tag \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} \${MILVUS_IMAGE_REPO}:${env.BRANCH_NAME}-latest + docker tag \${MILVUS_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} \${MILVUS_HARBOR_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} + docker push \${MILVUS_IMAGE_REPO}:${env.BRANCH_NAME}-latest + docker logout + """ + } - withCredentials([usernamePassword(credentialsId: "${env.CI_DOCKER_CREDENTIAL_ID}", usernameVariable: 'CI_REGISTRY_USERNAME', passwordVariable: 'CI_REGISTRY_PASSWORD')]){ - sh "docker login ${env.HARBOR_REPO} -u '${CI_REGISTRY_USERNAME}' -p '${CI_REGISTRY_PASSWORD}'" - sh """ - export MILVUS_HARBOR_IMAGE_REPO="${env.HARBOR_REPO}/milvus/milvus" - export MILVUS_IMAGE_TAG="${env.BRANCH_NAME}-${date}-${gitShortCommit}" - docker push \${MILVUS_HARBOR_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} - docker logout - """ + withCredentials([usernamePassword(credentialsId: "${env.CI_DOCKER_CREDENTIAL_ID}", usernameVariable: 'CI_REGISTRY_USERNAME', passwordVariable: 'CI_REGISTRY_PASSWORD')]){ + sh "docker login ${env.HARBOR_REPO} -u '${CI_REGISTRY_USERNAME}' -p '${CI_REGISTRY_PASSWORD}'" + sh """ + export MILVUS_HARBOR_IMAGE_REPO="${env.HARBOR_REPO}/milvus/milvus" + export MILVUS_IMAGE_TAG="${env.BRANCH_NAME}-${date}-${gitShortCommit}" + docker push \${MILVUS_HARBOR_IMAGE_REPO}:\${MILVUS_IMAGE_TAG} + docker logout + """ + } + } } } } + stage('Build Centos Milvus Image'){ + agent { + kubernetes { + label "milvus-centos-image" + defaultContainer 'main' + yamlFile "build/ci/jenkins/pod/rte.yaml" + customWorkspace '/home/jenkins/agent/workspace' + } + } + steps { + container('main') { + script { + sh './build/set_docker_mirror.sh' + sh "OS_NAME=centos7 build/builder.sh /bin/bash -c \"make install\"" + sh "OS_NAME=centos7 build/build_image.sh " + } + } + } + } + + } } }