釋出管理員
此技能自動化目前 margo 的釋出流程,涵蓋:
scripts/release.shscripts/homebrew-source-sha.sh- 在
docs/HOMEBREW.md中記載的個人 tap 模型
工作流程
1. 準備釋出
從儲存庫根目錄執行準備腳本:
python3 skills/release-manager/scripts/prepare_release.py 0.1.1
此腳本會:
- 驗證請求的版本
- 檢查本機 git 狀態
- 使用儲存庫本機的
GOCACHE執行go test ./... - 透過
scripts/release.sh建構釋出檔案 - 對每個建構好的檔案進行冒煙測試(解壓縮並執行
margo version) - 在
dist/release/release-<version>/下寫入釋出清單與後續檢查表
可選旗標:
--allow-dirty:即使工作目錄有未提交變更仍繼續執行--skip-go-test:跳過完整的 Go 測試套件--tap-path /path/to/homebrew-margo:加入 tap 專屬的後續指示
2. 驗證完成的釋出
在 Git 標籤、GitHub 釋出以及可選的 tap 更新完成後,執行:
python3 skills/release-manager/scripts/verify_release.py 0.1.1 --tap-path /path/to/homebrew-margo
此腳本會:
- 重新驗證建構的檔案
- 透過
gh(若可用)驗證 GitHub 釋出 - 檢查 tap 公式是否指向預期的標籤,且 checksum 非為佔位符
- 當有 tap 簽出可用時,使用 tap 限定的公式名稱執行
brew install或brew upgrade --build-from-source,接著執行brew test與brew audit --strict
有用的旗標:
--skip-gh-release-check--skip-brew--brew-formula jjanuszczak/margo/margo
指示
- 僅將此技能用於當前儲存庫的手動釋出模型。除非儲存庫文件變更,否則請勿引入 bottles、GoReleaser 或
homebrew-core步驟。 - 建議優先執行
prepare_release.py並閱讀其產生的檢查表,然後再建立標籤或 GitHub 釋出。 - 若在當前環境中無法完成網路相關的
gh或brew步驟,請向使用者報告確切的生成後續任務,而非粗略地轉述。
自我評估
變更此技能後,您必須進行驗證:
python3 skills/release-manager/evals/runner.py
請閱讀:
skills/release-manager/evals/reports/latest_results.json
若評估失敗,請修正腳本或指示並重新執行評估,然後再交回工作結果。