mirror of
https://github.com/firstBitMarksistskaya/jenkins-lib.git
synced 2024-11-24 08:52:14 +02:00
Fix #11. Поиск файлов vrunner.init.json для запуска первичной инициализации
This commit is contained in:
parent
5c45859240
commit
0a91cc35c2
@ -107,9 +107,10 @@ pipeline1C()
|
||||
* `STORAGE_PATH` - путь к хранилищу конфигурации;
|
||||
* `STORAGE_USER` - параметры авторизации в хранилище вида "username with password".
|
||||
* Все "шаги" по умолчанию выключены.
|
||||
* Результаты в формате `allure` ожидаются в каталоге `build/out/allure` или его подкаталогах.
|
||||
* Инициализация:
|
||||
* Если включен шаг `initSteps`, то будет выполняться запуск ИБ с целью запуска обработчиков обновления из БСП. (`initInfobase` -> `runMigration`)
|
||||
* TODO: Если в настройках шага инициализации не заполнен массив дополнительных шагов миграции (`initInfobase` -> `additionalInitializationSteps`), но в каталоге `tools` присутствуют файлы с именами, удовлетворяющими шаблону `vrunner.init*.json`, то автоматически выполняется запуск `vrunner vanessa` с передачей найденных файлов в качестве значения настроек (параметр `--settings`) в порядке лексиграфической сортировки имен файлов.
|
||||
* Если в настройках шага инициализации не заполнен массив дополнительных шагов миграции (`initInfobase` -> `additionalInitializationSteps`), но в каталоге `tools` присутствуют файлы с именами, удовлетворяющими шаблону `vrunner.init*.json`, то автоматически выполняется запуск `vrunner vanessa` с передачей найденных файлов в качестве значения настроек (параметр `--settings`) в порядке лексиграфической сортировки имен файлов.
|
||||
* BDD:
|
||||
* Если в конфигурационном файле проекта не заполнена настройка `bdd` -> `vrunnerSteps`, то автоматически выполняется запуск `vrunner vanessa --settings tools/vrunner.json`.
|
||||
* Синтаксический контроль:
|
||||
|
@ -78,6 +78,7 @@ sharedLibrary {
|
||||
// TODO: retrieve downloaded plugin resource
|
||||
pluginDependencies {
|
||||
dependency("org.jenkins-ci.plugins", "pipeline-build-step", "2.12")
|
||||
dependency("org.jenkins-ci.plugins", "pipeline-utility-steps", "2.8.0")
|
||||
dependency("org.jenkins-ci.plugins", "git", "4.4.4")
|
||||
dependency("org.6wind.jenkins", "lockable-resources", "2.7")
|
||||
dependency("ru.yandex.qatools.allure", "allure-jenkins-plugin", "2.28.1")
|
||||
|
@ -1,5 +1,6 @@
|
||||
package ru.pulsar.jenkins.library
|
||||
|
||||
import org.jenkinsci.plugins.pipeline.utility.steps.fs.FileWrapper
|
||||
import org.jenkinsci.plugins.workflow.support.actions.EnvironmentAction
|
||||
|
||||
interface IStepExecutor {
|
||||
@ -12,6 +13,10 @@ interface IStepExecutor {
|
||||
|
||||
String libraryResource(String path)
|
||||
|
||||
FileWrapper[] findFiles(String glob)
|
||||
|
||||
FileWrapper[] findFiles(String glob, String excludes)
|
||||
|
||||
String readFile(String file, String encoding)
|
||||
|
||||
void echo(message)
|
||||
|
@ -1,6 +1,6 @@
|
||||
package ru.pulsar.jenkins.library
|
||||
|
||||
|
||||
import org.jenkinsci.plugins.pipeline.utility.steps.fs.FileWrapper
|
||||
import org.jenkinsci.plugins.workflow.support.actions.EnvironmentAction
|
||||
import ru.yandex.qatools.allure.jenkins.config.ResultsConfig
|
||||
|
||||
@ -37,6 +37,11 @@ class StepExecutor implements IStepExecutor {
|
||||
steps.readFile encoding: encoding, file: file
|
||||
}
|
||||
|
||||
@Override
|
||||
FileWrapper[] findFiles(String glob, String excludes = '') {
|
||||
steps.findFiles glob: glob, excludes: excludes
|
||||
}
|
||||
|
||||
@Override
|
||||
void echo(Object message) {
|
||||
steps.echo message
|
||||
|
@ -1,5 +1,6 @@
|
||||
package ru.pulsar.jenkins.library.steps
|
||||
|
||||
import org.jenkinsci.plugins.pipeline.utility.steps.fs.FileWrapper
|
||||
import ru.pulsar.jenkins.library.IStepExecutor
|
||||
import ru.pulsar.jenkins.library.configuration.JobConfiguration
|
||||
import ru.pulsar.jenkins.library.ioc.ContextRegistry
|
||||
@ -46,9 +47,18 @@ class InitInfobase implements Serializable {
|
||||
}
|
||||
|
||||
steps.catchError {
|
||||
config.initInfobaseOptions.additionalInitializationSteps.each {
|
||||
Logger.println("Первичная инициализация командой ${it}")
|
||||
steps.cmd("oscript_modules/bin/vrunner ${it} --ibconnection \"/F./build/ib\"")
|
||||
if (config.initInfobaseOptions.additionalInitializationSteps.length == 0) {
|
||||
FileWrapper[] files = steps.findFiles("tools/vrunner.init*.json")
|
||||
files = files.sort new OrderBy( { it.name })
|
||||
files.each {
|
||||
Logger.println("Первичная инициализация файлом ${it.path}")
|
||||
steps.cmd("oscript_modules/bin/vrunner vanessa --settings ${it.path} --ibconnection \"/F./build/ib\"")
|
||||
}
|
||||
} else {
|
||||
config.initInfobaseOptions.additionalInitializationSteps.each {
|
||||
Logger.println("Первичная инициализация командой ${it}")
|
||||
steps.cmd("oscript_modules/bin/vrunner ${it} --ibconnection \"/F./build/ib\"")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user