Files
novalon-website/scripts/setup-cicd/cicd.sh
T
张翔 b8ab1fd0e3 build(ci/cd): add full automated CI/CD setup scripts
新增了完整的Novalon网站CI/CD自动化配置工具链,包括:
1.  一键启动脚本、主配置脚本与配置文件
2.  Jenkins容器部署、Gitea Webhook配置、环境验证脚本
3.  完善的中文文档与使用示例
4.  优化了Jenkinsfile流水线,新增构建保留、并发限制、备份清理等功能
2026-05-14 16:18:30 +08:00

63 lines
2.4 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/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