更新和頻道
aircode update --check # is there something new on my channel?
aircode update # download, verify, install, switch
aircode update --rollback # instant switch back to the previous version
更新實際上會做什麼
- 檢索 簽名的頻道顯示 並驗證其 Ed25519 簽名 — 未簽名或被篡改的宣言被完全拒絕。
- 下載釋放 tarball,檢查其 sha256(和簽名)。
- 將當前版本安裝到
~/.aircode/versions/<new>旁邊的 。 current交換器的原子交換- 重新啓動此包裝安裝所擁有的每個運行管理實例
— 運行代理會話不會觸及。 他們生活在 tmux中,並且每
aircode@<id>.service單元使用KillMode=process: 只有每個服務器流程 重新啓動。 已停止的實例仍然被停止,並使用下一個新的版本 他們開始的時間。
由於版本並排, --rollback 是一個 symlink 交換機,而不是重新安裝。 最新的兩種版本被保留;較舊的版本被清除。
頻道
- 穩定的 — 默認。
- beta — 以前的功能,相同的簽名和更新機制:
aircode update --channel beta,或設置"updateChannel": "beta"在 配置文件。
更新通知
服務器每天檢查其頻道一次,並在用戶界面和生命週期狀態中顯示可用的更新。 它 從不應用更新本身 - 更新您運營的服務器是您的呼叫,總是。 更新後使用 aircode ps -a 來存儲實例。
數據兼容性
數據遷移僅是向前的。 在發佈筆記中標記了重新滾動更改方案的版本 - 在重大更新後,在 --rollback 之前檢查它們。