Инструменты · Проекты
project_action
Управляет жизненным циклом проектов рабочей области — импорт с диска, закрытие, синхронизация с файлами, полная пересборка (Project → Clean) — и запускает тесты YaxUnit с отчётом в test_read.
Когда использовать
- Файлы проекта правились снаружи EDT —
refreshсинхронизирует рабочую область с диском. - Ошибки в EDT выглядят устаревшими или нужен свежий результат проверки —
cleanпересобирает индексы, затемvalidate. - Проект лежит на диске, но не открыт в EDT —
attachс путём к папке проекта. - Нужно прогнать тесты YaxUnit —
run_testsзапускает клиент 1С и сразу возвращает идентификатор прогона.
Соседние инструменты домена «Проекты»
Операции
| operation | Что делает | Нужно передать |
|---|---|---|
attach | Импортирует проект из папки на диске (в ней должен быть файл .project). | path |
detach | Закрывает проект в рабочей области, не удаляя файлы с диска. | id |
refresh | Синхронизирует рабочую область с диском после внешних правок файлов. | id |
clean | Полная пересборка индексов и проверок проекта, как Project → Clean в EDT. Перед validate с checkers: ["edt-builtin"] даёт свежие результаты. | id |
run_tests | Запускает тесты YaxUnit проекта: клиент 1С стартует штатной конфигурацией запуска EDT. Ответ приходит сразу со статусом 🔵 running, идентификатором прогона и готовым вызовом для опроса. | project — проект с тестами (передаётся, хотя в схеме не описан); по желанию extension, module, tests, tags, infobase, user, password, force_rerun |
Параметры
| Параметр и тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|
operationстрока | да | Операция инструмента — значения и их смысл в таблице «Операции».значения: attach · detach · refresh · clean · run_tests | — |
pathстрока | для attach | Абсолютный путь к папке проекта — для attach. | — |
idстрока | для detach, refresh, clean | Идентификатор проекта из project_read — для detach, refresh, clean. | — |
extensionстрока | нет | Для run_tests: имя расширения с тестами — отбор. | — |
moduleстрока | нет | Для run_tests: имя тестового модуля — отбор. | — |
testsмассив (строка) | нет | Для run_tests: полные имена тестов Модуль.Метод — массив или строка через запятую. | — |
tagsмассив (строка) | нет | Для run_tests: теги тестов для отбора — массив или строка через запятую. | — |
infobaseстрока | нет | Для run_tests: идентификатор приложения или базы. По умолчанию — приложение проекта по умолчанию. | — |
force_rerunбулево | нет | Для run_tests: запустить заново, даже если недавний прогон уже есть. | — |
userстрока | нет | Для run_tests: пользователь базы — чтобы клиент не показывал выбор пользователя. | — |
passwordстрока | нет | Для run_tests: пароль пользователя базы. В журнал вызовов не пишется. | — |
titleстрока | нет | Необязательная подпись вызова до 40 символов: клиент показывает её в шапке карточки вызова. На результат не влияет. | — |
Таблица собрана из схемы инструмента, которую получает агент при подключении.
Адреса
Адрес fqn не используется: проект задаётся идентификатором id (для run_tests — project), новый — путём path.
Пример вызова и ответа
После clean запустите validate — он покажет результаты свежей проверки.
{ "operation": "clean", "id": "УТ2020" }Пример ответа в подготовке Устройство ответа — на странице Формат ответов.
Отказы и ошибки
failed · проект не найден
Идентификатор не совпадает с проектом рабочей области. Возьмите его из project_read.
failed · тесты не запустились
Клиент 1С не стартовал или не найдена конфигурация запуска. В ответе message и подсказка fix_hint; доступные конфигурации запуска и базы показывает project_read.
failed · Unknown operation
Неизвестное значение operation. В ответе — fix_hint: supported: … со списком допустимых операций и секция Did you mean. Допустимо: attach, detach, refresh, clean, run_tests.
failed · лицензия
Без действующего ключа инструмент отвечает карточкой failed с сообщением лицензия: … и подсказкой, где ввести ключ; в секции Context — список инструментов, доступных без ключа. Подробнее — Лицензия и бесплатный доступ.
Ограничения
- Операции без состояния: в каждом вызове передавайте
idилиpath. run_testsзанимает клиентскую лицензию 1С на время прогона; результат — только черезtest_read.cleanна большой конфигурации идёт минуты: EDT пересобирает все индексы.