- deploy-config.sh: 部署配置文件(服务器信息、路径配置) - deploy-mobile.sh: 移动端部署脚本 - deploy-admin.sh: 管理后台部署脚本 - deploy-service.sh: 服务部署脚本(只更新lib目录) - deploy-all.sh: 全量部署脚本
95 lines
2.3 KiB
Bash
Executable File
95 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# ============================================
|
|
# 全量部署脚本
|
|
# 用法: ./deploy-all.sh [mobile|admin|services|all]
|
|
# 示例: ./deploy-all.sh mobile # 只部署移动端
|
|
# ./deploy-all.sh admin # 只部署管理后台
|
|
# ./deploy-all.sh services # 只部署所有服务
|
|
# ./deploy-all.sh all # 部署全部
|
|
# ============================================
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
source "$SCRIPT_DIR/deploy-config.sh"
|
|
|
|
DEPLOY_TYPE="${1:-all}"
|
|
|
|
log_info "============================================"
|
|
log_info "全量部署脚本"
|
|
log_info "============================================"
|
|
log_info "部署类型: $DEPLOY_TYPE"
|
|
log_info ""
|
|
|
|
# 检查sshpass
|
|
check_sshpass
|
|
|
|
# 部署移动端
|
|
deploy_mobile() {
|
|
log_info ">>> 开始部署移动端..."
|
|
"$SCRIPT_DIR/deploy-mobile.sh"
|
|
}
|
|
|
|
# 部署管理后台
|
|
deploy_admin() {
|
|
log_info ">>> 开始部署管理后台..."
|
|
"$SCRIPT_DIR/deploy-admin.sh"
|
|
}
|
|
|
|
# 部署单个服务
|
|
deploy_service() {
|
|
local service_name="$1"
|
|
log_info ">>> 开始部署服务: $service_name"
|
|
"$SCRIPT_DIR/deploy-service.sh" "$service_name"
|
|
}
|
|
|
|
# 部署所有服务
|
|
deploy_all_services() {
|
|
for service in "${SERVICES[@]}"; do
|
|
deploy_service "$service"
|
|
echo ""
|
|
done
|
|
}
|
|
|
|
# 根据参数执行部署
|
|
case "$DEPLOY_TYPE" in
|
|
mobile)
|
|
deploy_mobile
|
|
;;
|
|
admin)
|
|
deploy_admin
|
|
;;
|
|
services)
|
|
deploy_all_services
|
|
;;
|
|
all)
|
|
deploy_mobile
|
|
echo ""
|
|
deploy_admin
|
|
echo ""
|
|
deploy_all_services
|
|
;;
|
|
*)
|
|
# 检查是否是服务名
|
|
FOUND=0
|
|
for service in "${SERVICES[@]}"; do
|
|
if [ "$service" = "$DEPLOY_TYPE" ]; then
|
|
deploy_service "$DEPLOY_TYPE"
|
|
FOUND=1
|
|
break
|
|
fi
|
|
done
|
|
if [ $FOUND -eq 0 ]; then
|
|
log_error "未知参数: $DEPLOY_TYPE"
|
|
echo "用法: $0 [mobile|admin|services|all|服务名]"
|
|
echo "可用服务:"
|
|
for svc in "${SERVICES[@]}"; do
|
|
echo " - $svc"
|
|
done
|
|
exit 1
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
log_info "============================================"
|
|
log_info "部署完成!"
|
|
log_info "============================================"
|