Предистория: В компании, где я работаю, мы используем Jenkins lib для автоматизации CI/CD процессов. Как это часто бывает, программисты не всегда понимают, почему падают дымовые тесты. Это связано со спецификой платформы 1С:Предприятие 8, где отладка тестов требует визуального контроля выполнения (кстати, используем набор инструментов vanessa-add).
Когда возникает такая ситуация, я открываю проект в VS Code, переключаюсь на нужную ветвь и вручную повторяю все операции из pipeline. Это позволяет наглядно увидеть, что именно происходит: например, дымовые тесты падают в определенный момент, потому что открывается конкретная обработка и вызывает аварийное завершение клиента тестирования. После этого становится понятно, куда двигаться дальше.
Таких ситуаций множество, и каждый раз приходится выполнять одни и те же рутинные действия. Теоретически можно было бы записать последовательность команд в блокнот и копировать их, меняя только название проекта. Но тот, кто пробовал так делать, знает: это крайне раздражает и полностью убивает рабочий настрой.
Именно поэтому решил создать собственное расширение для VS Code, которое автоматизирует эти действия. В первую очередь это упростило мою жизнь, а во вторую — позволило научить программистов самостоятельно разбираться со своими доработками, быть ближе к пути DevOops, не привлекая коллег к каждой возникшей проблеме на pipeline.
Что уже сделано

Расширение: 1C Platform Tools предоставляет интерфейс для работы через панель команд в боковой панели VS Code. Команды организованы по категориям:
Информационные базы: создание пустой ИБ, инициализация данных, постобработка обновления, выгрузка и загрузка dt-файлов, блокировка внешних ресурсов.
Конфигурация: загрузка из исходного кода или из файла 1Cv8.cf, выгрузка в исходный код или в файл, сборка конфигурации из исходного кода, разбор файла конфигурации в исходный код, выгрузка файла поставки.
Расширения: загрузка расширений из исходного кода или из cfe-файлов, выгрузка в исходный код или в cfe-файлы, сборка расширений из исходного кода, разбор cfe-файлов в исходный код.
Внешние файлы: сборка и разбор внешних обработок и отчетов, очистка кэша.
Зависимости: инициализация "packagedef", установка и удаление зависимостей через OPM.
Запуск: запуск Предприятия и Конфигуратора с нужными конфигурациями запуска.
Тестирование: запуск XUnit тестов, синтаксический контроль, запуск Vanessa тестов, генерация Allure отчетов.
Задачи (workspace): просмотр, запуск и редактирование задач VS Code, управление конфигурациями запуска.
Все команды доступны как через дерево задач в боковой панели, так и через палитру команд (Ctrl+Shift+P). Расширение автоматически определяет проект 1С по наличию файла "packagedef" в корне и активируется только для таких проектов.
Структура каталогов: По умолчанию расширение использует структуру проекта из шаблона vanessa-bootstrap, но все пути можно настроить в параметрах расширения. Можно указать свои пути к исходному коду конфигурации, расширений, внешних обработок и отчетов, а также к результатам сборки:
- Откройте настройки: File → Preferences → Settings (или Ctrl+,)
- В поле поиска вверху введите: @ext:yellow-hammer.1c-platform-tools
- Отобразятся только настройки расширения
Docker: Расширение поддерживает работу с Docker, что позволяет использовать его в окружениях без локальной установки платформы 1С, например, в GitHub Codespaces. При использовании Docker команды автоматически выполняются через контейнер с нормализацией путей.

ibcmd: Для ускорения операций поддерживается использование ibcmd - утилиты командной строки платформы 1С, которая позволяет выполнять операции с конфигурацией без запуска графического интерфейса Конфигуратора. При работе в Docker - ibcmd используется автоматически.
Все команды выполняются в терминале VS Code, что позволяет видеть полный вывод и логи выполнения. Параметры подключения к информационной базе настраиваются в файле "env.json" в корне проекта.
Где найти
Расширение доступно в Marketplace VS Code под названием 1C Platform Tools, а также в Open VSX Registry для использования в Cursor, Kiro и других редакторах на базе VS Code. Исходный код и документация находятся в репозитории на GitHub (Можно перейти по ссылке из описания расширения в marketplace).
Что планирую
Проект находится в активной разработке. Я открыт для предложений и улучшений через issues на GitHub. Среди направлений, которые я рассматриваю:
- Перспектива команд в разрезе файлов проекта
- Перспектива команд в контексте открытого файла
- Запуск автономного сервера 1С (ibsrv)
- Дополнительные команды для работы с проектами
Также планирую развивать поддержку различных сценариев разработки и упрощать настройку для новых пользователей.
Feedback
Буду искренне признателен, если поддержите проект:
- Поставьте звёздочку проекту на GitHub (Можно перейти по ссылке из описания расширения в marketplace), если нашли его полезным!
- Поставьте оценку на Marketplace и Open VSX, поделитесь своим мнением!
- Напишите комментарий к статье!
Это вдохновляет продолжать создавать полезный контент и улучшать проекты. Спасибо вам большое заранее!
Вступайте в нашу телеграмм-группу Инфостарт
