68 lines
1.4 KiB
Markdown
68 lines
1.4 KiB
Markdown
|
|
# CLI 使用
|
|||
|
|
|
|||
|
|
本仓库包含多个命令行工具:
|
|||
|
|
|
|||
|
|
## 账号服务主程序
|
|||
|
|
|
|||
|
|
二进制名称由 Makefile 设置为 `xcontrol-account`,主入口在 `cmd/accountsvc`。
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
xcontrol-account --config config/account.yaml --log-level info
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
参数:
|
|||
|
|
- `--config`:配置文件路径
|
|||
|
|
- `--log-level`:`debug|info|warn|error`
|
|||
|
|
|
|||
|
|
## createadmin(超级管理员)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
go run ./cmd/createadmin/main.go \
|
|||
|
|
--driver postgres \
|
|||
|
|
--dsn "$DB_URL" \
|
|||
|
|
--username Admin \
|
|||
|
|
--password ChangeMe \
|
|||
|
|
--email admin@svc.plus
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
常用参数:
|
|||
|
|
- `--driver`:`postgres` 或 `memory`
|
|||
|
|
- `--dsn`:PostgreSQL DSN
|
|||
|
|
- `--groups` / `--permissions`
|
|||
|
|
- `--current-password`:更新已有管理员时必需
|
|||
|
|
- `--mfa`:管理员启用 MFA 时必需
|
|||
|
|
|
|||
|
|
## migratectl(迁移 / 导出 / 导入)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 迁移
|
|||
|
|
migratectl migrate --dsn "$DB_URL"
|
|||
|
|
|
|||
|
|
# schema 校验
|
|||
|
|
migratectl verify --dsn "$DB_URL" --schema sql/schema.sql
|
|||
|
|
|
|||
|
|
# 导出/导入
|
|||
|
|
migratectl export --dsn "$DB_URL" --output account-export.yaml
|
|||
|
|
migratectl import --dsn "$DB_URL" --file account-export.yaml
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## syncctl(跨环境同步)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
syncctl --config config/sync.yaml push
|
|||
|
|
syncctl --config config/sync.yaml pull
|
|||
|
|
syncctl --config config/sync.yaml mirror
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Makefile 快捷命令
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
make build
|
|||
|
|
make start
|
|||
|
|
make create-super-admin
|
|||
|
|
make account-export
|
|||
|
|
make account-import
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
相关脚本位于 `scripts/`。
|