Скрипты
Модуль-фабрика команд для инструментов 1С-разработки на базе vanessa-runner 3.0. Каждая функция возвращает готовую строку команды для Скрипты.Добавить().
Все функции возвращают Строка. Обязательные параметры — в начале, необязательные — со значением по умолчанию. Необязательный параметр со значением Неопределено не попадает в команду.
Общие параметры
Эти параметры встречаются у большинства функций и описаны один раз здесь.
СтрокаПодключения
Строка подключения к информационной базе в формате 1С:
/F<путь>— файловая база, например/Fbuild/ib;/S<сервер>\<база>— серверная база, например/Sserver\base.
ИспользоватьИбкмд
Булево, по умолчанию Истина. Добавляет флаг --ibcmd: операция выполняется утилитой ibcmd вместо полного запуска платформы (быстрее, не требует запуска 1С). У команд запуска 1С (run, test) этого параметра нет — там используется ИспользоватьАвтономныйСервер.
ИспользоватьАвтономныйСервер
Булево, по умолчанию Истина. Добавляет флаг --ibsrv: для команд run/test vrunner поднимает автономный сервер и выполняет операцию в нём.
Опции EDT (--edt-*)
Набор опций для команд, работающих с исходниками 1С:EDT. Передаются параметрами:
КаталогВоркспейсаЕДТ— каталог рабочей области EDT (--edt-workspace); по умолчанию vrunner использует временный каталог, передавать не обязательно.ФорматИсходников—auto(по умолчанию),edtилиxml(--src-format).ПутьКЕДТ— путь к1cedtcli(--edt-path), если утилита не вPATH.ВерсияЕДТ— версия EDT (--edt-version).ТаймаутЕДТВСек— таймаут операций1cedtcliв секундах (--edt-timeout).ПамятьВГБ— память для JVM (--edt-vmargs=-Xmx<ПамятьВГБ>g).
Прочее (не vrunner)
ГенерацияОСкриптЛинукс(Скрипт, ИмяФайла)
Генерирует shell-команду (cat << 'EOF'), которая записывает содержимое Скрипт в файл ИмяФайла. Обычно используется, чтобы на лету создать oscript-скрипт в пайплайне и затем запустить его через ВыполнитьОСкрипт.
| Параметр | Тип | Описание |
|---|---|---|
Скрипт | Строка | Содержимое скрипта — oscript-код (многострочный текст) |
ИмяФайла | Строка | Имя создаваемого файла, например run.os |
Пример:
ТекстСкрипта = "Сообщить(""Сборка конфигурации началась"");";
Задача.Скрипты.Добавить(Скрипты.ГенерацияОСкриптЛинукс(ТекстСкрипта, "run.os"));
Задача.Скрипты.Добавить(Скрипты.ВыполнитьОСкрипт("run.os"));Сгенерирует команду:
cat << 'EOF' > run.os
Сообщить("Сборка конфигурации началась");
EOFВыполнитьОСкрипт(ИмяФайла, Параметры = Неопределено)
Запуск скрипта через oscript.
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
ИмяФайла | Строка | — | Путь к .os-файлу |
Параметры | Массив из Строка | Неопределено | Аргументы командной строки, соединяются пробелом |
Пример:
Параметры = Новый Массив();
Параметры.Добавить("--mode");
Параметры.Добавить("build");
Задача.Скрипты.Добавить(Скрипты.ВыполнитьОСкрипт("build/build.os", Параметры));ЛогЭхоЛинукс(ТекстСообщения = "")
Строка echo с таймстампом — для пометки этапов в логе пайплайна.
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
ТекстСообщения | Строка | "" | Сообщение, например "Сборка конфигурации" |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЛогЭхоЛинукс("Сборка конфигурации"));cf — конфигурация
СобратьКонфигурациюИзФайлов(КаталогИсходников, ПутьКФайлу, ИспользоватьИбкмд = Истина)
Сборка файла .cf из каталога исходников.
vrunner cf compile [--ibcmd] -s <КаталогИсходников> <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | — | Каталог исходников (XML-выгрузка или EDT-проект), например build/cf |
ПутьКФайлу | Строка | — | Путь к собираемому файлу, например build/conf.cf |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.СобратьКонфигурациюИзФайлов("build/cf", "build/conf.cf"));РазобратьКонфигурациюВИсходники(КаталогИсходников, ПутьКФайлу = Неопределено, СтрокаПодключения = Неопределено, ИспользоватьИбкмд = Истина)
Выгрузка конфигурации в исходники: из файла .cf либо из базы.
vrunner cf decompile [--ibcmd] [--cf-file <ПутьКФайлу>] [--ibconnection <СтрокаПодключения>] <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | — | Каталог для выгрузки исходников |
ПутьКФайлу | Строка | Неопределено | Файл .cf; если не задан — выгрузка из базы |
СтрокаПодключения | Строка | Неопределено | База, из которой выгружать (нужна, если не задан ПутьКФайлу) |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
// из файла
Задача.Скрипты.Добавить(Скрипты.РазобратьКонфигурациюВИсходники("build/src", "build/conf.cf"));
// из базы
Задача.Скрипты.Добавить(Скрипты.РазобратьКонфигурациюВИсходники("build/src", , "/Fbuild/ib"));ЗагрузитьКонфигурациюИзФайлов(СтрокаПодключения, КаталогИсходников, ИспользоватьИбкмд = Истина)
Загрузка конфигурации из исходников в базу (без обновления БД — используйте ОбновитьКонфигурациюБД отдельно).
vrunner cf load [--ibcmd] --ibconnection <СтрокаПодключения> <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
КаталогИсходников | Строка | — | Каталог исходников, например build/src |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗагрузитьКонфигурациюИзФайлов("/Fbuild/ib", "build/src"));ВыгрузитьКонфигурациюВФайл(СтрокаПодключения, ПутьКФайлу, ИспользоватьИбкмд = Истина)
Выгрузка конфигурации из базы в файл .cf.
vrunner cf unload [--ibcmd] --ibconnection <СтрокаПодключения> <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ПутьКФайлу | Строка | — | Файл результата, например build/conf.cf |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВыгрузитьКонфигурациюВФайл("/Fbuild/ib", "build/conf.cf"));СоздатьФайлПоставки(СтрокаПодключения, ПутьКФайлу)
Создание файла поставки (.cf с полной поставкой) из базы.
vrunner cf make-dist --ibconnection <СтрокаПодключения> <ПутьКФайлу>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
ПутьКФайлу | Строка | Файл результата, например build/1Cv8-dist.cf |
Пример:
Задача.Скрипты.Добавить(Скрипты.СоздатьФайлПоставки("/Fbuild/ib", "build/1Cv8-dist.cf"));ОбъединитьКонфигурацию(СтрокаПодключения, ФайлКонфигурации, ФайлНастроекОбъединения, ПоставитьНаПоддержку = Ложь, СнятьСПоддержки = Ложь, Принудительно = Ложь)
Объединение конфигурации базы с файлом по настройкам объединения.
vrunner cf merge -s <ФайлКонфигурации> --merge-settings <ФайлНастроекОбъединения> [--enable-support] [--disable-support] [--force] --ibconnection <СтрокаПодключения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ФайлКонфигурации | Строка | — | Файл .cf для объединения |
ФайлНастроекОбъединения | Строка | — | Файл настроек объединения |
ПоставитьНаПоддержку | Булево | Ложь | Флаг --enable-support |
СнятьСПоддержки | Булево | Ложь | Флаг --disable-support |
Принудительно | Булево | Ложь | Флаг --force |
Пример:
Задача.Скрипты.Добавить(Скрипты.ОбъединитьКонфигурацию(
"/Fbuild/ib", "build/vendor.cf", "build/merge.xml", Истина, Ложь, Ложь));ОбновитьКонфигурациюНаПоддержке(СтрокаПодключения, ФайлОбновления, ФайлНастроекОбъединения = Неопределено, Принудительно = Ложь, ОбновитьКонфигурациюБД = Истина)
Обновление конфигурации, стоящей на поддержке, из файла поставщика (.cfu или .cf).
vrunner cf vendor-update -s <ФайлОбновления> [--update-settings <ФайлНастроекОбъединения>] [--force] [--no-update-db] --ibconnection <СтрокаПодключения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ФайлОбновления | Строка | — | Файл .cfu или .cf поставщика |
ФайлНастроекОбъединения | Строка | Неопределено | Файл настроек объединения |
Принудительно | Булево | Ложь | Флаг --force |
ОбновитьКонфигурациюБД | Булево | Истина | Если Ложь — флаг --no-update-db |
Пример:
Задача.Скрипты.Добавить(Скрипты.ОбновитьКонфигурациюНаПоддержке(
"/Fbuild/ib", "build/vendor.cfu", "build/update.xml"));СравнитьКонфигурацию(ВторойФайл, ПервыйФайл = Неопределено, СтрокаПодключения = Неопределено, КаталогОтчета = Неопределено, ТипОтчета = Неопределено, ФорматОтчета = Неопределено)
Сравнение конфигураций: файл с файлом либо файл с базой.
vrunner cf compare --second-cf <ВторойФайл> [--first-cf <ПервыйФайл>] [--ibconnection <СтрокаПодключения>] [--report-dir <КаталогОтчета>] [--report-type <ТипОтчета>] [--report-format <ФорматОтчета>]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
ВторойФайл | Строка | — | Файл .cf, с которым сравниваем |
ПервыйФайл | Строка | Неопределено | Первый файл .cf; если не задан — конфигурация из базы |
СтрокаПодключения | Строка | Неопределено | База (нужна, если ПервыйФайл не задан) |
КаталогОтчета | Строка | Неопределено | Каталог отчёта (по умолчанию текущий) |
ТипОтчета | Строка | Неопределено | Full или Brief |
ФорматОтчета | Строка | Неопределено | txt или mxl |
Пример:
Задача.Скрипты.Добавить(Скрипты.СравнитьКонфигурацию(
"build/new.cf", "build/old.cf", , "build/report", "Brief", "txt"));КонвертацияЕДТВКонфигуратор(КаталогЕДТ, КаталогКонфигуратор, ПамятьВГБ = 8)
Конвертация исходников между форматами: проект 1С:EDT ↔ XML-дамп Конфигуратора.
vrunner cf convert -s <КаталогЕДТ> [--edt-vmargs=-Xmx<ПамятьВГБ>g] <КаталогКонфигуратор>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогЕДТ | Строка | — | Проект 1С:EDT, например build/edt |
КаталогКонфигуратор | Строка | — | Каталог XML-дампа Конфигуратора, например build/cf |
ПамятьВГБ | Число | 8 | Память для JVM 1cedtcli (флаг --edt-vmargs=-Xmx<ПамятьВГБ>g) |
Пример:
Задача.Скрипты.Добавить(Скрипты.КонвертацияЕДТВКонфигуратор("build/edt", "build/cf", 16));cfe — расширения
СобратьРасширениеИзФайлов(КаталогИсходников, ПутьКФайлу, ИмяРасширения = Неопределено, ИспользоватьИбкмд = Истина)
Сборка файла .cfe из каталога исходников расширения.
vrunner cfe compile [--ibcmd] -s <КаталогИсходников> [--extension-name <ИмяРасширения>] <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | — | Каталог исходников, например build/ext/src |
ПутьКФайлу | Строка | — | Файл результата, например build/ext.cfe |
ИмяРасширения | Строка | Неопределено | Имя расширения, например YAXUNIT |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.СобратьРасширениеИзФайлов(
"build/ext/src", "build/ext.cfe", "YAXUNIT"));РазобратьРасширениеВИсходники(ПутьКФайлу, ИмяРасширения, КаталогИсходников, ИспользоватьИбкмд = Истина)
Разбор файла .cfe в исходники.
vrunner cfe decompile [--ibcmd] --cfe-file <ПутьКФайлу> --extension-name <ИмяРасширения> <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
ПутьКФайлу | Строка | — | Файл .cfe |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
КаталогИсходников | Строка | — | Каталог для выгрузки исходников |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.РазобратьРасширениеВИсходники(
"build/ext.cfe", "YAXUNIT", "build/ext/src"));ЗагрузитьРасширениеИзФайлов(СтрокаПодключения, КаталогИсходников, ИмяРасширения, ИспользоватьИбкмд = Истина)
Загрузка расширения из исходников в базу.
vrunner cfe load [--ibcmd] --ibconnection <СтрокаПодключения> --extension-name <ИмяРасширения> <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
КаталогИсходников | Строка | — | Каталог исходников, например build/ext/src |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗагрузитьРасширениеИзФайлов(
"/Fbuild/ib", "build/ext/src", "YAXUNIT"));ВыгрузитьРасширениеВФайл(СтрокаПодключения, ИмяРасширения, ПутьКФайлу, ИспользоватьИбкмд = Истина)
Выгрузка расширения из базы в файл .cfe.
vrunner cfe unload [--ibcmd] --ibconnection <СтрокаПодключения> --extension-name <ИмяРасширения> <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
ПутьКФайлу | Строка | — | Файл результата, например build/ext.cfe |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВыгрузитьРасширениеВФайл("/Fbuild/ib", "YAXUNIT", "build/ext.cfe"));СравнитьРасширение(ИмяРасширения, ВторойФайл, ПервыйФайл = Неопределено, СтрокаПодключения = Неопределено, КаталогОтчета = Неопределено, ТипОтчета = Неопределено, ФорматОтчета = Неопределено)
Сравнение расширений: файл с файлом либо файл с расширением из базы.
vrunner cfe compare --extension-name <ИмяРасширения> --second-cfe <ВторойФайл> [--first-cfe <ПервыйФайл>] [--ibconnection <СтрокаПодключения>] [--report-dir <КаталогОтчета>] [--report-type <ТипОтчета>] [--report-format <ФорматОтчета>]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
ВторойФайл | Строка | — | Файл .cfe, с которым сравниваем |
ПервыйФайл | Строка | Неопределено | Первый файл .cfe; если не задан — расширение из базы |
СтрокаПодключения | Строка | Неопределено | База (нужна, если ПервыйФайл не задан) |
КаталогОтчета | Строка | Неопределено | Каталог отчёта |
ТипОтчета | Строка | Неопределено | Full или Brief |
ФорматОтчета | Строка | Неопределено | txt или mxl |
Пример:
Задача.Скрипты.Добавить(Скрипты.СравнитьРасширение(
"YAXUNIT", "build/new.cfe", "build/old.cfe"));КонвертироватьФорматИсходниковРасширения(КаталогИсходников, КаталогРезультата)
Конвертация исходников расширения между форматами EDT и XML-дампом Конфигуратора.
vrunner cfe convert -s <КаталогИсходников> <КаталогРезультата>
| Параметр | Тип | Описание |
|---|---|---|
КаталогИсходников | Строка | Проект 1С:EDT или XML-дамп Конфигуратора |
КаталогРезультата | Строка | Каталог результата в противоположном формате |
Пример:
Задача.Скрипты.Добавить(Скрипты.КонвертироватьФорматИсходниковРасширения(
"build/ext/edt", "build/ext/xml"));epf — внешние обработки и отчёты
СобратьВнешниеОбработки(КаталогИсходников, КаталогРезультата = Неопределено, Рекурсивно = Ложь, ИспользоватьИбкмд = Истина)
Сборка внешних обработок/отчётов (.epf/.erf) из исходников.
vrunner epf compile [--ibcmd] [--recursive] [--out <КаталогРезультата>] <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | — | Каталог исходников обработки/отчёта |
КаталогРезультата | Строка | Неопределено | Каталог для собранных файлов (--out) |
Рекурсивно | Булево | Ложь | Флаг --recursive |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.СобратьВнешниеОбработки(
"build/epf/src", "build/epf/out", Истина));РазобратьВнешниеОбработки(КаталогИсходников, КаталогРезультата = Неопределено, Рекурсивно = Ложь, ИспользоватьИбкмд = Истина)
Разбор внешних обработок/отчётов в исходники.
vrunner epf decompile [--ibcmd] [--recursive] [--out <КаталогРезультата>] <КаталогИсходников>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | — | Файл .epf/.erf или каталог с ними |
КаталогРезультата | Строка | Неопределено | Каталог для разобранных исходников (--out) |
Рекурсивно | Булево | Ложь | Флаг --recursive |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.РазобратьВнешниеОбработки(
"build/epf/out", "build/epf/src", Истина));КонвертироватьФорматВнешнихОбработок(КаталогИсходников, КаталогРезультата)
Конвертация исходников внешних обработок между форматами EDT и XML-дампом.
vrunner epf convert -s <КаталогИсходников> <КаталогРезультата>
| Параметр | Тип | Описание |
|---|---|---|
КаталогИсходников | Строка | Проект 1С:EDT или XML-дамп Конфигуратора |
КаталогРезультата | Строка | Каталог результата в противоположном формате |
Пример:
Задача.Скрипты.Добавить(Скрипты.КонвертироватьФорматВнешнихОбработок(
"build/epf/edt", "build/epf/xml"));infobase — информационная база
СозданиеБазы(СтрокаПодключения, ИсточникКонфигурации = Неопределено, Расширения = Неопределено, Рекурсивно = Ложь, ИспользоватьИбкмд = Истина, КаталогВоркспейсаЕДТ = Неопределено, ФорматИсходников = Неопределено, ПутьКЕДТ = Неопределено, ВерсияЕДТ = Неопределено, ТаймаутЕДТВСек = Неопределено, ПамятьВГБ = Неопределено)
Создание информационной базы. Без ИсточникКонфигурации создаётся пустая файловая база; при заданных --src/--ext за один вызов создаётся база, загружается конфигурация и расширения, обновляется БД.
vrunner infobase init [--ibcmd] --ibconnection <СтрокаПодключения> [--src <ИсточникКонфигурации>] [--ext <Расширение> ...] [--recursive] [--edt-*]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИсточникКонфигурации | Строка | Неопределено | Каталог исходников, файл .cf (с обновлением БД) или .dt (восстановление целиком) — --src |
Расширения | Массив из Строка | Неопределено | Файлы .cfe или каталоги исходников расширений; имя расширения берётся из имени файла/каталога — повторяемая --ext |
Рекурсивно | Булево | Ложь | Рекурсивный поиск источников — --recursive |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
КаталогВоркспейсаЕДТ | Строка | Неопределено | Каталог рабочей области EDT — --edt-workspace |
ФорматИсходников | Строка | Неопределено | auto, edt или xml — --src-format |
ПутьКЕДТ | Строка | Неопределено | Путь к 1cedtcli — --edt-path |
ВерсияЕДТ | Строка | Неопределено | Версия EDT — --edt-version |
ТаймаутЕДТВСек | Число | Неопределено | Таймаут 1cedtcli — --edt-timeout |
ПамятьВГБ | Число | Неопределено | Память для JVM — --edt-vmargs=-Xmx<ПамятьВГБ>g |
Примеры:
// Пустая файловая база
Задача.Скрипты.Добавить(Скрипты.СозданиеБазы("/Fbuild/ib"));
// База + конфигурация + два расширения, всё из исходников, рекурсивно
Расширения = Новый Массив();
Расширения.Добавить("build/ext/МоёРасширение.cfe");
Расширения.Добавить("src-ext/Интеграция");
Задача.Скрипты.Добавить(Скрипты.СозданиеБазы(
"/Fbuild/ib", "build/src", Расширения, Истина));
// Исходники в EDT с явным воркспейсом
Задача.Скрипты.Добавить(Скрипты.СозданиеБазы(
"/Fbuild/ib", "build/edt-project", , , Истина,
"/tmp/edt-workspace", "edt"));ОбновитьКонфигурациюБД(СтрокаПодключения, ИспользоватьИбкмд = Истина)
Обновление конфигурации БД (динамическое обновление).
vrunner infobase update [--ibcmd] --ibconnection <СтрокаПодключения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ОбновитьКонфигурациюБД("/Fbuild/ib"));ОбновитьКонфигурациюРасширенияБД(СтрокаПодключения, ИмяРасширения, ИспользоватьИбкмд = Истина)
Обновление конфигурации конкретного расширения в БД.
vrunner infobase update [--ibcmd] --ibconnection <СтрокаПодключения> --target <ИмяРасширения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ОбновитьКонфигурациюРасширенияБД("/Fbuild/ib", "YAXUNIT"));ВыгрузитьБазуВДТ(СтрокаПодключения, ПутьКФайлу, ИспользоватьИбкмд = Истина)
Выгрузка базы в файл .dt.
vrunner infobase dump-dt [--ibcmd] --ibconnection <СтрокаПодключения> <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ПутьКФайлу | Строка | — | Файл результата, например build/backup.dt |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВыгрузитьБазуВДТ("/Fbuild/ib", "build/backup.dt"));ЗагрузитьБазуИзДТ(СтрокаПодключения, ПутьКФайлу, ИспользоватьИбкмд = Истина)
Восстановление базы из файла .dt.
vrunner infobase restore-dt [--ibcmd] --ibconnection <СтрокаПодключения> <ПутьКФайлу>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ПутьКФайлу | Строка | — | Файл .dt, например build/backup.dt |
ИспользоватьИбкмд | Булево | Истина | Флаг --ibcmd |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗагрузитьБазуИзДТ("/Fbuild/ib", "build/backup.dt"));СоздатьПользователя(СтрокаПодключения, ИмяПользователя, Роли = Неопределено)
Создание пользователя базы с набором ролей.
vrunner infobase create-user --ibconnection <СтрокаПодключения> [--role <Роль> ...] <ИмяПользователя>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяПользователя | Строка | — | Имя пользователя, например Администратор |
Роли | Массив из Строка | Неопределено | Роли пользователя — повторяемая опция --role |
Пример:
Роли = Новый Массив();
Роли.Добавить("ПолныеПрава");
Задача.Скрипты.Добавить(Скрипты.СоздатьПользователя("/Fbuild/ib", "Администратор", Роли));ЗаблокироватьВнешниеРесурсы(СтрокаПодключения)
Запрет подключения к внешним ресурсам (Интернет-сервисы, почта и т.п.).
vrunner infobase lock-resources --deny --ibconnection <СтрокаПодключения>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗаблокироватьВнешниеРесурсы("/Fbuild/ib"));РазрешитьВнешниеРесурсы(СтрокаПодключения)
Разрешение подключения к внешним ресурсам.
vrunner infobase lock-resources --allow --ibconnection <СтрокаПодключения>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
Пример:
Задача.Скрипты.Добавить(Скрипты.РазрешитьВнешниеРесурсы("/Fbuild/ib"));ВключитьРегламентноеЗадание(СтрокаПодключения, ИмяЗадания)
Включение регламентного задания по имени метаданных.
vrunner infobase scheduled-job enable --ibconnection <СтрокаПодключения> <ИмяЗадания>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
ИмяЗадания | Строка | Имя метаданных регламентного задания |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВключитьРегламентноеЗадание("/Fbuild/ib", "ОбновлениеИндекса"));ВыключитьРегламентноеЗадание(СтрокаПодключения, ИмяЗадания)
Выключение регламентного задания по имени метаданных.
vrunner infobase scheduled-job disable --ibconnection <СтрокаПодключения> <ИмяЗадания>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
ИмяЗадания | Строка | Имя метаданных регламентного задания |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВыключитьРегламентноеЗадание("/Fbuild/ib", "ОбновлениеИндекса"));СписокРасширений(СтрокаПодключения, Подробно = Ложь, ВФорматеJSON = Ложь)
Список расширений базы.
vrunner infobase extensions list [--verbose] [--json] --ibconnection <СтрокаПодключения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
Подробно | Булево | Ложь | Флаг --verbose |
ВФорматеJSON | Булево | Ложь | Флаг --json |
Пример:
Задача.Скрипты.Добавить(Скрипты.СписокРасширений("/Fbuild/ib", Истина, Истина));ПроверитьПрименимостьРасширений(СтрокаПодключения, ИмяРасширения = Неопределено)
Проверка применимости расширений (всех или одного).
vrunner infobase extensions check --ibconnection <СтрокаПодключения> [<ИмяРасширения>]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяРасширения | Строка | Неопределено | Имя расширения; если не задано — проверяются все |
Пример:
Задача.Скрипты.Добавить(Скрипты.ПроверитьПрименимостьРасширений("/Fbuild/ib", "YAXUNIT"));СоздатьРасширение(СтрокаПодключения, ИмяРасширения, Пересоздать = Ложь)
Создание расширения в базе.
vrunner infobase extensions create [--overwrite] --ibconnection <СтрокаПодключения> <ИмяРасширения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
Пересоздать | Булево | Ложь | Флаг --overwrite |
Пример:
Задача.Скрипты.Добавить(Скрипты.СоздатьРасширение("/Fbuild/ib", "YAXUNIT"));УдалитьРасширение(СтрокаПодключения, ИмяРасширения)
Удаление расширения из базы.
vrunner infobase extensions delete --ibconnection <СтрокаПодключения> <ИмяРасширения>
| Параметр | Тип | Описание |
|---|---|---|
СтрокаПодключения | Строка | База, например /Fbuild/ib |
ИмяРасширения | Строка | Имя расширения, например YAXUNIT |
Пример:
Задача.Скрипты.Добавить(Скрипты.УдалитьРасширение("/Fbuild/ib", "YAXUNIT"));НастройкаФлаговРасширения(СтрокаПодключения, ИмяРасширения, БезопасныйРежим = Неопределено, ЗащитаОтОпасныхДействий = Неопределено, Активно = Неопределено)
Настройка флагов расширения: безопасный режим, защита от опасных действий, активность.
vrunner infobase extensions set-options --ibconnection <СтрокаПодключения> [--safe-mode <БезопасныйРежим>] [--unsafe-action-protection <ЗащитаОтОпасныхДействий>] [--active <Активно>] <ИмяРасширения>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ИмяРасширения | Строка | — | Имя расширения, например YAXUNIT |
БезопасныйРежим | Булево | Неопределено | Значение --safe-mode (true/false) |
ЗащитаОтОпасныхДействий | Булево | Неопределено | Значение --unsafe-action-protection (true/false) |
Активно | Булево | Неопределено | Значение --active (true/false) |
Флаги со значением Неопределено не попадают в команду — можно задать только нужные.
Пример:
// Отключить безопасный режим и защиту, оставить активным
Задача.Скрипты.Добавить(Скрипты.НастройкаФлаговРасширения(
"/Fbuild/ib", "YAXUNIT", Ложь, Ложь));run — запуск 1С
ЗапуститьКонфигуратор(СтрокаПодключения, ДополнительныеПараметры = Неопределено, НеЖдатьЗавершения = Ложь)
Запуск Конфигуратора в пакетном режиме.
vrunner run designer --ibconnection <СтрокаПодключения> [--additional <ДополнительныеПараметры>] [--no-wait]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ДополнительныеПараметры | Строка | Неопределено | Доп. параметры запуска Конфигуратора (--additional) |
НеЖдатьЗавершения | Булево | Ложь | Флаг --no-wait |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗапуститьКонфигуратор(
"/Fbuild/ib", "/UpdateDBCfg"));ОбновитьБазуВРежимеПредприятия(СтрокаПодключения, ПутьДоОбработки, ИспользоватьАвтономныйСервер = Истина)
Запуск Предприятия для обновления БД через внешнюю обработку (например, ЗакрытьПредприятие.epf).
vrunner run enterprise [--ibsrv] --ibconnection <СтрокаПодключения> --command "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы;" --execute "<ПутьДоОбработки>"
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ПутьДоОбработки | Строка | — | Путь к .epf, например $runnerRoot/epf/ЗакрытьПредприятие.epf |
ИспользоватьАвтономныйСервер | Булево | Истина | Флаг --ibsrv |
Пример:
Задача.Скрипты.Добавить(Скрипты.ОбновитьБазуВРежимеПредприятия(
"/Fbuild/ib", "$runnerRoot/epf/ЗакрытьПредприятие.epf"));test — тесты
ЗапускТестовИксЮнит(СтрокаПодключения, КаталогТестов, ПутьОтчета = Неопределено, ФайлКодаВозврата = Неопределено)
Запуск тестов xUnitFor1C (xdd).
vrunner test xunit --ibconnection <СтрокаПодключения> [--report-format junit --report-path <ПутьОтчета>] [--xddExitCodePath <ФайлКодаВозврата>] <КаталогТестов>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
КаталогТестов | Строка | — | Каталог или файл с тестами |
ПутьОтчета | Строка | Неопределено | Путь к JUnit-отчёту |
ФайлКодаВозврата | Строка | Неопределено | Файл статуса тестирования (--xddExitCodePath) |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗапускТестовИксЮнит(
"/Fbuild/ib", "tests/xdd", "build/report.xml", "build/status.txt"));ЗапускТестовЯксЮнит(СтрокаПодключения, ФайлНастроекЯксЮнит = Неопределено, ПутьОтчета = Неопределено, ИспользоватьАвтономныйСервер = Истина)
Запуск тестов YAxUnit.
vrunner test yaxunit [--ibsrv] --ibconnection <СтрокаПодключения> [--yaxunit-config <ФайлНастроекЯксЮнит>] [--report-format junit --report-path <ПутьОтчета>]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ФайлНастроекЯксЮнит | Строка | Неопределено | Готовый yaxunit.json (--yaxunit-config) |
ПутьОтчета | Строка | Неопределено | Путь к JUnit-отчёту |
ИспользоватьАвтономныйСервер | Булево | Истина | Флаг --ibsrv |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗапускТестовЯксЮнит(
"/Fbuild/ib", "yaxunit.json", "build/yaxunit-report.xml"));ЗапускТестовВА(СтрокаПодключения, ФайлПараметровВА, ПутьОбработкиВА, КореньПроекта, ИспользоватьАвтономныйСервер = Истина)
Запуск тестов Vanessa-ADD (BDD).
vrunner test vanessa [--ibsrv] --ibconnection <СтрокаПодключения> --vanessasettings <ФайлПараметровВА> --bddrunner-path <ПутьОбработкиВА> --workspace <КореньПроекта>
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | — | База, например /Fbuild/ib |
ФайлПараметровВА | Строка | — | Файл настроек Vanessa-ADD (--vanessasettings) |
ПутьОбработкиВА | Строка | — | Путь к bddRunner.epf (--bddrunner-path) |
КореньПроекта | Строка | — | Каталог проекта (--workspace) |
ИспользоватьАвтономныйСервер | Булево | Истина | Флаг --ibsrv |
Пример:
Задача.Скрипты.Добавить(Скрипты.ЗапускТестовВА(
"/Fbuild/ib", "vanessa.json", "tools/bddRunner.epf", "features"));validate — проверки
ПроверкаСинтаксиса(СтрокаПодключения = Неопределено, Режимы = Неопределено, Цели = Неопределено, ПутьОтчета = Неопределено, ФайлИсключений = Неопределено, ГруппироватьПоМетаданным = Ложь)
Проверка синтаксиса конфигурации (в базе или по каталогу исходников).
vrunner validate syntax-check [--ibconnection <СтрокаПодключения>] [--mode <Режим> ...] [--target <Цель> ...] [--report-format junit --report-path <ПутьОтчета>] [--exception-file <ФайлИсключений>] [--groupbymetadata]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
СтрокаПодключения | Строка | Неопределено | База, например /Fbuild/ib |
Режимы | Массив из Строка | Неопределено | Режимы проверки — повторяемая опция --mode |
Цели | Массив из Строка | Неопределено | Цели проверки — повторяемая опция --target |
ПутьОтчета | Строка | Неопределено | Путь к JUnit-отчёту |
ФайлИсключений | Строка | Неопределено | Файл исключений замечаний (--exception-file) |
ГруппироватьПоМетаданным | Булево | Ложь | Флаг --groupbymetadata |
Пример:
Задача.Скрипты.Добавить(Скрипты.ПроверкаСинтаксиса(
"/Fbuild/ib", , , "build/syntax-report.xml"));ВалидацияЕДТ(КаталогИсходников = Неопределено, ПутьОтчета = Неопределено, МинимальнаяВажность = Неопределено)
Валидация исходников через EDT (по проекту, XML-выгрузке или файлу .cf/.cfe).
vrunner validate edt [--src <КаталогИсходников>] [--report-format junit --report-path <ПутьОтчета>] [--min-severity <МинимальнаяВажность>]
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
КаталогИсходников | Строка | Неопределено | Проект 1С:EDT, XML-выгрузка или файл .cf/.cfe (--src) |
ПутьОтчета | Строка | Неопределено | Путь к JUnit-отчёту |
МинимальнаяВажность | Строка | Неопределено | critical, major, minor или none (--min-severity) |
Пример:
Задача.Скрипты.Добавить(Скрипты.ВалидацияЕДТ(
"build/edt", "build/edt-report.xml", "major"));Пример
Задача.Скрипты.Добавить(Скрипты.СозданиеБазы("/Fbuild/ib"));
Задача.Скрипты.Добавить(Скрипты.ЗагрузитьКонфигурациюИзФайлов("/Fbuild/ib", "build/src"));
Задача.Скрипты.Добавить(Скрипты.ОбновитьКонфигурациюБД("/Fbuild/ib"));
Задача.Скрипты.Добавить(Скрипты.ЗапускТестовЯксЮнит("/Fbuild/ib", "yaxunit.json"));