軟體工程
安全升級一項相依套件
已更新的相依套件:發行影響已審查、鎖定檔可重現,相容與安全檢查通過。
流程
照這個順序做。
- 盤點直接依賴、目前與目標版本、套件清單、鎖定檔、執行期限制與傳遞影響。
- 閱讀目標發行說明、遷移指南與安全公告;列出影響此程式庫的破壞性變更。
- 建立聚焦更新分支,用專案套件管理員變更清單與鎖定檔,而不是手改產生檔。
- 執行安裝完整性、靜態檢查、單元測試、整合測試,以及任何演練依賴邊界的建置或煙霧測試。
- 檢查依賴差異中的意外套件、腳本、授權變更與版本跳躍;可行時分開主要升級。
- 記錄遷移變更與回復說明、請求審查,並只在必要檢查通過後合併。
先準備
貓會向你要的輸入。
- 儲存庫
- 依賴名稱與目標政策或版本
- 建置與測試指令
- 支援的執行期矩陣
路由器 + 一份 playbook
先路由。只選一份。
Cat Paw 每次任務只載入一份 playbook,不合併多份。先走這個路由器;其餘路徑是此 workflow 可檢查的候選。
- 路由器:
engineering-pack skills/engineering/addyosmani/incremental-implementation/SKILL.mdskills/engineering/mattpocock/tdd/SKILL.mdskills/engineering/mattpocock/code-review/SKILL.md
界線
界線跟著提示一起走。
- 正式憑證在場時,絕不執行不受信任的安裝腳本。
- 除非明確要求,不要捆綁無關依賴升級。
- 保全並審查鎖定檔變更;不要繞過失敗的相容性測試。
完成代表
一個可核對的終點。
預定版本出現在已解析依賴圖中,只剩已說明的依賴變更,必要檢查通過,回復說明可用。
來源
這個流程從哪來。
- docs.github.com/en/code-security/concepts/supply-chain-security/dependabot-version-updates
- docs.github.com/en/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/configure-version-updates
來源確立 workflow 的模式。若有 Reddit 或社群貼文,視為實務軼事,不是普遍事實。