Files
tic-tac-toe-game/CICD_SETUP_GUIDE.md
moltbot 683d6713df
Some checks failed
Complete CI/CD Pipeline / security-scan (push) Has been cancelled
Complete CI/CD Pipeline / build-and-test (push) Has been cancelled
Complete CI/CD Pipeline / deploy-dev (push) Has been cancelled
Complete CI/CD Pipeline / deploy-prod (push) Has been cancelled
Complete CI/CD Pipeline / cleanup (push) Has been cancelled
Add CI/CD setup guide
2026-01-29 01:31:51 +00:00

116 lines
3.0 KiB
Markdown
Raw Permalink 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.
# 井字过三关游戏 - 完整CI/CD流水线配置指南
## 概述
本文档详细说明如何配置完整的CI/CD流水线实现井字过三关游戏项目的自动化构建、测试和部署。
## CI/CD 流水线结构
### 1. 触发机制
- **Push触发**: 当代码推送到main分支时自动触发
- **Pull Request触发**: 当创建或更新Pull Request到main分支时触发
### 2. 工作流详情
#### Job 1: build-and-test
- **运行环境**: Ubuntu最新版
- **任务**:
- 检出代码
- 设置Node.js环境
- 验证HTML、CSS、JS文件完整性
- 运行基本测试
#### Job 2: security-scan
- **运行环境**: Ubuntu最新版
- **任务**:
- 对代码进行安全扫描
- 检查潜在的安全漏洞
#### Job 3: deploy-dev
- **运行环境**: 自托管Runner
- **依赖**: build-and-test 和 security-scan
- **任务**:
- 部署到开发环境 `/var/www/html/tic-tac-toe-dev`
- 设置适当权限
#### Job 4: deploy-prod
- **运行环境**: 自托管Runner
- **依赖**: deploy-dev
- **任务**:
- 部署到生产环境 `/var/www/html/tic-tac-toe`
- 设置适当权限
#### Job 5: cleanup
- **运行环境**: 自托管Runner
- **依赖**: deploy-prod
- **任务**:
- 清理临时文件
## 部署路径
### 开发环境
- URL: `http://<server-ip>/tic-tac-toe-dev/`
- 文件路径: `/var/www/html/tic-tac-toe-dev/`
### 生产环境
- URL: `http://<server-ip>/tic-tac-toe/`
- 文件路径: `/var/www/html/tic-tac-toe/`
## 自托管Runner配置
要使CI/CD流水线正常工作需要在目标服务器上配置Gitea Actions Runner:
```bash
# 1. 安装Gitea Actions Runner
sudo apt update
sudo apt install -y gitea-actions-runner
# 2. 配置Runner连接到Gitea服务器
# 获取Runner令牌在Gitea管理面板中
# 3. 启动Runner服务
sudo systemctl enable gitea-actions-runner
sudo systemctl start gitea-actions-runner
```
## 权限要求
Runner需要以下权限
- 创建目录: `/var/www/html/tic-tac-toe-dev``/var/www/html/tic-tac-toe`
- 复制文件到Web目录
- 更改文件所有权为 `www-data:www-data`
- 设置文件权限为 `644`
## 验证部署
部署完成后,可以通过以下方式验证:
1. 访问开发环境URL检查功能
2. 访问生产环境URL确认部署成功
3. 检查Web服务器日志
4. 验证游戏功能是否正常
## 故障排除
### 常见问题
- Runner未运行: 检查服务状态 `systemctl status gitea-actions-runner`
- 权限错误: 确保Runner有足够的权限写入Web目录
- 网络问题: 确认服务器间网络连接正常
### 日志查看
- Gitea Actions日志: 在Gitea界面上查看
- Web服务器日志: `/var/log/apache2/``/var/log/nginx/`
- Runner日志: `/var/log/gitea-actions-runner/`
## 扩展选项
### 环境变量
可以在Gitea中设置以下环境变量:
- `DEV_SERVER`: 开发服务器地址
- `PROD_SERVER`: 生产服务器地址
- `WEB_ROOT`: Web根目录路径
### 高级功能
- 添加单元测试步骤
- 集成代码质量检查工具
- 添加性能测试
- 配置通知机制