系统发布总体分两个阶段:准备阶段、执行阶段
准备阶段:整理数据库脚本、整理源代码(branch、tag)并打好生产包,这些都可在发布执行之前完成
执行阶段:更新数据库、执行应用程序发布脚本
准备阶段
1、整理数据库更新脚本
2、准备应用程序发布源代码
a、从trunk分出一个branch
执行命令: mvn release:branch -DbranchName=1.1.x -DupdateBranchVersions=true -DupdateWorkingCopyVersions=false 建立branch
其中1.1.x 为branch的版本号,运行过程中需输入该版本的快照版本号,如:1.1.x-SNAPSHOT
b、从branch上打一个tag
执行命令:mvn release:prepare -Darguments='-Dmaven.test.skip=true'
中间系统会提示你输入要发布的版本以及下一个发布版本的SNAPSHOT的版本号
c、清除临时文件
执行命令:mvn release:clean
这是为了清除上个命令留下来的临时文件
3、准备应用程序发布包
说明: 生产环境发布的包是在UAT服务器上编译的
uat ip: xxxxxx 登陆用户:root
登陆uat环境,更新svn tag源代码,打包
i. 执行命令:cd /Data/source/productionRelease/source
ii. 执行命令:svn sw xxxx/htky-xxx xxx是要发布的版本号
iii. 执行命令:svn status 确认一下没有文件冲突
iv. 执行命令: cd /Data/source/productionRelease/script
v. 执行命令:./build_app1.sh 该步为app1打一个生产包,并把该包复制到生产环境app1,在该节点上跑定时任务
vi.等步骤 v 执行完成后,执行命令:./build_app2.sh 该步为app2打一个生产包,并把该包复制到生产环境app2,在该节点上不跑定时任务
发布阶段
1、更新数据库
2、发布生产应用程序
登陆堡垒机,
APP1:(ip:)
i. 执行命令:cd /Data/script
ii. 执行命令:./deploy.sh
APP2:(ip:)
i. 执行命令:cd /Data/script
ii. 执行命令:./deploy.sh
APP3:(ip:)
i. 执行命令:cd /Data/script
ii. 执行命令:./deploy.sh
APP4:(ip:)
i. 执行命令:cd /Data/script
ii. 执行命令:./deploy.sh
APP5:(ip:)
i. 执行命令:cd /Data/script
ii. 执行命令:./deploy.sh