CI/CD для 1С — это автоматический конвейер выпуска изменений: каждая доработка собирается в общую версию конфигурации, проходит проверку кода и автотесты, а затем по единой процедуре попадает на тестовую и рабочую базы. Он убирает три главных источника боли в 1С-разработке — ручное слияние изменений, регрессионное тестирование «на глаз» и ночные обновления с откатами. Релиз становится предсказуемым: понятно, что в него вошло, что проверено и когда он будет готов.
Ниже — для руководителя разработки и ИТ-директора: какие проблемы закрывает CI/CD, из чего состоит конвейер в мире 1С, с чего начинать и как понять, что вашей команде он уже нужен.
Откуда берётся хаос в 1С-разработке
Пока в 1С работают десяток пользователей и один программист, всё держится на аккуратности. С ростом компании растёт поток изменений: доработки, отчёты, интеграции с сайтом, банком, маркетплейсами. Разработчиков становится несколько — и появляются знакомые симптомы:
- разработчики блокируют друг другу объекты в хранилище;
- доработки конфликтуют, слияние разбирают вручную часами;
- изменения переносятся в рабочую базу руками, часто ночью;
- тестирование — «по возможности», одну и ту же функциональность проверяют снова и снова;
- кто и зачем изменил модуль, знает только тот, кто изменил.
Хаос появляется не из-за слабой команды, а из-за роста. Процесс доставки изменений никто не проектировал — он сложился сам.
Чем нестабильные релизы опасны для бизнеса
После неудачного обновления система формально работает, но формы открываются с ошибками, документы проводятся медленно, обмен с банком прерывается. Для ИТ это инцидент, для бизнеса — цепочка последствий:
| Что происходит в 1С | Что происходит в бизнесе |
|---|---|
| Не проводятся заказы | Отгрузки задерживаются, выручка смещается |
| Не загружаются выписки | Платежи «висят», растёт риск кассового разрыва |
| Медленно работают формы | Сотрудники тратят часы вместо минут |
| Поддержка тонет в обращениях | Развитие системы останавливается |
Но главная потеря — предсказуемость. Если каждое обновление — риск, бизнес начинает откладывать новые направления «до после отчётного периода». ИТ из инструмента роста превращается в источник рисков.

Из чего состоит конвейер CI/CD в 1С

