diff --git a/README.md b/README.md index 81345d32..afa8d63c 100644 --- a/README.md +++ b/README.md @@ -208,7 +208,25 @@ pipeline1C() ] } ``` +## Загрузка эталонной базы +Реализована возможность загрузки эталонной базы на этапе инициализации информационной базы. Для этого необходимо указать в конфигурационном файле параметр `initInfobase` -> `baseDBPath`: + +```json +"initInfobase": { + "baseDBPath": "путь/до/файла/базы.dt" +} +``` +* Поддерживается загрузка файлов формата `.dt` и `.1CD`. +* Путь к файлу базы может быть как локальным, так и удаленным (URL). +* Если эталонная база содержит пользователей, то необходимо указать файл конфигурации, который будет использован для дальнейшей инициализации базы данных. Для этого необходимо указать параметр `initInfobase` -> `vrunnerSettings`: + +```json +"initInfobase": { + "baseDBPath": "путь/до/файла/базы.dt", + "vrunnerSettings": "tools/vrunner.json" +} +``` ## Настройка шага YAXUnit * Добавить расширение `YAXUnit` и дополнительные расширения с тестами можно в `jobConfiguration.json` -> `initInfobase` -> `extensions`. Они будут загружены при инициализации ИБ. diff --git a/src/ru/pulsar/jenkins/library/steps/CreateInfobase.groovy b/src/ru/pulsar/jenkins/library/steps/CreateInfobase.groovy index 57febbb3..e7350c54 100644 --- a/src/ru/pulsar/jenkins/library/steps/CreateInfobase.groovy +++ b/src/ru/pulsar/jenkins/library/steps/CreateInfobase.groovy @@ -59,7 +59,7 @@ class CreateInfobase implements Serializable { def options = config.initInfoBaseOptions String vrunnerSettings = options.vrunnerSettings - if (vrunnerSettings && steps.fileExists(vrunnerSettings)) { + if (vrunnerSettings != '' && steps.fileExists(vrunnerSettings)) { updateDbCommand += " --settings $vrunnerSettings" } VRunner.exec(updateDbCommand) diff --git a/src/ru/pulsar/jenkins/library/steps/InitFromFiles.groovy b/src/ru/pulsar/jenkins/library/steps/InitFromFiles.groovy index 48fa280f..70fb0a98 100644 --- a/src/ru/pulsar/jenkins/library/steps/InitFromFiles.groovy +++ b/src/ru/pulsar/jenkins/library/steps/InitFromFiles.groovy @@ -52,7 +52,7 @@ class InitFromFiles implements Serializable { def options = config.initInfoBaseOptions String vrunnerSettings = options.vrunnerSettings - if (vrunnerSettings && steps.fileExists(vrunnerSettings)) { + if (vrunnerSettings != '' && steps.fileExists(vrunnerSettings)) { command += " --settings $vrunnerSettings" } diff --git a/src/ru/pulsar/jenkins/library/steps/InitFromStorage.groovy b/src/ru/pulsar/jenkins/library/steps/InitFromStorage.groovy index ff34cba2..a9f24de4 100644 --- a/src/ru/pulsar/jenkins/library/steps/InitFromStorage.groovy +++ b/src/ru/pulsar/jenkins/library/steps/InitFromStorage.groovy @@ -65,7 +65,7 @@ class InitFromStorage implements Serializable { def options = config.initInfoBaseOptions String vrunnerSettings = options.vrunnerSettings - if (vrunnerSettings && steps.fileExists(vrunnerSettings)) { + if (vrunnerSettings != '' && steps.fileExists(vrunnerSettings)) { command += " --settings $vrunnerSettings" } diff --git a/src/ru/pulsar/jenkins/library/steps/InitInfoBase.groovy b/src/ru/pulsar/jenkins/library/steps/InitInfoBase.groovy index 981e52e4..c1e36d07 100644 --- a/src/ru/pulsar/jenkins/library/steps/InitInfoBase.groovy +++ b/src/ru/pulsar/jenkins/library/steps/InitInfoBase.groovy @@ -43,6 +43,13 @@ class InitInfoBase implements Serializable { command += executeParameter; command += ' --ibconnection "/F./build/ib"' + def options = config.initInfoBaseOptions + + String vrunnerSettings = options.vrunnerSettings + if (vrunnerSettings != '' && steps.fileExists(vrunnerSettings)) { + command += " --settings $vrunnerSettings" + } + // Запуск миграции steps.catchError { VRunner.exec(command)