111
This commit is contained in:
125
docs/AUTO_BUILD_TRIGGER.md
Normal file
125
docs/AUTO_BUILD_TRIGGER.md
Normal file
@@ -0,0 +1,125 @@
|
||||
# 内容仓库更新自动触发构建 - 快速参考
|
||||
|
||||
## 🎯 问题
|
||||
|
||||
启用内容分离后,内容仓库 (Mizuki-Content) 更新不会自动触发代码仓库 (Mizuki) 的重新部署。
|
||||
|
||||
## ✅ 解决方案 (推荐)
|
||||
|
||||
使用 **Repository Dispatch** 让内容更新时自动触发构建,适用于所有部署平台。
|
||||
|
||||
---
|
||||
|
||||
## 📝 5 步快速配置
|
||||
|
||||
### Step 1: 创建 GitHub Token
|
||||
|
||||
访问: https://github.com/settings/tokens
|
||||
|
||||
- 点击 **Generate new token (classic)**
|
||||
- Note: `Mizuki Content Trigger`
|
||||
- Scopes: 勾选 ✅ `repo`
|
||||
- 点击生成并**复制 Token** ⚠️ (只显示一次)
|
||||
|
||||
### Step 2: 添加 Secret
|
||||
|
||||
在**内容仓库** (Mizuki-Content):
|
||||
|
||||
Settings → Secrets and variables → Actions → New repository secret
|
||||
|
||||
- Name: `DISPATCH_TOKEN`
|
||||
- Secret: 粘贴刚才的 Token
|
||||
|
||||
### Step 3: 修改触发器配置
|
||||
|
||||
编辑内容仓库的 `.github/workflows/trigger-build.yml`
|
||||
|
||||
找到第 27 行,修改为你的代码仓库:
|
||||
|
||||
```yaml
|
||||
repository: your-username/Mizuki # 改为你的
|
||||
```
|
||||
|
||||
例如: `matsuzaka-yuki/Mizuki`
|
||||
|
||||
### Step 4: 更新代码仓库工作流
|
||||
|
||||
编辑**代码仓库**的 `.github/workflows/deploy.yml`
|
||||
|
||||
在 `on:` 部分添加:
|
||||
|
||||
```yaml
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
repository_dispatch: # 👈 添加这个
|
||||
types:
|
||||
- content-updated
|
||||
workflow_dispatch:
|
||||
```
|
||||
|
||||
### Step 5: 测试
|
||||
|
||||
在内容仓库推送一次:
|
||||
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "test: trigger build"
|
||||
git push
|
||||
```
|
||||
|
||||
查看:
|
||||
1. 内容仓库 Actions - 确认触发器运行
|
||||
2. 代码仓库 Actions - 确认部署被触发
|
||||
|
||||
---
|
||||
|
||||
## 🔍 故障排查
|
||||
|
||||
### Token 问题
|
||||
|
||||
**错误**: `Bad credentials`
|
||||
|
||||
**解决**:
|
||||
- 确认 Token 复制完整
|
||||
- 确认 Token 有 `repo` 权限
|
||||
- 重新生成 Token
|
||||
|
||||
### 仓库名称问题
|
||||
|
||||
**错误**: `Not Found`
|
||||
|
||||
**解决**:
|
||||
- 确认格式: `owner/repo` (用斜杠分隔)
|
||||
- 确认拼写正确
|
||||
- 示例: `matsuzaka-yuki/Mizuki`
|
||||
|
||||
### 代码仓库未触发
|
||||
|
||||
**检查**:
|
||||
- [ ] `.github/workflows/deploy.yml` 包含 `repository_dispatch`
|
||||
- [ ] Event type 为 `content-updated`
|
||||
- [ ] 代码仓库 Actions 已启用
|
||||
|
||||
---
|
||||
|
||||
## 📚 详细文档
|
||||
|
||||
需要更多配置选项? 查看:
|
||||
- [部署指南 - 完整说明](./DEPLOYMENT.md#内容仓库更新触发构建) - 包含 Webhook、定时构建等其他方案
|
||||
- [内容仓库配置指南](../Mizuki-Content/.github/workflows/README.md) - 工作流详细说明
|
||||
|
||||
---
|
||||
|
||||
## 💡 提示
|
||||
|
||||
配置成功后:
|
||||
- ✅ 内容仓库每次推送都会自动触发部署
|
||||
- ✅ 可在 Actions 页面查看触发历史
|
||||
- ✅ 支持手动触发 (workflow_dispatch)
|
||||
|
||||
---
|
||||
|
||||
**配置时间**: 约 5 分钟
|
||||
**一次配置,长期有效** ✨
|
||||
Reference in New Issue
Block a user