Документация Подключение к серверу

Подключение к серверу Mockarty

На этой странице объясняется, как Mockarty CLI определяет, к какому серверу подключаться, и как переопределить выбор для локальной разработки, self-hosted-развёртывания или работы в air-gapped-среде.

Кратко. По умолчанию mockarty-cli подключается к локальному инстансу Mockarty (http://localhost:5770). Чтобы использовать другой сервер: передайте --server <url> в команду, экспортируйте MOCKARTY_SERVER=<url> или сохраните URL через mockarty-cli config set-context <name> --server <url>.


Как разрешается URL сервера

Перед каждой командой CLI проходит цепочку из четырёх источников. Побеждает первое непустое значение.

# Источник Перебивает… Типичное применение
1 флаг --server <url> всё ниже Разовый запуск, CI/CD job
2 переменная окружения MOCKARTY_SERVER файл + default Скрипты для конкретной оболочки, Docker-контейнеры
3 поле server_url в ~/.mockarty/config.json только default Постоянная личная настройка
4 URL, зашитый в бинарник (http://localhost:5770) — Свежая установка без настройки

Старая переменная MOCKARTY_SERVER_URL по-прежнему работает как алиас MOCKARTY_SERVER — старые CI-скрипты не сломаются. Если установлены обе, побеждает MOCKARTY_SERVER.


Типовые сценарии

1. Установка по умолчанию — локальный инстанс

Сразу после установки CLI первая же команда работает с локальным инстансом Mockarty:

mockarty-cli auth login
# Сервер: http://localhost:5770
# Запрашиваем у сервера Mockarty доступные методы аутентификации…

CLI печатает разрешённый URL до запуска OAuth-флоу — чтобы вы могли убедиться, что ключ улетает туда, куда нужно. Если URL выглядит неправильно, прервите Ctrl-C и перезапустите с явным --server <url-вашего-сервера> (или укажите свой self-hosted инстанс — см. ниже).

2. Локальная разработка с запущенным инстансом Mockarty

Большинство разработчиков держит локальный admin-node на http://localhost:5770. Чистый способ — переменная окружения на сессию:

export MOCKARTY_SERVER=http://localhost:5770
mockarty-cli auth login
# Сервер: http://localhost:5770

Или поштучно, без правки окружения:

mockarty-cli --server http://localhost:5770 auth login

3. Self-hosted корпоративный Mockarty

Долгоживущий персональный default сохраняется в ~/.mockarty/config.json и переживает перезапуски shell’ов, контейнеров и системы:

mockarty-cli config set-context corp --server https://mockarty.internal.corp
mockarty-cli auth login

После этого любая последующая команда mockarty-cli mock list / mockarty-cli run / mockarty-cli ... автоматически идёт на корпоративный сервер — без флага и без env-переменной.

4. Air-gapped и переключение между серверами

Если вы часто переключаетесь между двумя-тремя серверами, удобнее держать env-var в ~/.bashrc / ~/.zshrc, чтобы каждая новая оболочка стартовала с известным таргетом:

# ~/.bashrc
export MOCKARTY_SERVER=https://mockarty.internal.corp

# Разовый override для одного CI-шага:
MOCKARTY_SERVER=http://localhost:5770 mockarty-cli mock list

Проверка активного сервера

mockarty-cli config view показывает итоговую конфигурацию, которой реально пользуется CLI:

mockarty-cli config view

Поле server_url отражает всю цепочку приоритетов — флаг поверх env, env поверх файла, файл поверх зашитого default. Если что-то выглядит неожиданно, этот вывод — источник правды.


Зачем дефолт указывает на локальный инстанс

Свежая установка без флага, без env, без файла всё равно имеет осмысленный и известный таргет: локальный инстанс Mockarty на http://localhost:5770. Новый пользователь может поднять локальный сервер и сразу запустить mockarty-cli auth login, не зная заранее ни одного URL. Существующие пользователи с корпоративной конфигурацией не ощущают изменений — их override (URL self-hosted-сервера) стоит выше дефолта в цепочке.

Зашитый default можно переопределить на этапе сборки, поэтому кастомная сборка может поставляться с другим известным таргетом; цепочка приоритетов выше работает поверх любого такого default.


См. также