Skip to content

RasGate 0.2.1

Latest

Choose a tag to compare

@zmaxb zmaxb released this 17 Aug 17:02
· 1 commit to main since this release

Главное

RasGate 0.2.1 усиливает надёжность выполнения RAC-команд и добавляет средства
установки приложения в качестве службы Windows или systemd.

Релиз включает изменения промежуточной версии 0.2.0.

Надёжность выполнения RAC

  • добавлена явная семантика результатов succeeded, failed и unknown;
  • усилена обработка таймаутов, отмены и завершения дерева процессов;
  • добавлены ограничения на количество и размер аргументов;
  • ограничен размер stdout и stderr;
  • выполнение ограничено числом параллельных процессов;
  • результат с неопределённым внешним состоянием явно помечается как небезопасный
    для автоматического повтора;
  • проверка rac --version использует кэширование и single-flight.

API и диагностика

  • унифицированы успешные и ошибочные JSON-ответы;
  • добавлен X-Trace-Id;
  • добавлено безопасное структурированное журналирование HTTP, RAC и событий жизненного цикла;
  • сырые аргументы RAC, API-ключи и содержимое вывода не записываются в журнал;
  • расширена проверка конфигурации при запуске.

Установка в качестве службы

  • добавлена команда --validate-config, не открывающая HTTP-порт и не
    запускающая RAC;
  • добавлены скрипты установки и удаления Windows Service;
  • добавлены unit-файл и скрипты установки systemd;
  • Linux-служба работает от отдельного непривилегированного пользователя
    rasgate;
  • конфигурация теперь загружается относительно каталога приложения, независимо
    от текущего рабочего каталога процесса.

Важно для клиентов API

Поле success описывает обработку HTTP-запроса. Результат RAC-команды необходимо
определять по outcome, exitCode и timedOut.

Результат unknown нельзя автоматически повторять: команда могла изменить
состояние кластера до таймаута, отмены или ошибки очистки ресурсов.

Артефакты

  • rasgate-0.2.1-linux-x64.tar.gz — self-contained сборка для Linux x64;
  • rasgate-0.2.1-win-x64.zip — self-contained сборка для Windows x64;
  • SHA256SUMS — контрольные суммы архивов.

Установка отдельного .NET Runtime не требуется.