123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- pipeline {
- agent any
- environment {
- GITURL = 'http://101.36.160.140:21044/delivery-warehouse-java/delivery-depot-vue.git' //git地址
- GETBRANCH = 'master' //git 分支
- CONFIGNAME = '128' //选择配置好的部署服务器名称
- SOURCEFILES = 'dist-dev.zip' //jar 包在 Jenkins 工作空间+项目名称下 的相对路径
- REMOVEPREFIX = '' //去除前缀,只要 jar 包名称
- REMOTEDIRECTORY = '/home/delivery/web/dev' //部署路径
- EXECCOMMAND = 'cd /home/delivery/web/dev && ./deploy.sh && ps aux | grep java' //执行命令,启动项目 && ./start.sh
- WORKSPACE = '/root/.jenkins/workspace/delivery-depot-web' //前端在 Jenkins 上的工作空间123
- }
- stages {
- stage('pull code') {
- steps {
- echo '从 gitlab 拉取代码'
- git branch: "${GETBRANCH}", credentialsId: '71f78619-368a-4880-b752-0feec5fd34e0', url: "${GITURL}"
- }
- }
- stage('build project') {
- steps {
- echo 'node.js 编译项目'
- sh '''
- # 进入项目工作目录
- cd ${WORKSPACE}
- # 给 build-dev.sh 脚本赋予执行权限
- chmod +x build-dev.sh
- # 执行打包脚本
- ./build-dev.sh
- '''
- }
- }
- stage('publish project') {
- steps {
- echo 'publish project'
- sshPublisher(publishers: [
- sshPublisherDesc(
- configName: "${CONFIGNAME}", // 使用双引号引用变量
- transfers: [sshTransfer(
- cleanRemote: false,
- excludes: '',
- execCommand: "${EXECCOMMAND}", // 使用双引号引用变量
- execTimeout: 120000,
- flatten: true,
- makeEmptyDirs: false,
- noDefaultExcludes: false,
- patternSeparator: '[, ]+',
- remoteDirectory: "${REMOTEDIRECTORY}", // 使用双引号引用变量
- remoteDirectorySDF: false,
- sourceFiles: "${SOURCEFILES}" ,// 使用双引号引用变量
- usePty: true
- )],
- usePromotionTimestamp: false,
- useWorkspaceInPromotion: false,
- verbose: false
- )
- ])
- }
- }
- }
- }
|