脚本:将git项目下载到本地并启动
大致思路:
从git上clone源代码到本地;
使用mvn package将源代码达成war/jar包;
将打好的包放到tomcatpath/webapps/下;
到tomcatpath/bin/下执行restart.sh脚本重启;
脚本:
#!/bin/bash
{
flock -n
[ $? -eq ] && { echo -e "\033[41;1m wait for deploying... \033[0m"; exit; }
echo "start to deploy..." SERVER_PATH=/data/server/merchant-server-
WEBINF_PATH=$SERVER_PATH/webapps/merchant/WEB-INF
SOURCE_PATH=/data/git/o2o-merchant-web
TARGET_PATH=$SOURCE_PATH/target
CLASSES_PATH=$TARGET_PATH/merchant/WEB-INF/classes
LIB_PATH=$TARGET_PATH/merchant/WEB-INF/lib WAR_PATH=$TARGET_PATH/merchant.war
TOMCAT_WAR_PATH=$SERVER_PATH/webapps rm -rf $SOURCE_PATH
mkdir $SOURCE_PATH
git clone -b dev_vettingCredit git@git.wecash.net:o2o/o2o-merchant-web.git $SOURCE_PATH cd $SOURCE_PATH && mvn clean && mvn package -Ptest -Dmaven.test.skip=true if [ ! -x "$TARGET_PATH/merchant" ]; then
echo -e "\033[41;1m mvn install failure, please check. \033[0m"
exit;
fi
cd $SERVER_PATH && ./bin/shutdown.sh
mv $TOMCAT_WAR_PATH/merchant.war $TOMCAT_WAR_PATH/merchant.war_back
rm -rf $TOMCAT_WAR_PATH/merchant
cp $WAR_PATH $TOMCAT_WAR_PATH/merchant.war cd $SERVER_PATH && ./bin/restart.sh
flock -u
} <>~/.deploy_merchant_lock
脚本:将git项目下载到本地并启动的更多相关文章
- Git项目下载部分文件或文件夹
		我们常常要在Github下载一些源码.示例等,但有时候项目库会比较大,而我关心的只是其中很少的一部分内容,由于众所周知的原因,我们下载git库是比较慢的,过大的项目经常会下载失败,所以只下载部分内容就 ... 
- 怎么将GitHub上的项目下载到本地,并运行
		第一步:首页的有项目的地址才能下载 第二步:使用git 下载 命令:git clone 项目地址 第三步:npm install 下载依赖 第四步:npm run dev 运行项目 
- 初学shell,今天遇到由wget下载到本地的网页源代码的乱码问题,无聊的写了一个转码的脚本
		今天用wget想下载文件,结果下载了一堆本地的index.html文件,一查看全是乱码,然后百度了一下,网页的编码格式大概有三种: 1.utf-8 2.gb2312 3.gbk 要在网页源码中的< ... 
- katalon studio配置git与git项目创建
		katalon 是一款在2015年诞生的可以安装在windows.macOS.linux操作系统上,基于selenium 和 Appium 测试框架,并集成了这些框架的优点的自动化测试工具.关于这个工 ... 
- git 项目最常用命令总结
		本文为博主原创,未经允许不得转载: 1.查看git基础配置信息 1.查看用户名和邮箱地址 git config user.name git config user.email 2.修改用户名和邮箱 ... 
- 使用putty与SSHSecureShellClient登录远程服务器完成与本地Git项目的同步
		使用软件远程登录管理服务器 今天给大家介绍两款远程登录管理服务器的软件(Putty和SSHSecureShellClient),这两款也是我在工作中经常的软件. 使用 PuTTY 远程登录管理服务器 ... 
- 使用Eclipse上传/下载Git项目
		使用Eclipse上传/下载Git项目 前提: Eclipse已安装EGit插件 已拥有GitLab / GitHub / 其它Git托管服务账号 SSH方式 配置 配置Git信息 配置用户信息 Ec ... 
- github git 在GitHub上创建项目并将本地项目push到网站上
		众所周知,git是与svn类似的版本控制系统,git的去中心化.分布式等的优点,在不久将来用户量大有可能超过svn, 常见的代码托管网站有GitHub,coding.net, gitee.com 码云 ... 
- eclipse中怎么导入git库下载下来的web项目
		总的看来是有两种方式: 方式一:可以对已经从版本库下载到本地的项目操作(Maven导入) 你可以通过公司提供的内部的版本库的网址登录版本库,之后在里面下载自己想要的那个版本的代码包,见下图 点击右侧的 ... 
随机推荐
- 用101000张图片实现图像识别(算法的实现和流程)-python-tensorflow框架
			一个月前,我将kaggle里面的food-101(101000张食物图片),数据包下载下来,想着实现图像识别,做了很长时间,然后自己电脑也带不动,不过好在是最后找各种方法实现出了识别,但是准确率真的非 ... 
- Python 数字(函数)
			Python支持4种不同数值类型: 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点. 长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L. 浮 ... 
- TypeScript入门四:TypeScript的类(class)
			TypeScript类的基本使用(修饰符) TypeScript类的抽象类(abstract) TypeScript类的高级技巧 一.TypeScript类的基本使用(修饰符) TypeScript的 ... 
- HashMap闭环(死循环)的详细原因(转)
			为何出现死循环简要说明 HashMap是非线程安全的,在并发场景中如果不保持足够的同步,就有可能在执行HashMap.get时进入死循环,将CPU的消耗到100%. HashMap采用链表解决Hash ... 
- Python3 GUI:PyQt5环境搭建
			配置镜像源 最近用Python内置的Thinter写了个小工具,发现界面略朴素,于是决定转向PyQt5.先配置镜像源,否则只能龟速下载. C:\Users\你的用户名下新建目录pip 在pip目录下新 ... 
- 【Day4】2.详解Http请求协议
			Http请求协议 
- xgboost&lightgbm调参指南
			本文重点阐述了xgboost和lightgbm的主要参数和调参技巧,其理论部分可见集成学习,以下内容主要来自xgboost和LightGBM的官方文档. xgboost Xgboost参数主要分为三大 ... 
- Canvas对画布及文字控制基础API学习
			这次纯API练习,比较简单,但是是为了之后的结合项目打基础的,所以也不能忽视它,下面开始: Canvas的平移.旋转.缩放 这里还是以上次画那个青春痘的DEMO为例[http://www.cnblog ... 
- RxJava事件流变换者--操作符
			对于Rxjava来说,操作符是它的一个非常重要的概念,如官网: 而上节上也贴了一下都有哪些操作符,其实还不少,所以有必要仔细学习一下关于操作符这块的东东,那操作符在Rxjava中扮演着什么样的角色呢, ... 
- Python: sqlite3模块
			sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块 SQLite 是一个C语言库,它可以提供一种轻量级的基于磁盘的数据库,这种数据库不需要独立的服务器进程,也允许需要使用一种 ... 
