Pipeline script
pipeline {
agent{
label "win52"
}
options {
disableConcurrentBuilds()
}
stages {
stage('pull code') {
steps {
echo '拉取代码'
checkout([$class: 'GitSCM', branches: [[name: '*/${branch}']], extensions: [], userRemoteConfigs: [[credentialsId: 'yangcheng', url: 'git://192.168.31.246/mes/mes2.0.git']]])
}
}
stage('code build') {
steps {
echo '编译后端'
bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net"
dotnet publish VOL.sln -o Publish
dotnet publish SmarteeMES.Service.sln -o Service'''
echo '编译前端'
bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View"
cnpm install'''
bat '''cd "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View"
build.bat'''
bat 'rmdir /s /q "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
bat 'mkdir "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
bat 'xcopy /E /Y "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\View\\dist" "D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0\\wwwroot"'
}
}
stage('docker build') {
environment{
currentDate = new Date().format('yyyyMMdd')
WebImageTag = "192.168.31.187:5555/mes/mes2.web:v${imageVersion}"
ServiceImageTag = "192.168.31.187:5555/mes/smarteemes.service:v${imageVersion}"
}
steps {
echo 'docker打包'
script {
if(env.imageVersion==""){
WebImageTag="192.168.31.187:5555/mes/mes2.web:v${currentDate}_${BUILD_NUMBER}"
ServiceImageTag = "192.168.31.187:5555/mes/smarteemes.service:v${currentDate}_${BUILD_NUMBER}"
}
echo "Web版本:${WebImageTag}"
echo "Service版本:${ServiceImageTag}"
}
dir('D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\VOL.WebApi\\bin\\Debug\\net5.0'){
bat "docker build -t ${WebImageTag}.j ."
bat "docker login http://192.168.31.187:5555 -u admin -p MES2021"
bat "docker push ${WebImageTag}.j"
}
dir('D:\\Jenkins\\workspace\\dev_docker_web\\SmarteeMes2.0\\Net\\SmarteeMES.Service\\bin\\Debug\\net5.0'){
bat "docker build -t ${ServiceImageTag}.j ."
bat "docker login http://192.168.31.187:5555 -u admin -p MES2021"
bat "docker push ${ServiceImageTag}.j"
}
}
}
}
}