Справочник
Команды CLI
Короткие команды для проверки сервера и подключений. Здесь — точное поведение клиента, параметры и ограничения запуска переноса.
Как проходит запрос
Консоль обращается к серверу Holkas
Команда
Адрес сервера и токен
Holkas Web
Проверка прав и выполнение запроса
Результат
Ответ команды или журнал операции
С чего начать
Установка клиента и получение токена описаны в Установка → CLI. Примеры ниже предполагают, что адрес сервера и токен уже настроены. В PowerShell из каталога клиента используйте .\holkas.exe вместо holkas.
Начните с проверки сервера и доступных подключений:
holkas status
holkas connections list
holkas connections test "Имя подключения"
Проверка сервера
holkas status
holkas status --json
Выводит адрес сервера и его режим работы. Версию сервера текущий клиент не печатает. Проверка не требует токена и не проверяет доступ к базам данных.
Подключения
holkas connections list показывает доступные владельцу токена подключения: имя, транспорт и дату обновления. С --json выводится JSON-ответ.
holkas connections test "Имя подключения" проверяет конкретное подключение. В обычном выводе результат начинается с OK: или FAILED:. Имя должно точно совпадать с именем на сервере; имена с пробелами заключайте в кавычки.
Общие параметры
| Параметр | Что означает |
|---|---|
--server <адрес> | Адрес Holkas Web. Имеет приоритет над HOLKAS_SERVER; без обоих используется http://localhost:5000. |
--api-key <токен> | Токен доступа. Имеет приоритет над HOLKAS_API_KEY. |
--json | JSON-вывод для проверочных команд. У migrate остаются и обычные текстовые строки. |
--help или -h | Общая справка: holkas --help. |
Параметры сервера и токена передавайте после имени команды. Для постоянной настройки удобнее переменные окружения из инструкции по установке.
Перенос: ограничения текущего клиента
В клиенте есть команда:
holkas migrate --from "Источник" --to "Приёмник" --dry-run
Она запрашивает создание операции и печатает её идентификатор. С --dry-run запрос применения не отправляется. Завершения построения плана клиент не ждёт и сам план не выводит.
У текущей реализации есть существенные ограничения:
- Нет выбора объектов. Клиент отправляет пустой состав. Для источника-БД или Git сервер требует выбрать объекты, поэтому обычный перенос «база → база» этой командой сейчас не выполнить.
- Нет загрузки входного ZIP-файла. Клиент не передаёт входной файл операции.
- Нет ожидания готовности плана. Без
--dry-runзапрос применения отправляется сразу после создания операции. - Нет обработки подтверждения. Клиент не передаёт токен подтверждения, если он потребуется серверу.
- «Apply started» не подтверждает успех. Клиент печатает строку после отправки запроса, не проверяя HTTP-статус ответа применения.
Для переноса с выбором объектов, просмотром плана и проверкой результата используйте веб-интерфейс. Не стройте автоматизацию важного переноса на одном сообщении CLI.
Отдельной справки holkas migrate --help нет. Флаг --verbose-log упоминается во встроенной справке, но текущий клиент не обрабатывает его и не передаёт серверу.
Коды завершения
| Код | Когда используется |
|---|---|
0 | Команда дошла до своего штатного завершения. Для migrate это не гарантия успешного переноса. |
1 | Проверка подключения вернула отрицательный результат. |
2 | Обработанная ошибка HTTP-запроса или подключение с таким именем не найдено. |
3 | Неизвестная команда либо отсутствует обязательный аргумент. |
Некорректный или неожиданный ответ сервера может привести к необработанной ошибке. Для диагностики сохраняйте и стандартный вывод, и поток ошибок.