221 lines
5.2 KiB
Markdown
221 lines
5.2 KiB
Markdown
# Config-Man 查看功能使用说明
|
||
|
||
## 功能概述
|
||
|
||
Config-Man 的查看功能允许您对比显示对象存储和CDN中的配置内容,支持Android和iOS平台。
|
||
|
||
## 安装依赖
|
||
|
||
首先安装项目依赖:
|
||
|
||
```bash
|
||
pip install -e .
|
||
```
|
||
|
||
## 基本用法
|
||
|
||
### 1. 查看配置文件
|
||
|
||
```bash
|
||
# 查看版本 0.30 的配置文件
|
||
python main.py view --version 0.30
|
||
|
||
# 以JSON格式输出
|
||
python main.py view --version 0.30 --json
|
||
|
||
# 使用模拟环境进行测试
|
||
python main.py view --version 0.30 --mock
|
||
```
|
||
|
||
### 2. 查看帮助信息
|
||
|
||
```bash
|
||
# 查看主命令帮助
|
||
python main.py --help
|
||
|
||
# 查看view命令帮助
|
||
python main.py view --help
|
||
```
|
||
|
||
## 参数说明
|
||
|
||
### view 命令参数
|
||
|
||
- `--version`: 版本号,格式为 0.29, 0.30, 0.31 等(必需)
|
||
- `--json`: 以JSON格式输出(可选)
|
||
- `--storage-path`: 对象存储路径前缀,默认为 'ab'(可选)
|
||
- `--cdn-url`: CDN基础URL(可选)
|
||
- `--mock`: 使用模拟环境进行测试(可选)
|
||
|
||
## 输出格式
|
||
|
||
### 表格格式(默认)
|
||
|
||
```
|
||
版本: 0.30 | 平台: Android
|
||
┌─────────────────┬─────────────────────┬─────────────────────┬──────────┐
|
||
│ 配置项 │ 对象存储内容 │ CDN内容 │ 状态 │
|
||
├─────────────────┼─────────────────────┼─────────────────────┼──────────┤
|
||
│ Ver │ 0.30.2ghi789 │ 0.30.2ghi789 │ ✅ 一致 │
|
||
│ EventApiURL │ https://n3backend. │ https://n3backend. │ ✅ 一致 │
|
||
│ NewFeature │ enabled │ N/A │ ❌ 不同 │
|
||
│ ... │ ... │ ... │ ... │
|
||
└─────────────────┴─────────────────────┴─────────────────────┴──────────┘
|
||
```
|
||
|
||
### JSON格式
|
||
|
||
```json
|
||
{
|
||
"version": "0.30",
|
||
"platform": "android",
|
||
"storage_config": {
|
||
"EventApiURL": "https://n3backend.azurewebsites.net/",
|
||
"Ver": "0.30.2ghi789",
|
||
"NewFeature": "enabled"
|
||
},
|
||
"cdn_config": {
|
||
"EventApiURL": "https://n3backend.azurewebsites.net/",
|
||
"Ver": "0.30.2ghi789"
|
||
}
|
||
}
|
||
```
|
||
|
||
## 模拟环境测试
|
||
|
||
为了方便测试,项目提供了模拟环境:
|
||
|
||
```bash
|
||
# 使用模拟环境测试
|
||
python main.py view --version 0.30 --mock
|
||
```
|
||
|
||
模拟环境会:
|
||
1. 自动创建测试配置文件
|
||
2. 模拟rclone命令
|
||
3. 提供完整的测试数据
|
||
|
||
## 错误处理
|
||
|
||
### 常见错误
|
||
|
||
1. **版本号格式错误**
|
||
```
|
||
错误: 无效的版本号格式: 1.2.3
|
||
```
|
||
|
||
2. **rclone未安装**
|
||
```
|
||
错误: rclone 未安装或不可用。请先安装 rclone。
|
||
```
|
||
|
||
3. **文件不存在**
|
||
```
|
||
警告: 无法从对象存储下载 ab/0_30/androidconfig.json: 文件不存在
|
||
```
|
||
|
||
4. **网络连接失败**
|
||
```
|
||
警告: 无法从CDN获取 https://cdn.example.com/ab/0_30/androidconfig.json
|
||
```
|
||
|
||
## 配置说明
|
||
|
||
### 配置文件结构
|
||
|
||
配置文件包含以下主要字段:
|
||
|
||
- **EventApiURL**: API端点URL
|
||
- **Ver**: 版本信息
|
||
- **PlayFabTitle**: PlayFab标题
|
||
- **Google_Play_URL**: Google Play商店链接
|
||
- **APP_Store_URL**: App Store链接
|
||
- **HeartBeat**: 心跳间隔
|
||
- **RTMPid**: RTM进程ID
|
||
- **RTMServerEndpoint**: RTM服务器端点
|
||
- **RTMHmacSecret**: RTM HMAC密钥
|
||
- **FuncUrl**: 功能URL
|
||
- **FuncKey**: 功能密钥
|
||
|
||
### 版本号转换
|
||
|
||
版本号会自动转换为存储路径格式:
|
||
- `0.29` → `0_29`
|
||
- `0.30` → `0_30`
|
||
- `1.00` → `1_00`
|
||
|
||
## 高级用法
|
||
|
||
### 自定义存储路径
|
||
|
||
```bash
|
||
python main.py view --version 0.30 --storage-path custom_path
|
||
```
|
||
|
||
### 指定CDN URL
|
||
|
||
```bash
|
||
python main.py view --version 0.30 --cdn-url https://cdn.example.com
|
||
```
|
||
|
||
### 组合使用
|
||
|
||
```bash
|
||
python main.py view --version 0.30 --json --mock --storage-path test_data/ab
|
||
```
|
||
|
||
## 故障排除
|
||
|
||
### 1. 安装问题
|
||
|
||
确保安装了所有依赖:
|
||
```bash
|
||
pip install click pycryptodome tabulate requests rich
|
||
```
|
||
|
||
### 2. rclone配置
|
||
|
||
如果使用真实环境,需要配置rclone:
|
||
```bash
|
||
rclone config
|
||
```
|
||
|
||
### 3. 权限问题
|
||
|
||
确保有足够的权限访问对象存储和CDN。
|
||
|
||
### 4. 网络问题
|
||
|
||
检查网络连接和防火墙设置。
|
||
|
||
## 开发说明
|
||
|
||
### 项目结构
|
||
|
||
```
|
||
config-man/
|
||
├── main.py # 主程序入口
|
||
├── appconfig_tool.py # 加密解密工具
|
||
├── config_manager.py # 配置管理器
|
||
├── display_manager.py # 显示管理器
|
||
├── view_command.py # 查看命令处理器
|
||
├── mock_rclone.py # 模拟rclone环境
|
||
└── test_configs.py # 测试配置生成器
|
||
```
|
||
|
||
### 扩展功能
|
||
|
||
要添加新的查看功能,可以:
|
||
|
||
1. 在 `config_manager.py` 中添加新的方法
|
||
2. 在 `display_manager.py` 中添加新的显示格式
|
||
3. 在 `view_command.py` 中添加新的处理逻辑
|
||
4. 在 `main.py` 中添加新的CLI命令
|
||
|
||
## 联系支持
|
||
|
||
如果遇到问题,请检查:
|
||
1. 版本号格式是否正确
|
||
2. 网络连接是否正常
|
||
3. rclone配置是否正确
|
||
4. 依赖是否完整安装 |