| Этап | Что делает | Инструменты в мире 1С |
|---|---|---|
| Хранение версий | Единый источник правды, история изменений, ветки | Git; хранилище 1С с автоматической выгрузкой в Git; 1С:EDT |
| Сборка | Собирает конфигурацию и расширения из исходников в тестовую базу | Скрипты на OneScript, vanessa-runner, пакетный режим конфигуратора |
| Проверка кода | Синтаксис, стандарты, типичные ошибки | Синтаксический контроль, АПК, SonarQube с плагином для BSL |
| Дымовые тесты | Открываются ли формы, запускается ли система | Vanessa Automation, xUnit-подобные фреймворки |
| Сценарные тесты | Ключевые процессы: заказ, оплата, закрытие периода | Vanessa Automation (сценарии на Gherkin) |
| Отчётность | Что прошло, что упало, где ошибка | Allure, отчёты системы CI |
| Доставка | Обновление тестовых и рабочих баз по регламенту | GitLab CI, Jenkins, скрипты обновления |
Сборкой и запуском всего этого управляет система CI — чаще всего GitLab CI или Jenkins. Она стартует конвейер по событию: новый коммит, расписание, кнопка релиза.
Важно: инструменты для 1С давно зрелые. Миф «DevOps — это для Java, а не для 1С» устарел.
Какие проблемы снимает CI/CD
| Было | Стало | Эффект |
|---|---|---|
| Ручное слияние конфигураций | Git, автоматическая сборка | Конфликты видны сразу, а не в день релиза |
| Ручная регрессия после каждого исправления | Автотесты после каждого изменения или ночью | Тестировщики заняты сложными сценариями, а не повторами |
| Ночные ручные обновления | Обновление по скрипту и регламенту | Меньше ошибок переноса, понятный откат |
| «Кто это поменял?» | История в Git, связь с задачами | Знания не уходят вместе с сотрудником |
| Растущий техдолг | Автоматическая проверка стандартов | Код остаётся поддерживаемым через годы |
Если разработчики тиражного решения или интегратор выпускают обновления для многих клиентов, эффект ещё сильнее: цикл выпуска сокращается, а качество перестаёт зависеть от того, кто собирал релиз.
Как внедрять: по шагам, без остановки разработки
Внедрение не обязательно делать сразу целиком. Порядок, который я рекомендую:
- Аудит процесса. Как сейчас хранится код, сколько баз, как делается релиз, где болит сильнее всего.
- Git как источник правды. Если команда в конфигураторе — настраиваем автоматическую выгрузку хранилища в Git. Работа разработчиков почти не меняется.
- Ночная сборка и синтаксический контроль. Каждую ночь конфигурация собирается в тестовую базу и проверяется. Утром команда знает, сломалось ли что-то вчера.
- Дымовые тесты. Открытие основных форм, запуск ключевых обработок.
- Анализ кода. SonarQube или АПК с правилами, согласованными с командой. Сначала — только на новый код, чтобы не утонуть в старых замечаниях.
- Сценарные тесты ключевых процессов. Пишутся постепенно, начиная с самых денежных: заказ, отгрузка, оплата, закрытие месяца.
- Автоматическая доставка. Сначала на тестовые базы, затем, когда всё стабильно, — на рабочую по регламенту.
Каждый шаг даёт пользу сам по себе. Ночная сборка с проверками — это уже меньше сюрпризов в день релиза.
Подробнее про сами автотесты — в статье о регрессионном тестировании и автотестах 1С.
Барьеры и как с ними работать
«Это слишком сложно». Начинайте с малого: ночная сборка настраивается быстро, а тесты добавляются по одному. Полный конвейер за месяц не нужен.
«Это дорого». Сравнивайте не с нулём, а со стоимостью сбоев: часы простоя склада, переработки, перегруженная поддержка. Один предотвращённый серьёзный инцидент часто покрывает настройку базового конвейера.
«Команда не примет». Разработчики сопротивляются, если конвейер только ругается. Поэтому правила анализа кода согласуются с командой, а первые тесты пишутся на то, что всех и так раздражает проверять руками.
«Нет своих DevOps-специалистов». Не обязательно сразу нанимать. Часто конвейер настраивает внешний специалист, а команда параллельно осваивает практики и забирает поддержку себе.
Когда CI/CD уже нужен: чек-лист
Если отмечено три пункта и больше, пора:
- в разработке больше двух программистов;
- 1С поддерживает ключевые процессы, и простой стоит денег;
- обновления делаются ночью или в выходные «чтобы никто не заметил»;
- после релиза регулярно бывают срочные исправления;
- регрессионное тестирование занимает дни;
- никто не может быстро сказать, что вошло в текущий релиз;
- есть интеграции, которые ломаются после обновлений.
Что меняется в работе команды
Конвейер меняет не только инструменты, но и привычки. Готовьтесь к этому заранее:
- Небольшие изменения вместо больших пачек. Чем меньше изменение, тем быстрее оно проходит проверки и тем проще найти причину, если что-то упало.
- Красная сборка — повод остановиться. Если ночная сборка не прошла, сначала чинят её, а потом пишут новый код. Иначе конвейер быстро превращается в шум.
- Тест вместе с исправлением. Нашли ошибку в рабочей базе — добавьте сценарий, который её ловит. Так набор тестов растёт там, где действительно болит.
- Релиз по календарю. Когда проверки автоматические, релизы можно выпускать по расписанию, а срочные исправления — по короткому, но тому же пути.
- Метрики. Время от задачи до рабочей базы, число откатов, число срочных исправлений после релиза. Без них трудно показать бизнесу эффект.
CI/CD — это не про инструменты, а про управляемость: изменения проходят один и тот же проверенный путь, и бизнес может планировать, не опасаясь каждого обновления.
Настраиваю конвейеры под команды 1С в рамках услуги DevOps для 1С, пишу сценарные тесты — в рамках тестирования 1С. Начать можно с аудита текущего процесса разработки.
Коротко
- CI/CD для 1С автоматизирует сборку, проверку кода, тестирование и доставку изменений.
- Он убирает ручное слияние, регрессию «на глаз» и ночные релизы, а главное — возвращает предсказуемость.
- Работать можно и в конфигураторе: хранилище выгружается в Git, конвейер запускает GitLab CI или Jenkins.
- Внедряйте по шагам: Git, ночная сборка, дымовые тесты, анализ кода, сценарные тесты, доставка.
- Окупаемость считают через стоимость сбоев, а не через стоимость инструментов.




