linux svn tomcat maven 自动发布打包
来源:互联网 发布:node.js webpack vue 编辑:程序博客网 时间:2024/05/16 19:18
1:首先确定了LINUX上已安装SVN MAVEN
2: 把SVN项目CHECKOUT到LINUX服务器
svn checkout svn://172.17.210.82:9999/xxx --username zhang.lh --password xx
3:脚本
1:
#!/bin/sh
#Description:oms发布脚本
#Version:1.0
#Author:dong.j
#Date:2013-12-17
source /etc/profile
#初始化
function init(){
svn_home="/root/retail/mobil-platform/o2o-mobile-access-platform-0.1.0"
project_name="o2o-mobile-access-platform-web"
#project_conf_home="/etc/yougouconf/retail/pmsf1/"
project_deploy_home="/usr/local/yougou/mobil-platform/" #项目存放路径
tomcat_home="/usr/local/apache-tomcat-7.0.37-test"
}
#逻辑实现
function logicImpl(){
sh retail_common_test.sh "$svn_home" "$project_name" "$project_conf_home" "$project_deploy_home" "$tomcat_home"
}
#主函数
function main(){
init
logicImpl
}
main
2:
#!/bin/sh
#Description:发布脚本
#Version:1.1
#Author:dong.j
#Date:2013-12-16
#Usage:sh publish.sh svn_home project_name project_conf_home project_deploy_home tomcat_home
source /etc/profile
#初始化
function init(){
svn_home="$1"
project_name="$2"
project_conf_home="$3"
project_deploy_home="$4"
tomcat_home="$5"
tomcat_process_id="`ps -ef | grep /usr/local/apache-tomcat-7.0.37-test | grep -v 'grep' | awk '{print $2}'`"
theDay=`date +%Y%m%d -d "1 days ago "`
}
#启动tomcat
function startTomcat(){
echo "################# start tomcat"
sh $tomcat_home/bin/startup.sh >>/dev/null 2>&1
}
#关闭tomcat
function shutdownTomcat(){
echo "################# shutdown tomcat"
sh $tomcat_home/bin/shutdown.sh >>/dev/null 2>&1
}
#操作tomcat
function tomcatManager(){
echo "################# tomcatManger"
case $1 in
"start")
if [ "$tomcat_process_id" != "0" ]
then
shutdownTomcat
sleep 3
fi
startTomcat
;;
"shutdown")
if [ "$tomcat_process_id" != "0" ]
then
shutdownTomcat
fi
;;
*)
echo "请输入Tomcat操作命令start or shutdown"
;;
esac
sleep 3
}
#svn更新
function update(){
echo "update svn"
echo "$project_name update svn ...."
cd $svn_home
svn update
echo -e "\n$project_name update svn success...."
}
#maven 打包
function package(){
echo "package maven"
echo "$project_name package is begging...."
mvn clean package -Dmaven.test.skip=true >>/dev/null 2>&1
echo "$project_name package success...."
}
#复制上传文件到对应项目目录
function copyFile(){
echo "copy file is begging"
#rm -rf $project_conf_home $project_deploy_home
rm -rf $project_deploy_home
#cp -rf conf/retail/${project_name} ${project_conf_home}
cp -rf o2o-mobile-access-platform-web/target/o2o-mobile-access-platform-web ${project_deploy_home}
}
#逻辑实现
function logicImpl(){
tomcatManager "shutdown"
update
package
echo "$project_name is begging publish...."
copyFile
tomcatManager "start"
echo "$project_name publish success...."
}
#主函数
function main(){
init "$1" "$2" "$3" "$4" "$5"
logicImpl
}
main "$1" "$2" "$3" "$4" "$5"
4:配置TOMCAT 发布路径
<Host><Context docBase="/usr/local/yougou/mobil-platform" path="/o2o-mobile-access-platform-web" reloadable="true" /> </Host>
- linux svn tomcat maven 自动发布打包
- hudson+maven+svn Tomcat自动发布
- 实现代码自动打包与发布(Jenkins+Maven+Svn)
- Jenkins+Maven+Svn实现代码自动打包与发布
- maven项目自动git打包发布重启Tomcat
- maven自动发布tomcat
- linux服务器配置jenkins maven svn自动部署到tomcat
- linux服务器配置jenkins maven svn自动部署到tomcat
- Maven打包自动发布到nexus私服
- maven项目自动打包部署到tomcat
- maven自动打包到tomcat中
- Linux编写Shell脚本自动同步svn并发布maven项目-Linux服务器用户设置
- Jenkins+maven+svn+tomcat自动编译部署
- jenkins + maven + svn + tomcat+nexus 自动部署
- Jenkins+Maven+SVN+Tomcat自动部署
- jenkins + maven + svn + tomcat 自动部署
- Jenkins+maven+svn+tomcat自动编译部署
- jenkins + maven +svn+ tomcat 自动构建部署
- MySql 存储过程实例(附完整注释)
- mysql实现sequence
- Note_20140807_Cprogram_Matlab-for C program_mxCreateNumericArray
- VisionMobile:2014年Q3移动开发者经济报告(三):2、应用语言
- FTP显示.htaccess的方法
- linux svn tomcat maven 自动发布打包
- Spring声明式事务配置管理方法
- VS2012运行Cocos2d-xTest案例加载失败解决方案
- 什么是套接字(Socket)
- 解决Android SDK Manager使用Goagent报错和使用FreeGate下载失败的问题
- 配置cocos2d-x的eclipse开发环境
- 默认构造函数
- DLog和ALog
- Java8学习笔记(3) -- InvokeDynamic指令在Groovy里的使用