66 lines
2.3 KiB
Plaintext
66 lines
2.3 KiB
Plaintext
pipeline {
|
||
agent any
|
||
tools {
|
||
nodejs 'nodejs'
|
||
}
|
||
stages {
|
||
stage('拉取代码') {
|
||
steps {
|
||
checkout([
|
||
$class: 'GitSCM',
|
||
branches: [[name: '*/master']],
|
||
doGenerateSubmoduleConfigurations: false,
|
||
extensions: [],
|
||
submoduleCfg: [],
|
||
userRemoteConfigs: [[url: 'http://git.sinoecare.com/lab/dvcp-node-service.git',credentialsId:'ec7d3c5e-3cb9-43a3-8134-05a734a13be4']]
|
||
])
|
||
}
|
||
}
|
||
stage('打包') {
|
||
steps {
|
||
echo 'Building...'
|
||
sh 'npm i && npm run build'
|
||
}
|
||
}
|
||
stage('部署') {
|
||
steps {
|
||
echo 'Deploying...'
|
||
// 这里可以添加测试步骤
|
||
sh 'tar -zcvf dist.tar.gz -C dist .'
|
||
sshPublisher(publishers: [sshPublisherDesc(configName: 'oms构建打包服务', transfers: [sshTransfer(
|
||
sourceFiles: 'dist.tar.gz',
|
||
execCommand: 'cd /mnt/sdc/web/ && ls -a && tar -zxvf dist.tar.gz -C dist && rm -rf dist.tar.gz',
|
||
remoteDirectory: 'web')
|
||
], 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=bcabdfc6-e325-49bc-9442-5d3398c1d3ec' \\
|
||
-H 'Content-Type: application/json' \\
|
||
-d '{
|
||
"msgtype": "markdown",
|
||
"markdown": {
|
||
"content": ">构建结果:oms构建打包服务部署完成!\\n
|
||
>完成时间:${currentTime}\\n
|
||
>构建时间:${currentBuild.durationString}"
|
||
|
||
}
|
||
}'
|
||
"""
|
||
}
|
||
|
||
}
|
||
failure {
|
||
echo 'Deployment failed.'
|
||
}
|
||
}
|
||
}
|