feat(upgrade): add self-update command from Gitea Release
Some checks failed
Secrets CLI - Build & Release / Build (x86_64-unknown-linux-musl) (push) Has been cancelled
Secrets CLI - Build & Release / Build (aarch64-apple-darwin) (push) Has been cancelled
Secrets CLI - Build & Release / Build (x86_64-pc-windows-msvc) (push) Has been cancelled
Secrets CLI - Build & Release / 发布草稿 Release (push) Has been cancelled
Secrets CLI - Build & Release / 版本 & Release (push) Successful in 2s
Secrets CLI - Build & Release / 质量检查 (fmt / clippy / test) (push) Has been cancelled

- Add secrets upgrade command: --check to verify, default to download and replace binary
- No database or master key required
- Support tar.gz and zip artifacts from Gitea Release

Made-with: Cursor
This commit is contained in:
voson
2026-03-19 11:01:43 +08:00
parent fcac14a8c4
commit 2da7aab3e5
9 changed files with 827 additions and 4 deletions

View File

@@ -23,6 +23,7 @@ secrets/
update.rs # update 命令增量更新CAS 并发保护,含历史快照
rollback.rs # rollback / history 命令:版本回滚与历史查看
run.rs # inject / run 命令:临时环境变量注入
upgrade.rs # upgrade 命令:检查并下载最新版本,自动替换二进制
scripts/
setup-gitea-actions.sh # 配置 Gitea Actions 变量与 Secrets
.gitea/workflows/
@@ -405,6 +406,20 @@ secrets run -n refining --kind service --name gitea -- printenv
---
### upgrade — 自动更新 CLI 二进制
从 Gitea Release 下载最新版本并替换当前二进制,无需数据库连接或主密钥。
```bash
# 检查是否有新版本(不下载)
secrets upgrade --check
# 下载并安装最新版本
secrets upgrade
```
---
### config — 配置管理(无需主密钥)
```bash