pipeline { agent any environment { harborAddr='122.9.140.63:9010' harborRepo='repo' harborUser='admin' projectGitAddr='http://git.yvanui.com/jztd/wms84.git' projectPath='pc-client' projectPort=80 projectNodePort=30004 } stages { stage('拉取代码') { steps { checkout([$class: 'GitSCM', branches: [[name: "${params.TAG}"]], extensions: [], userRemoteConfigs: [[credentialsId: 'jenkins-Gods', url: "${projectGitAddr}"]]]) checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: "${WORKSPACE}/yvan-vue/"]], userRemoteConfigs: [[credentialsId: 'jenkins-Gods', url: 'http://git.yvanui.com/jztd/yvan-vue.git']]]) } } stage('构建代码') { steps { sh '/opt/jenkins/data/node-v16.17.1/bin/npm run build' } } stage('构建镜像') { steps { sh "docker build --build-arg PROJECT_NAME=${JOB_NAME} --build-arg DEPLOY_ENV=${ENV} -t ${JOB_NAME}:${TAG} ${WORKSPACE}/${projectPath}/" // sh '''docker login -u ${harborUser} --password-stdin < /var/jenkins_home/docker/password ${harborAddr} // docker tag ${JOB_NAME}:${TAG} ${harborAddr}/${harborRepo}/${JOB_NAME}:${TAG} // docker push ${harborAddr}/${harborRepo}/${JOB_NAME}:${TAG}''' } } // stage('部署') { // steps { // sh 'ssh root@192.168.0.185 "/usr/local/scripts/k8s/deploy.sh ${ENV} ${JOB_NAME} ${TAG} ${projectPort} ${projectNodePort}"' // } // } } }