К содержимому
gtcnsl
EN RU

TUI vs CLI

Голый `gtcnsl` открывает интерактивный TUI на терминале; те же действия — скриптуемые подкоманды. UI — чтобы исследовать, CLI — чтобы автоматизировать.

Актуально для v1.3.0

Два фронтенда, один движок

Запустите gtcnsl без аргументов — и на интерактивном терминале откроется полный TUI. На не-терминале (pipe, шаг CI, nohup) он печатает help и выходит, а не блокируется — поэтому голую команду безопасно оставлять в скрипте.

Экраны TUI соответствуют подкомандам один-к-одному:

Экран TUI Эквивалент в CLI
Services gtcnsl gitea install, gtcnsl runner install / register
Config gtcnsl config get / apply / set / toggle
Secrets gtcnsl secrets generate / check / rotate
Doctor gtcnsl doctor
Self-update gtcnsl self-update

TUI стоит брать, когда

  • вы впервые настраиваете машину и хотите видеть все движущиеся части;
  • хотите прочитать состояние хоста (Doctor), не вспоминая флаги;
  • делаете разовое изменение и предпочитаете подтвердить его визуально.

CLI стоит брать, когда

  • вы автоматизируете: CI, провижининг или Makefile;
  • ваша конфигурация в Git — gtcnsl config apply --template app.ini.tmpl это декларативный путь;
  • нужны идемпотентные, повторяемые прогоны.
# без оператора: подтверждаем заранее, превью через --dry-run
gtcnsl config apply --template app.ini.tmpl --var DOMAIN=git.example.com --dry-run
gtcnsl config apply --template app.ini.tmpl --var DOMAIN=git.example.com --yes
i
Разрушающим операциям нужен --yes
Всё, что пишет или рестартит, требует --yes; --dry-run показывает превью, ничего не трогая. Именно это делает CLI безопасным для прогона без оператора.

Дальше

Скриптуете свежую машину? «Быстрый старт» показывает установку в три команды.