build(ci/cd): add full automated CI/CD setup scripts

新增了完整的Novalon网站CI/CD自动化配置工具链,包括:
1.  一键启动脚本、主配置脚本与配置文件
2.  Jenkins容器部署、Gitea Webhook配置、环境验证脚本
3.  完善的中文文档与使用示例
4.  优化了Jenkinsfile流水线,新增构建保留、并发限制、备份清理等功能
This commit is contained in:
张翔
2026-05-14 16:18:30 +08:00
parent 9c9f2276f2
commit b8ab1fd0e3
8 changed files with 779 additions and 231 deletions
+62
View File
@@ -0,0 +1,62 @@
#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
echo "╔════════════════════════════════════════════╗"
echo "║ 🚀 Novalon CI/CD 一键配置启动器 ║"
echo "╚════════════════════════════════════════════╝"
echo ""
case "$1" in
--full|-f)
echo "📋 模式: 完整安装(重建容器 + 全部配置)"
exec bash "${SCRIPT_DIR}/setup-cicd.sh" --full
;;
--jenkins|-j)
echo "📋 模式: 仅配置 Jenkins(工具 + 凭据 + 插件)"
exec bash "${SCRIPT_DIR}/setup-cicd.sh" --jenkins
;;
--webhook|-w)
echo "📋 模式: 仅配置 Gitea Webhook"
exec bash "${SCRIPT_DIR}/setup-cicd.sh" --webhook
;;
--verify|-v)
echo "📋 模式: 验证当前配置"
source "${SCRIPT_DIR}/lib/utils.sh"
source "${SCRIPT_DIR}/lib/verify.sh"
load_config_or_defaults
run_all_verifications
exit 0
;;
--clean|-c)
echo "📋 模式: 清理所有配置"
read -p "⚠️ 确定要删除 Jenkins 容器和所有配置吗?(y/N): " confirm
if [[ "$confirm" =~ ^[Yy]$ ]]; then
docker stop jenkins 2>/dev/null || true
docker rm jenkins 2>/dev/null || true
docker volume rm jenkins_data 2>/dev/null || true
echo "✅ 清理完成"
fi
exit 0
;;
--help|-h|*)
echo "用法: $0 [选项]"
echo ""
echo "选项:"
echo " --full, -f 完整安装(重建 Docker 容器 + 安装工具 + 配置凭据 + 创建任务 + 配置 Webhook"
echo " --jenkins, -j 仅配置 Jenkins(安装工具、插件、凭据,创建 Pipeline 任务)"
echo " --webhook, -w 仅配置 Gitea Webhook"
echo " --verify, -v 验证当前配置是否正确"
echo " --clean, -c 清理 Jenkins 容器和数据"
echo " --help, -h 显示帮助信息"
echo ""
echo "示例:"
echo " $0 --full # 首次使用或需要完全重置时"
echo " $0 # 快速配置(不重建容器)"
echo " $0 --verify # 检查所有配置是否正常"
echo ""
exit 0
;;
esac