2024-10-17 15:13:34 +08:00
|
|
|
|
pipeline {
|
|
|
|
|
|
agent any
|
|
|
|
|
|
parameters {
|
2024-10-17 15:43:22 +08:00
|
|
|
|
string(name: 'pid', defaultValue: '', description: '定制方案的Id')
|
2024-10-17 15:39:01 +08:00
|
|
|
|
string(name: 'dist', defaultValue: '', description: '部署路径')
|
2024-10-17 15:13:34 +08:00
|
|
|
|
}
|
|
|
|
|
|
stages {
|
|
|
|
|
|
stage('拉取代码') {
|
|
|
|
|
|
steps {
|
|
|
|
|
|
checkout([
|
|
|
|
|
|
$class: 'GitSCM',
|
|
|
|
|
|
branches: [[name: '*/devops']],
|
|
|
|
|
|
doGenerateSubmoduleConfigurations: false,
|
|
|
|
|
|
extensions: [],
|
|
|
|
|
|
submoduleCfg: [],
|
|
|
|
|
|
userRemoteConfigs: [[url: 'http://git.sinoecare.com/sinoecare/digital_village_v2/dvcp_v2_webapp.git',credentialsId:'b42f8b48-95a4-4039-ae51-b1dff06d943b']]
|
|
|
|
|
|
])
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
stage('打包') {
|
|
|
|
|
|
steps {
|
|
|
|
|
|
echo "正在打包的工程==>: ${params.pid}"
|
2024-10-17 15:39:01 +08:00
|
|
|
|
sh "npm i"
|
2024-10-17 15:13:34 +08:00
|
|
|
|
sh "node bin/build.js ${params.pid}&&npm run build"
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
stage('部署') {
|
|
|
|
|
|
steps {
|
|
|
|
|
|
echo 'Deploying...'
|
|
|
|
|
|
sh 'tar -zcvf dist.tar.gz -C dist .'
|
|
|
|
|
|
sshPublisher(publishers: [sshPublisherDesc(configName: 'dev87', transfers: [sshTransfer(
|
|
|
|
|
|
sourceFiles: 'dist.tar.gz',
|
2024-10-17 15:39:01 +08:00
|
|
|
|
execCommand: "cd ${params.dist} && ls -a && tar -zxvf dist.tar.gz -C dist && rm -rf dist.tar.gz",
|
2024-10-17 15:13:34 +08:00
|
|
|
|
remoteDirectory: 'zips')
|
|
|
|
|
|
], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: true)])
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
post{
|
|
|
|
|
|
success {
|
|
|
|
|
|
script{
|
|
|
|
|
|
echo 'Deployment finished successfully.'
|
|
|
|
|
|
|
|
|
|
|
|
def currentTime = new Date().format('yyyy-MM-dd HH:mm:ss', TimeZone.getTimeZone('Asia/Shanghai'))
|
|
|
|
|
|
|
|
|
|
|
|
sh """
|
|
|
|
|
|
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=1e734bc6-ab12-4272-8b15-cf92cb070f5b' \\
|
|
|
|
|
|
-H 'Content-Type: application/json' \\
|
|
|
|
|
|
-d '{
|
|
|
|
|
|
"msgtype": "markdown",
|
|
|
|
|
|
"markdown": {
|
|
|
|
|
|
"content": ">构建结果:web端打包完成!\\n
|
|
|
|
|
|
>完成时间:${currentTime}\\n
|
|
|
|
|
|
>构建时间:${currentBuild.durationString}"
|
|
|
|
|
|
}
|
|
|
|
|
|
}'
|
|
|
|
|
|
"""
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
failure {
|
|
|
|
|
|
echo 'Deployment failed.'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|