ЯзыкРусский

Обновления и каналы

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

Что действительно делает обновление

  1. Захватывает подписанный канал манифест и проверяет его подпись Ed25519 — Неподписанный или искаженный манифест отвергается полностью.
  2. Загружает тарбол для выпуска, проверяет его sha256 (и подпись).
  3. Устанавливает ~/.aircode/versions/<new> рядом с текущую версию.
  4. Атомно переключается current symlink.
  5. Перезагрузка каждого управляемого случая, принадлежащего этой упакованной установке — сеансы выполняемых агентов не затрагиваются. Они живут в tmux, и каждый aircode@<id>.service использует KillMode=process: только каждый серверный процесс перезагрузка. Остановленные инстанции остаются остановленными и используют новую версию следующим время, когда они начинают.

Поскольку версии сидят бок о бок, --rollback является переключателем симлинка, а не переустановкой. Две последние версии сохраняются; старые версии очищаются.

Каналы

  • стабильный — по умолчанию.
  • бета — предыдущие функции, та же подпись и механизм обновления: aircode update --channel betaили установить "updateChannel": "beta" в файл конфигурации.

Уведомления об обновлении

Сервер проверяет свой канал один раз в день и выводит доступные обновления в интерфейсе пользователя и в состоянии жизненного цикла. никогда не применяет обновления самостоятельно — обновление сервера, которым вы управляете, всегда является вашим призывом. Используйте aircode ps -a для инвентаризации инстанций после обновления.

Совместимость данных

Миграция данных осуществляется только вперед. Обратный переход на выпуск с изменением схемы обозначен в заметках о выпуске — проверьте их перед --rollback после крупного обновления.