gtcnsl
EN RU

Изменения

Значимые изменения gtcnsl, новые сверху. Формат — Keep a Changelog; версии — по Semantic Versioning.

Keep a Changelog · SemVer
v0.6.3 2026-05-30
Fixed
  • Релизный пайплайн теперь берёт каждый бинарник из реального пути сборки и отказывается публиковать отсутствующий или пустой файл — первопричина пустых загрузок в v0.6.0–v0.6.2.
Подробнее →
v0.6.2 2026-05-30
Fixed
  • gtcnsl --version теперь работает и печатает ту же строку, что и gtcnsl version.
  • self-update больше не откатывается всегда — его проверка версии после замены падала из-за отсутствующего флага --version.
  • Релизные бинарники сообщают версию с ведущей v — починены проверки self-update «уже последняя» и сверка тега.
Подробнее →
v0.6.1 2026-05-30
Fixed
  • Шаг зеркалирования больше не зависит от возможности shell, отсутствующей в релизном образе, — бинарники реально доезжают до dl.gtcnsl.com (v0.6.0 опубликовался в Gitea, но не был зазеркалирован).
Подробнее →
v0.6.0 2026-05-30
Added
  • gtcnsl self-update заменяет работающий бинарник на последний (или конкретный --to vX.Y.Z) релиз с dl.gtcnsl.com: загрузка → проверка SHA-256 → атомарная замена → проверка запуска → откат при любой ошибке. Флаги: --dry-run, --rollback, --yes, --dl-host.
  • Обнаружение и загрузка читают манифест versions.json с download-хоста и не вызывают Git API, поэтому self-update переживает уход хоста в приватность.
  • Экран Self-update в TUI (Check / Apply / Rollback) с тем же потоком, что и в CLI.
  • Релизный воркфлоу зеркалирует каждый опубликованный бинарник + checksums.txt на download-хост (источник истины — релиз в Gitea).
Changed
  • Релизные бинарники теперь называются gtcnsl-vX.Y.Z-linux-<arch> (с ведущей v) — по контракту download-хоста.
Подробнее →
v0.5.0 2026-05-24
Added
  • Интерактивный TUI: запустите gtcnsl без аргументов, чтобы управлять Gitea, Runner, Config, Secrets и Doctor из меню — все операции v0.1–v0.4, с цветными логами, прокруткой и спиннером.
  • gtcnsl config get / set / toggle — чтение или изменение одного ключа app.ini с тем же бэкап → атомарная запись → рестарт → откат по health-check, что и в декларативном потоке. Секретные и составные ключи отклоняются с подсказкой.
  • gtcnsl doctor — предполётные проверки хоста (systemd, исходящий HTTPS, диск, root) плюс проверки установленных Gitea и раннера; --fix --yes автоматически чинит частые проблемы (нет ca-certificates, нет секретов).
  • Каталог схемы конфига наполняет экраны конфигурации значениями по умолчанию, типами и описаниями ключей; gtcnsl config sync-schema подтягивает схему более новой Gitea.
Fixed
  • Запись конфига и секретов теперь сохраняет владельца файла после атомарного переименования — Gitea по-прежнему читает свой конфиг после apply (раньше файл мог остаться во владении root).
  • doctor --fix теперь корректно перепроверяет исходящий HTTPS в том же запуске после установки ca-certificates.
Подробнее →
v0.4.1 2026-05-23
Added
  • Каждый релиз зеркалируется в S3-совместимое хранилище рядом с релизом Gitea, с префиксом /latest/ и манифестом versions.json для будущего self-update.
  • Pre-release-теги (-rc / -beta / -alpha) получают версионную загрузку, но не попадают в /latest/ и versions.json — кандидат не становится дефолтной целью установки.
Подробнее →
v0.4.0 2026-05-23
Added
  • gtcnsl config apply --template — рендер и применение декларативного app.ini с подстановкой ${VAR}, diff, бэкапом, рестартом и автооткатом при провале health-check.
  • Управляемые секреты: gtcnsl secrets generate / check / rotate для четырёх ключевых секретов Gitea в /etc/gitea/secrets.ini; rotate переприменяет конфиг и откатывает оба файла при ошибке.
  • Встроенный каталог схемы конфига Gitea (значения по умолчанию, типы, описания), с gtcnsl config sync-schema для подтяжки более новой версии.
  • gtcnsl runner install --executor=podman (Tier 3, экспериментально).
Подробнее →
v0.3.1 2026-05-23
Added
  • Health-пробы исходящего трафика контейнеров и свободного места при настройке раннера, с готовыми командами-фиксами при провале (некритичные предупреждения).
  • gtcnsl runner reconfigure --admin-token подчищает осиротевшую регистрацию раннера на стороне Gitea после повторной регистрации.
  • docs/VPS-CHECKLIST.md — операторский чек-лист настройки gtcnsl-раннера на VPS.
Подробнее →
v0.3.0 2026-05-23
Added
  • gtcnsl gitea install / upgrade — установка последней Gitea (проверка GPG + SHA-256) с укреплённым systemd-юнитом и health-check после старта; атомарные апгрейды версий с откатом при ошибке.
  • gtcnsl runner install / register / reconfigure / upgrade для act_runner, с исполнителями host, docker и docker-rootless.
  • Поддержка пакетных менеджеров по дистрибутивам (apt / dnf) с детектом уже установленного Docker.
  • Один статический бинарник для amd64, arm64 и armv7, распространяемый через собственные релизы проекта в Gitea.
Подробнее →