| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- #!/bin/bash
- set -e
- env='test'
- base_dir=`pwd`
- config_dir="${base_dir}/config"
- proj_dir="${base_dir}/tmp/proj"
- bin_dir="${base_dir}/tmp/bin"
- echo "创建 proj 目录和 bin 目录..."
- if [ -d ${proj_dir} ]; then
- echo ${proj_dir}" exist"
- # rm -rf ${proj_dir}
- else
- mkdir -p ${proj_dir}
- fi
- if [ -d ${bin_dir} ]; then
- echo ${bin_dir}" exist"
- # rm -rf ${bin_dir}
- else
- mkdir -p ${bin_dir}
- fi
- ###############################################################################
- # clone 项目
- ###############################################################################
- clone_proj() {
- cd ${proj_dir}
- git clone --depth=1 https://git.reghao.cn/reghao/jutil
- git clone --depth=1 https://git.reghao.cn/reghao/oss
- git clone --depth=1 https://git.reghao.cn/reghao/bnt
- git clone --depth=1 https://git.reghao.cn/reghao/tnb
- git clone --depth=1 https://git.reghao.cn/reghao/tnbapp
- }
- ###############################################################################
- # 安装依赖
- ###############################################################################
- build_dependencies() {
- cd ${proj_dir}/jutil
- mvn clean install -Dmaven.test.skip
- cd ${proj_dir}/oss
- mvn clean install -Dmaven.test.skip -pl oss-api
- mvn clean install -Dmaven.test.skip -pl oss-sdk
- ###############################################################################
- # 安装 tnb 项目提供的依赖
- ###############################################################################
- cd ${proj_dir}/tnb
- mvn clean install -am -Dmaven.test.skip -pl common
- mvn clean install -am -Dmaven.test.skip -pl log
- mvn clean install -am -Dmaven.test.skip -pl account/account-api/
- mvn clean install -am -Dmaven.test.skip -pl user/user-api/
- mvn clean install -am -Dmaven.test.skip -pl message/message-api/
- mvn clean install -am -Dmaven.test.skip -pl content/content-api/
- mvn clean install -am -Dmaven.test.skip -pl file/file-api/
- mvn clean install -am -Dmaven.test.skip -pl data/data-api/
- ###############################################################################
- # 安装 bnt 项目提供的依赖
- ###############################################################################
- cd ${proj_dir}/bnt
- mvn clean install -Dmaven.test.skip -pl admin-api
- }
- ###############################################################################
- # 修改第三方服务依赖配置
- ###############################################################################
- replace_server_config() {
- cd ${config_dir}
- java -jar deployer.jar application.yml ${proj_dir}
- }
- ###############################################################################
- # 构建后端应用
- ###############################################################################
- build_backend() {
- ###############################################################################
- # 构建 oss 项目 jar 包
- ###############################################################################
- cd ${proj_dir}/oss
- mvn clean package -Dmaven.test.skip -pl oss-store -P${env}
-
- if [ ! -d ${bin_dir}/oss-store ]; then
- mkdir ${bin_dir}/oss-store
- fi
- cp oss-store/bin/* ${bin_dir}/oss-store
- ###############################################################################
- # 构建 bnt 项目 jar 包
- ###############################################################################
- cd ${proj_dir}/bnt
- mvn clean package -Dmaven.test.skip -pl web -P${env}
- cp web/bin/bntweb.jar ${bin_dir}
- ###############################################################################
- # 构建 tnb 项目 jar 包
- ###############################################################################
- cd ${proj_dir}/tnb
- mvn clean package -Dmaven.test.skip -P${env}
- cp gateway/target/tnb-gateway.jar ${bin_dir}
- cp account/account-service/target/tnb-account.jar ${bin_dir}
- cp user/user-service/target/tnb-user.jar ${bin_dir}
- cp message/message-service/target/tnb-message.jar ${bin_dir}
- cp file/file-service/target/tnb-file.jar ${bin_dir}
- cp content/content-service/target/tnb-content.jar ${bin_dir}
- cp data/data-service/target/tnb-data.jar ${bin_dir}
- }
- ###############################################################################
- # 构建前端应用
- ###############################################################################
- build_front() {
- ###############################################################################
- # 构建 tnbapp 项目
- ###############################################################################
- cd ${proj_dir}/tnbapp
- npm --registry http://registry.npm.taobao.org i
- npm run build
- if [ ! -d ${bin_dir}/tnbapp ]; then
- mkdir ${bin_dir}/tnbapp
- fi
- cp -r dist/* ${bin_dir}/tnbapp
- }
- echo "clone 项目..."
- # clone_proj
- echo "构建依赖..."
- # build_dependencies
- echo "修改第三方服务依赖配置..."
- replace_server_config
- echo "构建后端应用..."
- build_backend
- echo "构建前端应用..."
- # build_front
|