#!/bin/bash set -e echo "╔════════════════════════════════════════════╗" echo "║ 🚀 Novalon Website CI/CD 自动配置工具 ║" echo "║ Version: 1.0.0 ║" echo "║ Mode: Docker + Shell (参考 deploy-dist.sh) ║" echo "╚════════════════════════════════════════════╝" echo "" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" CONFIG_FILE="$SCRIPT_DIR/cicd.config" source "$SCRIPT_DIR/lib/utils.sh" source "$SCRIPT_DIR/lib/jenkins-setup.sh" source "$SCRIPT_DIR/lib/gitea-setup.sh" source "$SCRIPT_DIR/lib/verify.sh" load_config_or_defaults show_banner "开始自动化配置流程" check_prerequisites || exit 1 if [ "$1" == "--full" ] || [ "$1" == "-f" ]; then echo "📋 模式: 完整安装(包含 Docker 容器重建)" setup_jenkins_container install_jenkins_tools elif [ "$1" == "--jenkins" ] || [ "$1" == "-j" ]; then echo "📋 模式: 仅配置 Jenkins" install_jenkins_tools elif [ "$1" == "--webhook" ] || [ "$1" == "-w" ]; then echo "📋 模式: 仅配置 Gitea Webhook" else echo "📋 模式: 快速配置(跳过容器重建)" fi wait_for_jenkins_ready setup_jenkins_credentials setup_jenkins_global_tools install_required_plugins create_pipeline_job setup_gitea_webhook echo "" show_banner "配置完成!开始验证..." run_all_verifications echo "" echo "╔════════════════════════════════════════════╗" echo "║ ✅ 自动化配置完成! ║" echo "╠════════════════════════════════════════════╣" echo "║ ║" echo "║ 🌐 Jenkins: ${JENKINS_URL} ║" echo "║ 🔗 Gitea: ${GITEA_URL} ║" echo "║ 🚀 任务名: ${JOB_NAME} ║" echo "║ ║" echo "║ 下一步操作: ║" echo "║ 1. 访问 Jenkins 并点击 'Build Now' ║" echo "║ 2. 推送代码到 main 分支测试 Webhook ║" echo "║ 3. 勾选 DEPLOY_TO_PRODUCTION 测试部署 ║" echo "║ ║" echo "╚════════════════════════════════════════════╝"